6.8 KiB
作成
LocalTicketBackend によって作成されました。
State changed
Panel returned ready Ticket 00001KVMT2J25 to planning for requirements sync. This is not Queue routing and must not start implementation.
User refinement instruction
今あるフロントSPAをnodeからdenoにしたい。 https://hareworks.net/blog/tech/sveltekit-with-deno
Comment
Intake requirements sync result
対象 Ticket 00001KVMT2J25 の item/thread/artifacts と関連 Ticket/source を確認した結果、今回の refinement instruction はこの Ticket の既存スコープとは一致しないため、00001KVMT2J25 を ready に戻したり queue routing したりせず、requirements sync の結果としてここに記録する。
User claims / request snapshot
- ユーザーは「今あるフロントSPAを node から deno にしたい」と述べた。
- 参考 URL として
https://hareworks.net/blog/tech/sveltekit-with-denoが提示された。
Confirmed facts / sources
00001KVMT2J25の item は「Attach mid-stream TUI client without losing in-flight content」で、protocol / pod / TUI reconnect / stream-state の実装 Ticket である。00001KVMT2J25の thread には、Panel が ready から planning に戻した理由として上記 frontend/Deno refinement instruction が記録されている。- 関連する closed Ticket
00001KVMFFYVXは Workspace web control plane bootstrap で、SvelteKit static SPA skeleton をweb/workspaceに追加した作業である。 web/workspace/README.mdは現在の package manager を npm とし、npm install,npm run check,npm run buildを案内している。web/workspace/package.jsonは SvelteKit static SPA の scripts / devDependencies を持ち、package-lock.jsonが存在する。web/workspace/svelte.config.jsは@sveltejs/adapter-staticを使い、build/に static output を出す設定である。package.nixはweb/workspace/node_modules,.svelte-kit,buildを source filter から除外している。devshell.nixにはdenoが含まれている。
Intake conclusion
- この refinement は
00001KVMT2J25の late-attach / stream-state work item とは別目的であり、同一 Ticket の requirements / acceptance criteria に混ぜると work item が破綻する。 - 既存の frontend bootstrap Ticket
00001KVMFFYVXは closed であり、現在の npm 採用は当時の bootstrap decision / implementation detail として記録されている。Deno 移行は closed Ticket の再オープンではなく、別の concrete follow-up Ticket として扱うのが妥当。 - 現時点では、ユーザーが「新規 Ticket を作成して」と明示していないため、duplicate/new Ticket は作成しない。
Candidate follow-up draft if user approves new Ticket
Title: Workspace web SPA の frontend tooling を npm/Node から Deno に移行する
Readiness: implementation_ready Risk flags: [frontend-tooling, packaging, nix-source-filter, validation]
Requirements:
web/workspaceの開発・検証・build 手順を npm/Node 前提から Deno 前提へ移行する。- SvelteKit static SPA であること、Rust backend が business/API authority を持つこと、static output が
web/workspace/build/に出ることは維持する。 web/workspace/README.mdの package manager / command guidance を Deno 前提に更新する。- lockfile と依存関係管理を Deno 前提で明確にし、古い npm lockfile/source-of-truth が残る場合は理由を明示する。
- generated artifacts (
node_modules,.svelte-kit,buildなど) が git/Nix package source に混入しない状態を維持する。
Acceptance criteria:
web/workspaceの check/build が Deno command で成功する。- README と project files から、通常の frontend 作業者が Deno で install/check/build できることが分かる。
- npm lockfile / npm scripts / Node-only guidance が不要なら削除され、必要なら Deno 移行後も残す理由が code/docs に明確である。
package.nix/ devshell / repository hygiene が Deno 移行後の generated artifacts と矛盾しない。- 既存の Rust backend static serving assumptions と
.yoirecords as authority の境界を変えない。
Implementation latitude:
- Deno project layout は
deno.json/deno.lock/deno taskを使う形でよい。 - SvelteKit/Vite を Deno の npm compatibility で動かすか、最小限の package metadata を残すかは実装時に選んでよい。ただし source-of-truth と command guidance は曖昧にしない。
Validation:
cd web/workspace && deno task checkcd web/workspace && deno task buildgit diff --check- packaging/source-filter を変更する場合は
nix build .#yoi --no-linkまたは Orchestrator が妥当と判断する同等確認
Next routing recommendation:
00001KVMT2J25はこの refinement では implementation_ready に戻さない。- ユーザーが Deno 移行の新規 Ticket 作成を承認した場合、上記 draft を別 Ticket として materialize する。
- ユーザーがあくまで
00001KVMT2J25の差し替えを望む場合は、既存 Ticket を repurpose するのではなく、Orchestrator/maintainer に cancel/close/replacement 方針の判断を戻す。
Intake summary
ユーザーから、Deno 移行 refinement は 00001KVMT2J25 に誤って付いたものであり、00001KVMT2J25 は ready に戻してよいとの明示指示があった。再確認したところ、00001KVMT2J25 の body は late attach / in-flight stream snapshot の concrete work item で、readiness は implementation_ready、blocking open question はない。Deno 移行は別 Ticket 00001KVMV03QY として作成済みであり、本 Ticket の要件には混ぜない。
State changed
Deno 移行 refinement は誤付与として分離済み。00001KVMT2J25 は元の protocol reconnect / unfinished block snapshot Ticket として Orchestrator routing 可能な ready 状態へ戻す。queue routing や implementation start は行わない。
State changed
Ticket を workspace-panel が queued にしました。