Repository navigation
Closed
Labels
app/idPackage/app: id (pkgs/ or apps/ in this repo)Package/app: id (pkgs/ or apps/ in this repo)effort/lLarge: multi-day or open-ended; expect staged check-insLarge: multi-day or open-ended; expect staged check-insepicMeta-issue grouping multiple items (org Project Type=Epic)Meta-issue grouping multiple items (org Project Type=Epic)kind/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 addedmode/onlineFully doable remotely: design, config, code, cloudFully doable remotely: design, config, code, cloudnowOrg Project gate: active priority — orchestrator adds to the boardOrg Project gate: active priority — orchestrator adds to the boardpriority/highImportant and time-sensitiveImportant and time-sensitivesource/humanFiled directly by a humanFiled directly by a humantask/triageQueue packet kind: verify, reproduce, and route this itemQueue packet kind: verify, reproduce, and route this item
Description
What and why
These Phase 12 tasks (.opencode/plans/phase-12-platform-flexibility.md) need a design, or for D1-026 a research package, before anyone implements them. Run each through the research workflow, commit the design, then open an implementation issue and tick the box. F12.1 (manifest) and F12.4 (provider registry) are the plan's two highest-return tasks; F12.7 (ABI spec) is part of its recommended first slice.
Items
Each box is done when the design (or research package) is committed and an implementation issue is linked here.
- D1-019 — F12.1 Declarative world manifest (world.toml) with apply / --dry-run / diff (L, design)
A world.toml naming module (hash or source), seed, grants, ceilings, resource profile, roles/invites and schedules.id world applyreconciles a live world idempotently through existing admin operations, andid world diffdetects drift. The plan calls it one of the two highest-return tasks.- Status: not started. No
world.tomlparser and no Apply/Diff command:grep -rn 'world.toml' pkgs/id/srcfinds nothing;WorldCommand(cli.rs:1388) lacks Apply/Diff. - Source: .opencode/plans/phase-12-platform-flexibility.md:31; .opencode/plans/phase-12-platform-flexibility.md:21; .opencode/plans/phase-12-platform-flexibility.md:80
- Prerequisites: 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, Define rollback compatibility for world profile journal entries #227 — D1-012 F11.12 Journal format version header, check and backup commands
- Status: not started. No
- D1-022 — F12.4 Capability provider registry (manifested components) (L, design)
Providers become components with a manifest (name, version, argument schema, bounds, required scope, default ceiling), read by the ledger, compile gate and CLI, so adding a capability needs no edit to world.rs. One of the two highest-return tasks.- Status: not started. pkgs/id/src/world_caps.rs:55
pub const CATALOG: &[&str]is a hard-coded list, and execution is a stringmatchin pkgs/id/src/world.rs:2526-2547. No registry type (grep -rn 'ProviderRegistry\|provider_registry' pkgs/id/srcfinds nothing). - Source: .opencode/plans/phase-12-platform-flexibility.md:37; .opencode/plans/phase-12-platform-flexibility.md:16; .opencode/plans/phase-12-platform-flexibility.md:80
- Prerequisites: id(world): F11.10 split world.rs, world_session.rs and cli.rs (moves only) #540 — D1-010 F11.10 Split world.rs, world_session.rs, cli.rs (moves only), id(world): F11.13 error taxonomy: stable codes plus reasons on the wire #554 — D1-013 F11.13 Error taxonomy: stable codes plus reasons on the wire
- Status: not started. pkgs/id/src/world_caps.rs:55
- D1-025 — F12.7 Versioned guest ABI spec, plaza_abi_version export, conformance suite (L, design)
Write theplaza_*exports and capability protocol down as a versioned spec, add aplaza_abi_versionexport, and publish a conformance suite built on F11.16 fixtures and the feat(id): record world sessions to replayable fixtures #239 recordings. Part of the recommended first slice.- Status: not started. The ABI is described only in module docs (pkgs/id/src/sandbox.rs:6-8 lists plaza_out_len, plaza_alloc, memory).
grep -rn plaza_abi_version pkgs/idfinds nothing, and there is no spec document or conformance test directory. - Source: .opencode/plans/phase-12-platform-flexibility.md:43; .opencode/plans/phase-12-platform-flexibility.md:84
- Prerequisites: id(world): F11.16 replay self-check (
id world verify) #544 — D1-016 F11.16 Replay self-check (id world verify)
- Status: not started. The ABI is described only in module docs (pkgs/id/src/sandbox.rs:6-8 lists plaza_out_len, plaza_alloc, memory).
- D1-021 — F12.3 Roles v2: journaled builder and moderator scopes with audit (M, design)
Journaled grants for builder (install modules) and moderator (revoke participants) as scope bits, with an audit record for each use; builder never gets network/file/process authority.- Status: not started. WorldScopes checks only CHAT/HISTORY/JOIN-style bits (pkgs/id/src/world.rs:201-204);
grep -rn 'BUILDER\|MODERATOR' pkgs/id/srcfinds nothing. - Source: .opencode/plans/phase-12-platform-flexibility.md:33; doc/2026-10-17T08-00-00Z_feature_world_roles_directory/
- Prerequisites: D1-019 F12.1 Declarative world manifest (world.toml) with apply / --dry-run / diff (in this list)
- Status: not started. WorldScopes checks only CHAT/HISTORY/JOIN-style bits (pkgs/id/src/world.rs:201-204);
- D1-024 — F12.6 Structured audit log with OpenTelemetry export (L, design)
A structured audit log of admin actions and provider use, exported via OpenTelemetry, building on F11.7; a test replays the log to the final grants.- Status: not started.
grep -rn 'opentelemetry\|OpenTelemetry\|audit' pkgs/id/src/world*.rsfinds nothing. Prerequisite F11.7 has not started (D1-007). - Source: .opencode/plans/phase-12-platform-flexibility.md:39
- Prerequisites: id(world): F11.7 host metrics, Prometheus endpoint and tracing spans #553 — D1-007 F11.7 Host metrics, Prometheus endpoint and tracing spans
- Status: not started.
- D1-023 — F12.5 First new providers: kv, blob, http.fetch, notify (XL, design)
A bounded durable per-world KV store, content-addressed blobs over iroh-blobs, allowlisted http.fetch (off by default, no off-list redirects), and rate-limited notify. Each needs a ceiling, an audit entry, and bound, refusal and replay tests.- Status: not started. None of kv/blob/http.fetch/notify appears in CATALOG (pkgs/id/src/world_caps.rs:55-73) or in the dispatch match (world.rs:2526-2547).
- Source: .opencode/plans/phase-12-platform-flexibility.md:38; .opencode/plans/phase-12-platform-flexibility.md:85
- Prerequisites: D1-022 F12.4 Capability provider registry (manifested components) (in this list), D1-024 F12.6 Structured audit log with OpenTelemetry export (in this list)
- D1-026 — F12.8 Rust and TypeScript/Zig guest SDKs; WIT/component-model decision (XL, research package)
SDKs for Rust (wasm32-unknown-unknown) and AssemblyScript or Zig with screen/json/grid/cap helpers equal to the Roc libraries, each with an example world and a passing conformance run. Record a decision on the Wasm component model / WIT.- Status: not started. No sdk directory (
ls pkgs/id/sdk pkgs/id/sdks: no such directory); all eight examples are Roc (pkgs/id/examples/{lounge,roc-chat,roc-counter,roc-grid,roc-screen,roc-world,territory,tic-tac-toe}). - Source: .opencode/plans/phase-12-platform-flexibility.md:44; .opencode/plans/phase-12-platform-flexibility.md:17
- Prerequisites: D1-025 F12.7 Versioned guest ABI spec, plaza_abi_version export, conformance suite (in this list)
- Status: not started. No sdk directory (
- D1-027 — F12.9 Program upgrade with state migration and rollback (L, design)
Versioned snapshots and an optionalmigrateexport; an upgrade runs on a probe instance, commits only if migrated state round-trips, otherwise rolls back.- Status: not started. Install swaps the program and resets state handling (pkgs/id/src/world.rs:3168-3180);
grep -rn '"migrate"\|fn migrate' pkgs/id/src/world*.rs pkgs/id/src/sandbox.rsfinds nothing. - Source: .opencode/plans/phase-12-platform-flexibility.md:45
- Prerequisites: D1-025 F12.7 Versioned guest ABI spec, plaza_abi_version export, conformance suite (in this list)
- Status: not started. Install swaps the program and resets state handling (pkgs/id/src/world.rs:3168-3180);
- D1-028 — F12.10 Fair cross-world scheduling, per-account quotas, slow-client back-pressure (L, design)
A hub scheduler that shares fuel/CPU fairly across worlds, with per-account quotas (worlds, storage, fuel/s) and back-pressure; exit: a spinning world cannot raise another's p99 by more than 10%.- Status: not started. pkgs/id/src/world_hub.rs bounds only sessions and open worlds (:12);
grep -n 'quota\|fair\|fuel_per_sec' pkgs/id/src/world_hub.rs pkgs/id/src/sandbox.rsfinds nothing. F11.7/F11.8 prerequisites are not started. - Source: .opencode/plans/phase-12-platform-flexibility.md:49
- Prerequisites: id(world): F11.7 host metrics, Prometheus endpoint and tracing spans #553 — D1-007 F11.7 Host metrics, Prometheus endpoint and tracing spans, id(ci): F11.8 benchmark harness with committed baselines #539 — D1-008 F11.8 Benchmark harness with committed baselines
- Status: not started. pkgs/id/src/world_hub.rs bounds only sessions and open worlds (:12);
- D1-032 — F12.14 Portals: cross-world messaging granted by both admins (L, design)
A capability both worlds' admins grant, with bounded rate and size and an audit entry on each side.- Status: not started. Only host-level cross-world write toggles exist (
CrossWorldWrite/ForceCrossWorldWritein the WorldCommand enum, cli.rs:1388); there is no guest-visible portal capability in CATALOG (world_caps.rs:55-73). - Source: .opencode/plans/phase-12-platform-flexibility.md:56; doc/2026-10-10T04-59-57Z_feature_cross_world_access/
- Prerequisites: D1-022 F12.4 Capability provider registry (manifested components) (in this list), D1-024 F12.6 Structured audit log with OpenTelemetry export (in this list)
- Status: not started. Only host-level cross-world write toggles exist (
- D1-035 — F12.17 Module signature trust list and compiler-version provenance (M, design)
Verify module signatures against an admin trust list, add the compiler version to observed provenance, journal the trust decision; an unsigned module is refused when the list is non-empty.- Status: not started. Observed provenance exists (
ModuleProvenancefields at pkgs/id/src/world.rs:299, :527, :586), but world.rs:310 states it is "not a signature or a trust attestation"; there is no trust list. The plan cites PR feat(id): record world module build provenance #225, which is CLOSED; provenance reached main another way. - Source: .opencode/plans/phase-12-platform-flexibility.md:65; doc/2026-10-16T09-00-00Z_feature_world_module_provenance/; doc/2026-10-16T09-30-00Z_feature_world_module_provenance/
- Prerequisites: id(roc): F11.18 pin the Roc compiler for checked-in example modules and rebuild them in CI #541 — D1-018 F11.18 Pinned Roc compiler for checked-in example modules + CI rebuild job
- Status: not started. Observed provenance exists (
Source
.opencode/plans/phase-12-platform-flexibility.md:16.opencode/plans/phase-12-platform-flexibility.md:17.opencode/plans/phase-12-platform-flexibility.md:21.opencode/plans/phase-12-platform-flexibility.md:31.opencode/plans/phase-12-platform-flexibility.md:33.opencode/plans/phase-12-platform-flexibility.md:37.opencode/plans/phase-12-platform-flexibility.md:38.opencode/plans/phase-12-platform-flexibility.md:39.opencode/plans/phase-12-platform-flexibility.md:43.opencode/plans/phase-12-platform-flexibility.md:44.opencode/plans/phase-12-platform-flexibility.md:45.opencode/plans/phase-12-platform-flexibility.md:49.opencode/plans/phase-12-platform-flexibility.md:56.opencode/plans/phase-12-platform-flexibility.md:65.opencode/plans/phase-12-platform-flexibility.md:80.opencode/plans/phase-12-platform-flexibility.md:84.opencode/plans/phase-12-platform-flexibility.md:85doc/2026-10-10T04-59-57Z_feature_cross_world_access/doc/2026-10-16T09-00-00Z_feature_world_module_provenance/doc/2026-10-16T09-30-00Z_feature_world_module_provenance/doc/2026-10-17T08-00-00Z_feature_world_roles_directory/
Size
XL overall (items M to XL)
Prerequisites
Listed per item above.
Acceptance criteria
- Every item listed above has its design (or research package, where marked) committed to the repo
- Every item has a linked implementation issue, and its checkbox above is ticked only once both are true
- No item is closed out on the basis of a plan or report reference alone — the committed artifact is the evidence
Metadata
Metadata
Assignees
Labels
app/idPackage/app: id (pkgs/ or apps/ in this repo)Package/app: id (pkgs/ or apps/ in this repo)effort/lLarge: multi-day or open-ended; expect staged check-insLarge: multi-day or open-ended; expect staged check-insepicMeta-issue grouping multiple items (org Project Type=Epic)Meta-issue grouping multiple items (org Project Type=Epic)kind/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 addedmode/onlineFully doable remotely: design, config, code, cloudFully doable remotely: design, config, code, cloudnowOrg Project gate: active priority — orchestrator adds to the boardOrg Project gate: active priority — orchestrator adds to the boardpriority/highImportant and time-sensitiveImportant and time-sensitivesource/humanFiled directly by a humanFiled directly by a humantask/triageQueue packet kind: verify, reproduce, and route this itemQueue packet kind: verify, reproduce, and route this item
Activity
feat(id): world doctor + world.toml manifest model
dezren39 commentedon Oct 24, 2026
Progress from Phase 12 (Session C, PR #801): F12.16 (
id world doctor) is implemented with tests; F12.1's declarative world.toml model (parse/plan/apply/diff) is in, with CLIapply/diffwiring in progress.feat(id): wire id world diff and id world apply (F12.1)
test(id): F12.18 consolidated denial-of-service suite
feat(id): F12.3 builder and moderator roles with audit
dezren39 commentedon Oct 24, 2026
Progress (Session C, PR #801): F12.16 (doctor) done; F12.1 declarative world.toml + diff/apply landed (module/schedule apply → #807); F12.18 consolidated DoS suite landed; F12.3 builder/moderator scope bits + audit journal landed (remaining: wire builder/moderator capability acceptance into the install/revoke frames). Filed #805 (F12.11), #806 (F12.13), #807 (F12.1 apply wiring).
feat(id): F12.2 world fork — store-level copy with provenance
docs(id): Phase 14 plan — close-out: finish, measure, verify, open th…
33 remaining items
dezren39 commentedon Nov 3, 2026
Triage task 7485: verdict work exists but its landing step is orphaned — labels desynced, follow-up enqueued as queue task 7533.
Verified 2026-11-03T12:08Z
queue/6507-534-phase12-package(PR docs: capture Phase 12 (#534) research package intake #4672), not onmain.doc/2026-11-03T00-05-09Z_research_phase-12-package-534/, +1583/−0), Codex review reported no findings, CodeRabbit hit its rate limit, and the only check isbasic: OpenCode metered-provider guard(CANCELLED). The PR merge tier's required contextbasic: proxy port fallbacksnever reported, so a plain merge-queue enqueue may stall.queue/claimed+work/assigned. That is the desync this packet targeted.Label repair: removed
queue/claimedandwork/assigned(no worker owns the issue itself).status/in-progressstays because the package does exist and stages S1+ remain.Fix path: enqueued task 7533 (
repo-health:v1:pr:developing-today/code:pr:4672) — land PR #4672 or route the exact merge blocker (absent required check / admin-bypass decision), with no competing package PR. Once #4672 is onmain, the research workflow can start S1 for the 12 concepts.dezren39 commentedon Nov 3, 2026
agent-note:v1 — task 7533 picked up by lane code-k (repo-worker-code). Execution lane assigned: opencode — handed off to the opencode claimant, which will launch a bound session to land PR #4672 (Phase 12 research package intake) or route its merge blocker.
Merge pull request #4672 from developing-today/queue/6507-534-phase12…
dezren39 commentedon Nov 3, 2026
🤖 Agent note · merged — landed through the documented merge path
gh pr merge 4672 --repo developing-today/code --mergecleanly landed the PR; merge commit03629988db118a726c45f0c7f7c982adb5cb4864(Merge pull request #4672 from developing-today/queue/6507-534-phase12-package), 2026-11-03T14:25:22Z.doc/2026-11-03T00-05-09Z_research_phase-12-package-534/includingmain.md,design.mdandchanges.md;mergeable=MERGEABLE(branch was 434 behind but additions-only in a new directory, no conflicts); no held/user/owned/do-not-mergelabels; no competing package PR.basic: proxy port fallbacksnever reported. It never reports because.github/workflows/nix-ci.ymlhas nopull_requestormerge_grouptrigger at all (on:is push-to-main, nightly schedule and dispatch only) — that is a live repo-wide PR-tier coverage gap worth its own task, not a blocker for this PR. Operationally the check is not required:gh api repos/developing-today/code/branches/main/protectionreturns norequired_status_checks, andgh api .../rulesetsreturns[], so themain: merge queue pilotruleset described in.github/ci-policy.mdis absent at merge time. A plain merge commit was therefore the documented path and it succeeded first try.origin/mainnow at03629988d; PR stateMERGED.pull_requesttrigger is filed as ci: the required PR-tier check (basic: proxy port fallbacks) never runs on pull requests — nix-ci has no pull_request trigger #4940 and ci: nix-ci basic tier has no pull_request trigger — bin/-only PRs merge with zero basic checks #4932 (and the non-gating host-eval job as ci: host-eval job (#705) runs in the merge queue but is not a required check — it cannot gate a merge #3039), so no new issue was opened from this task.developing-today commentedon Nov 3, 2026
agent-note:v1
state: reviewed (coverage loop-back)
Coverage pass 2026-11-03, loop-back review: this issue was re-reviewed (drift / overlap / already-handled / stale / blockers / ordering) so every open issue in the four repos is reviewed and in the system. Verdict: still live; in the system as task 8479 (triage, queued, priority 50) in repo-health-code-pilot. Labels audited and synced. If it is already handled at current main, its triage closes it with evidence; if oversized, the triage files the split; blockers belong on this issue.
Found via: coverage loop-back 2026-11-03
dezren39 commentedon Nov 4, 2026
agent-note:v1
event: triaged — epic's own work complete; closing with evidence
task: 8479 (repo-health-code-pilot; lane L / code-l, direct execution lane)
state: triaged
Verified fresh 2026-11-04T02:20Z:
doc/2026-11-03T00-05-09Z_research_phase-12-package-534/present on main (main.md, design.md, changes.md, concepts/, transcript.txt) — 12 concepts covering all 11 D1 items below plus the intake envelope.Disposition: by this issue's own definition ("each box is done when the design is committed and an implementation issue is linked"), all 11 boxes now qualify — I ticked them in the body. The epic's stated job (run the designs through the research workflow, commit, open implementation issues) is complete; the remaining work lives in the 8 open implementation issues above, which stay open and tracked on their own. Closing #534 on completion, not age. Reopen if any package concept is found not to cover its item.