Repository navigation
Closed
Labels
app/idPackage/app: id (pkgs/ or apps/ in this repo)Package/app: id (pkgs/ or apps/ in this repo)effort/mMedium: expected under 1 day of workMedium: expected under 1 day of workenhancementNew feature or requestNew feature or requestkind/featureNew feature or capability requestNew feature or capability requestmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedIntake review done: acceptance criteria, links, and normalized labels addednextOrg Project gate: queued next — orchestrator adds to the boardOrg Project gate: queued next — orchestrator adds to the boardpriority/normalOrdinary priority (the default)Ordinary priority (the default)source/humanFiled directly by a humanFiled directly by a humantask/small-fixQueue packet kind: bounded fix with reproduction and targeted testsQueue packet kind: bounded fix with reproduction and targeted tests
Description
What and why
id world fork creates a world from another's module and snapshot with provenance; templates are forks marked reusable; the F11.11 seed policy decides seed inheritance. Starting a world from an existing one is the cheapest way to reuse a configured program, and templates fall out of it.
Source
Current status
Not started. No Fork variant in WorldCommand (cli.rs:1388); grep -rn 'fork' pkgs/id/src/world*.rs has no fork operation.
Acceptance criteria
- A plan fixes fork semantics, the provenance record, template marking and seed inheritance under the F11.11 policy
-
id world forkcreates a world from another world's module and snapshot, with provenance - Templates are forks marked reusable
- Tests cover provenance and that the seed is inherited only as the policy allows
Size
M
Prerequisites
- id: Phase 12 designs to run through the research workflow #534 (tracking issue) — D1-019 F12.1 Declarative world manifest (world.toml) with apply / --dry-run / diff
- id(world): F11.11 enforce the client projection with a structural test #543 — D1-011 F11.11 One client projection (seed secret, chat by scope) + enforcement test
Metadata
Metadata
Assignees
Labels
app/idPackage/app: id (pkgs/ or apps/ in this repo)Package/app: id (pkgs/ or apps/ in this repo)effort/mMedium: expected under 1 day of workMedium: expected under 1 day of workenhancementNew feature or requestNew feature or requestkind/featureNew feature or capability requestNew feature or capability requestmeta/enrichedIntake review done: acceptance criteria, links, and normalized labels addedIntake review done: acceptance criteria, links, and normalized labels addednextOrg Project gate: queued next — orchestrator adds to the boardOrg Project gate: queued next — orchestrator adds to the boardpriority/normalOrdinary priority (the default)Ordinary priority (the default)source/humanFiled directly by a humanFiled directly by a humantask/small-fixQueue packet kind: bounded fix with reproduction and targeted testsQueue packet kind: bounded fix with reproduction and targeted tests
Activity
feat(id): F12.2 world fork — store-level copy with provenance
dezren39 commentedon Oct 25, 2026
Progress (Session C, PR #801): implemented the store-level fork —
world_store::fork_worldcopies a source world's journal and modules into a new world, rewrites theCreatedheader, and appends aJournalEntry::Forkedprovenance record;ModuleProvenance::Fork(ForkProvenance) records the fork origin. Tests cover the copied state, provenance, the template flag, and refusal on a mismatched world. Remaining: theid world forkCLI + admin frame wiring (copy-on-serve), and the F11.11 seed-inheritance policy hook.docs(id): Phase 14 plan — close-out: finish, measure, verify, open th…
dezren39 commentedon Oct 26, 2026
Intake review
Fleet-monitor intake pass (2026-10-26). Body already carries a full
## Acceptance criteriasection, so this pass is label normalization plus a liveness check — no body edit.Verified live on main
e3467560(2026-10-26):WorldCommandinpkgs/id/src/cli.rshas noForkvariant, and there is no fork operation in the world modules. Still live, exactly as filed.Related: prerequisites #534 (tracking issue for the F12.1 manifest work this builds on) and #543 (F11.11 seed policy — decides seed inheritance for forks) are both still open and unenriched. The seed-inheritance acceptance bullet cannot be settled before #543's policy exists.
Risks / notes: provenance is the part that must be right from day one — a fork without a trustworthy provenance record creates exactly the ambiguity this feature exists to remove. Template marking is minor by comparison and can follow the core fork.
Suggested approach: land the plan bullet first (fork semantics, provenance record shape, template marking, seed inheritance under #543's policy), then implement
id world forkwith provenance tests before template marking.dezren39 commentedon Nov 1, 2026
🤖 Agent note · picked up
7 remaining items
dezren39 commentedon Nov 1, 2026
🤖 Agent note · picked up
id world forkCLI + template surface (F12.2 remainder) — WorldCommand::Fork variant, template identifiability, CLI tests; store behaviour unchanged.fix(id): provenance reads the latest Forked entry; drop unterminated …
Merge pull request #3291 from developing-today/queue/4824-556-world-f…
dezren39 commentedon Nov 1, 2026
🤖 Agent note · done
id world forkCLI + template surface (F12.2 remainder) — done. PR feat(id): wireid world forkCLI + provenance inspect (F12.2 remainder) (#556) #3291 merged @b56ccda5c (fix commit c8c1737 verified on origin/main).WorldCommand::Fork(source dir, destination dir with absent-or-empty guard,--namedefaulting to the destination dir name and validated byvalidate_world_name,--template,--json; source id read from its journalCreatedheader) wiringworld_store::fork_worldunchanged, plusWorldCommand::Provenance, a local inspect surface printing a world directory'sCreatedid + latestForkedentry (origin, module hash, template flag, sequence) — no local inspect surface existed and hostworld listreturns name/open only, so this is the smallest honest wiring for template identifiability.cargo test --test world_fork_cli6/6 (fork restores under the new id with the parent's program; forked dir contains onlyjournal.jsonl+modules/even with a sourceseed.secret— the F11.11 pin; template flag recorded + identifiable; chained-fork provenance; torn-tail discard; refusal cases),--test world_fork4/4,--lib cli::112/112; rustfmt clean. Codex review: 2 P2 findings on the first commit (oldest-vs-latest Forked entry; unterminated-entry acceptance) — both fixed with regression tests, threads replied + resolved, re-review on c8c1737 clean (no findings).