Classify issue and parity intake for CC2 board integration

Constraint: Task 3 scope is limited to G001 issue/parity intake and must not mutate .omx/ultragoal
Rejected: Editing canonical board.json directly | worker-1 owns Task 2 canonical board output and coordination requires a mergeable fragment
Confidence: high
Scope-risk: narrow
Directive: Integrate these rows into .omx/cc2/board.json and board.md without reclassifying the frozen evidence unless the source snapshot changes
Tested: python3 .omx/cc2/validate_issue_parity_intake.py; python3 -m py_compile .omx/cc2/validate_issue_parity_intake.py; python3 -m json.tool .omx/cc2/issue-parity-intake.json; cargo check --manifest-path rust/Cargo.toml --workspace
Not-tested: cargo test --manifest-path rust/Cargo.toml --workspace has 2 pre-existing/environmental failures in rusty-claude-cli tests unrelated to .omx/cc2 intake files
This commit is contained in:
bellman
2026-05-14 17:07:41 +09:00
parent 5c77896dec
commit 07dad88e8c
3 changed files with 534 additions and 0 deletions

View File

@@ -0,0 +1,429 @@
{
"schema_version": "cc2.issue_parity_intake.v1",
"generated_at": "2026-05-14T08:02:00Z",
"task_id": "3",
"owner": "worker-2",
"goal": "G001-stream0-board",
"notes": [
"Leader owns Ultragoal; this artifact does not mutate .omx/ultragoal.",
"Rows are scoped intake/classification evidence for Worker 1/Task 2 board integration."
],
"source_manifest": {
"claw_open_latest": {
"path": ".omx/research/claw-open-latest.json",
"sha256_prefix_from_plan": "89e3e027fa735f38",
"covered_issue_numbers": [3028, 3029, 3030, 3031, 3032, 3033, 3034, 3035, 3036, 3037, 3038]
},
"claw_issues": {
"path": ".omx/research/claw-issues.json",
"sha256_prefix_from_plan": "e64fdba7df3b78ed",
"covered_issue_numbers": [2997, 3003, 3004, 3005, 3006, 3007, 3020, 3023]
},
"opencode": {
"repo_path": ".omx/research/repos/opencode",
"metadata_path": ".omx/research/opencode-repo.json",
"issues_path": ".omx/research/opencode-issues.json",
"head_from_plan": "27ac53aaacc677b1401c4e75ca7a7dadf8b2c349"
},
"codex": {
"repo_path": ".omx/research/repos/codex",
"metadata_path": ".omx/research/codex-repo.json",
"issues_path": ".omx/research/codex-issues.json",
"head_from_plan": "6a225e4005209f2325ab3c681c7c6beba2907d4d"
}
},
"issue_clusters": [
{
"id": "CC2-ISSUE-3007",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3007",
"source_type": "github_issue",
"source_number": 3007,
"title": "Permission modes do not enforce path scope on file tools or shell expansion in bash",
"theme": "security/path-scope",
"release_bucket": "alpha_blocker",
"lifecycle_status": "active",
"roadmap_anchor": "ROADMAP.md#11-policy-engine-for-autonomous-coding; ROADMAP.md#9-green-ness-contract",
"dependencies": ["permission path canonicalization", "file tool target validation", "bash command/path validation reachability", "policy regression fixtures"],
"verification_required": ["workspace-write cannot read/write/delete outside workspace", "shell expansion and symlink traversal are rejected or policy-blocked", "file tools and bash use the same target-scope decision record"],
"deferral_rationale": null,
"classification_rationale": "Security/sandbox escape class; plan names #3007 as alpha blocker."
},
{
"id": "CC2-ISSUE-3020",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3020",
"source_type": "github_issue",
"source_number": 3020,
"title": "OpenAI-compatible model IDs with slashes are stripped before request",
"theme": "provider/model-routing",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#provider-routing-model-name-prefix-must-win-over-env-var-presence-fixed-2026-04-08-0530c50",
"dependencies": ["provider profile contract", "wire model-id preservation option", "routing-prefix source reporting"],
"verification_required": ["OpenAI-compatible endpoint receives exact model id when preservation is enabled", "status JSON reports raw model input, route, and wire model id"],
"deferral_rationale": null,
"classification_rationale": "Core provider correctness but below alpha state/security contracts unless it blocks the selected alpha model path."
},
{
"id": "CC2-ISSUE-3006",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3006",
"source_type": "github_issue",
"source_number": 3006,
"title": "Not Working in windows",
"theme": "windows/install",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#immediate-backlog-from-current-real-pain",
"dependencies": ["Windows support policy", "PowerShell install path", "dependency/version matrix", "diagnostic setup output"],
"verification_required": ["fresh Windows/PowerShell setup smoke documented", "unsupported native paths fail with actionable WSL2/native guidance"],
"deferral_rationale": null,
"classification_rationale": "Real adoption blocker; plan places Windows/install in beta adoption overlay."
},
{
"id": "CC2-ISSUE-3005",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3005",
"source_type": "github_issue",
"source_number": 3005,
"title": "DeepSeek V4-flash/pro fails with 400 Bad Request (missing reasoning_content) while deepseek-reasoner works",
"theme": "provider/response-shape",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#5-failure-taxonomy; ROADMAP.md#provider-routing-model-name-prefix-must-win-over-env-var-presence-fixed-2026-04-08-0530c50",
"dependencies": ["OpenAI-compatible diagnostics playbook", "provider error taxonomy", "reasoning/thinking field compatibility tests"],
"verification_required": ["provider 400 response classified with actionable remediation", "DeepSeek-compatible response-shape fixture does not hide assistant output"],
"deferral_rationale": null,
"classification_rationale": "Provider compatibility issue that shares the #3032 diagnostics lane."
},
{
"id": "CC2-ISSUE-3004",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3004",
"source_type": "github_issue",
"source_number": 3004,
"title": "When can we adapt to zed?",
"theme": "ide/acp",
"release_bucket": "ga_ecosystem",
"lifecycle_status": "deferred_with_rationale",
"roadmap_anchor": "ROADMAP.md#phase-5-plugin-and-mcp-lifecycle-maturity",
"dependencies": ["stable session/control API", "plugin/MCP lifecycle", "engine API or ACP bridge decision"],
"verification_required": ["Zed/ACP smoke once core state/control contracts exist"],
"deferral_rationale": "IDE integration is valuable but should wait until boot/session/event/control truth surfaces are stable.",
"classification_rationale": "Matches plan's GA ecosystem lane for Zed/ACP."
},
{
"id": "CC2-ISSUE-3003",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3003",
"source_type": "github_issue",
"source_number": 3003,
"title": ".claude/sessions should not be submitted to repo",
"theme": "session-hygiene/gitignore",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#9-green-ness-contract; ROADMAP.md#8-recovery-recipes-for-common-failures",
"dependencies": ["artifact ignore policy", "session storage boundary docs", "repo hygiene check"],
"verification_required": ["session directories are ignored", "status/doctor warns about tracked session artifacts"],
"deferral_rationale": null,
"classification_rationale": "Small but user-visible session hygiene and data-leak prevention item."
},
{
"id": "CC2-ISSUE-2997",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/2997",
"source_type": "github_issue",
"source_number": 2997,
"title": "License?",
"theme": "docs/license",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#immediate-backlog-from-current-real-pain",
"dependencies": ["maintainer license decision", "LICENSE file", "README/USAGE attribution wording"],
"verification_required": ["repository license file exists", "package metadata and docs reference the same license"],
"deferral_rationale": null,
"classification_rationale": "Adoption/readiness documentation gap; requires maintainer decision before implementation."
},
{
"id": "CC2-ISSUE-3023",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3023",
"source_type": "github_issue",
"source_number": 3023,
"title": "Protect claw-code from AI slop PRs",
"theme": "repo-hygiene/anti-slop",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#immediate-backlog-from-current-real-pain",
"dependencies": ["contributor policy", "PR quality gate selection", "false-positive review escape hatch"],
"verification_required": ["selected PR quality gate runs on sample good/bad PR fixtures", "maintainers can override false positives"],
"deferral_rationale": null,
"classification_rationale": "Protects project throughput but should not precede alpha core safety contracts."
},
{
"id": "CC2-ISSUE-3028",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3028",
"source_type": "github_issue",
"source_number": 3028,
"title": "docs: add navigation and file-context usage guide",
"theme": "docs/navigation-context",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#7-human-ux-still-leaks-into-claw-workflows",
"dependencies": ["current TUI/shell key behavior inventory", "file context syntax docs", "secret-handling guidance"],
"verification_required": ["docs include terminal history, scrollback, @file context, attach/external file caveats", "examples work against current CLI"],
"deferral_rationale": null,
"classification_rationale": "Documentation support item from latest open issue refresh."
},
{
"id": "CC2-ISSUE-3029",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3029",
"source_type": "github_issue",
"source_number": 3029,
"title": "build: add cross-platform installer path and release artifact quickstart",
"theme": "install/distribution",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#immediate-backlog-from-current-real-pain",
"dependencies": ["release artifact policy", "install.sh/install.ps1 contract", "PATH/update/uninstall instructions"],
"verification_required": ["install quickstart smoke on supported OS/arch", "failed install prints actionable diagnostics"],
"deferral_rationale": null,
"classification_rationale": "Distribution friction belongs in adoption overlay."
},
{
"id": "CC2-ISSUE-3030",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3030",
"source_type": "github_issue",
"source_number": 3030,
"title": "feat: make provider/model setup less env-var-driven",
"theme": "provider/setup-profiles",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#3-structured-session-control-api; ROADMAP.md#145-boot-preflight-doctor-contract",
"dependencies": ["provider profiles", "setup wizard or dry-run", "secret redaction", "base-url/model smoke test"],
"verification_required": ["setup validates provider route without echoing keys", "session-only versus persisted profile behavior is explicit"],
"deferral_rationale": null,
"classification_rationale": "Directly reduces current provider setup support churn."
},
{
"id": "CC2-ISSUE-3031",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3031",
"source_type": "github_issue",
"source_number": 3031,
"title": "feat: auto-compact or clearly recover from context-window provider errors",
"theme": "session-recovery/context-window",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#8-recovery-recipes-for-common-failures; ROADMAP.md#158-compact_messages_if_needed-drops-turns-silently-no-structured-compaction-event-emitted",
"dependencies": ["provider error classifier", "safe compact retry policy", "compaction event/audit trail", "retry loop cap"],
"verification_required": ["context-window error either compacts+retries once safely or emits exact recovery command", "compaction event is machine-visible"],
"deferral_rationale": null,
"classification_rationale": "Recovery reliability item; promoted only if selected alpha provider path hits it."
},
{
"id": "CC2-ISSUE-3032",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3032",
"source_type": "github_issue",
"source_number": 3032,
"title": "docs: add OpenAI-compatible/local provider diagnostics playbook",
"theme": "provider/diagnostics-docs",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#5-failure-taxonomy",
"dependencies": ["raw chat-completions smoke tests", "tool-call response-shape examples", "provider failure taxonomy"],
"verification_required": ["playbook distinguishes Claw bugs from wrapper/tool-call-shape bugs", "curl examples cover non-streaming and streaming tool calls"],
"deferral_rationale": null,
"classification_rationale": "Shared diagnostic lane for #3005/#3020/local model reports."
},
{
"id": "CC2-ISSUE-3033",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3033",
"source_type": "github_issue",
"source_number": 3033,
"title": "feat: add minimal claw serve JSON-RPC engine API",
"theme": "engine-api/control-plane",
"release_bucket": "ga_ecosystem",
"lifecycle_status": "deferred_with_rationale",
"roadmap_anchor": "ROADMAP.md#3-structured-session-control-api; ROADMAP.md#phase-4-claws-first-task-execution",
"dependencies": ["stable session state API", "event schema v1", "permission policy contract", "cancel/prompt stream semantics"],
"verification_required": ["protocol conformance fixtures for session/create prompt/stream cancel error", "capability negotiation backwards compatibility"],
"deferral_rationale": "Engine API should expose, not invent, stable core control-plane semantics after alpha contracts land.",
"classification_rationale": "Useful integration surface but too broad for alpha unless narrowed to existing session control API."
},
{
"id": "CC2-ISSUE-3034",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3034",
"source_type": "github_issue",
"source_number": 3034,
"title": "docs: define evidence-gated Hermes handoff loop for Claw Code execution",
"theme": "sdlc/evidence-handoff",
"release_bucket": "post_2_0_research",
"lifecycle_status": "deferred_with_rationale",
"roadmap_anchor": "ROADMAP.md#4-canonical-lane-event-schema; ROADMAP.md#10-typed-task-packet-format",
"dependencies": ["typed task packet", "evidence bundle schema", "report gate status vocabulary"],
"verification_required": ["handoff packet fixture validates scope/success/test evidence fields", "post-flight gate consumes evidence instead of free-text summary"],
"deferral_rationale": "Can inform event/report/task contracts, but Hermes-specific loop should stay research/docs until core schemas are stable.",
"classification_rationale": "Only the generic evidence-gated contract is Claw 2.0; Hermes branding is not core."
},
{
"id": "CC2-ISSUE-3035",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3035",
"source_type": "github_issue",
"source_number": 3035,
"title": "fix: improve compacted session resume discoverability",
"theme": "session-resume/discoverability",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#8-recovery-recipes-for-common-failures; ROADMAP.md#160-session_store-has-no-list_sessions-delete_session-or-session_exists",
"dependencies": ["session enumeration", "latest-session workspace search boundary", "compacted session marker"],
"verification_required": ["/resume latest finds newest eligible compacted session", "/session or status lists resumable compacted sessions with path/id"],
"deferral_rationale": null,
"classification_rationale": "Session recovery/adoption item."
},
{
"id": "CC2-ISSUE-3036",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3036",
"source_type": "github_issue",
"source_number": 3036,
"title": "docs: add official Ollama/llama.cpp/vLLM local model examples",
"theme": "provider/local-docs",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#145-boot-preflight-doctor-contract; ROADMAP.md#5-failure-taxonomy",
"dependencies": ["known-good local provider examples", "raw /v1 smoke test", "tool-call limitation warning"],
"verification_required": ["docs include Ollama/llama.cpp/vLLM examples and HELLO smoke", "tool-call caveats are explicit"],
"deferral_rationale": null,
"classification_rationale": "Local provider adoption support."
},
{
"id": "CC2-ISSUE-3037",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3037",
"source_type": "github_issue",
"source_number": 3037,
"title": "docs: clarify Claw Code positioning as multi-provider Claude-Code-shaped runtime",
"theme": "docs/product-positioning",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"roadmap_anchor": "ROADMAP.md#goal; ROADMAP.md#definition-of-clawable",
"dependencies": ["README positioning copy", "provider support truth table", "identity leak bug policy"],
"verification_required": ["README/docs answer Claude-only question directly", "provider support wording matches implemented routes"],
"deferral_rationale": null,
"classification_rationale": "Clarifies product identity for adoption without broad implementation."
},
{
"id": "CC2-ISSUE-3038",
"source_anchor": "https://github.com/ultraworkers/claw-code/issues/3038",
"source_type": "github_issue",
"source_number": 3038,
"title": "roadmap: track skills/plugins/marketplace ecosystem gap after core UX stabilizes",
"theme": "plugin-marketplace/ecosystem",
"release_bucket": "ga_ecosystem",
"lifecycle_status": "deferred_with_rationale",
"roadmap_anchor": "ROADMAP.md#13-first-class-pluginmcp-lifecycle-contract; ROADMAP.md#14-mcp-end-to-end-lifecycle-parity",
"dependencies": ["plugin/MCP lifecycle contract", "extension point inventory", "discovery/install/update flow design"],
"verification_required": ["extension point inventory exists", "marketplace work explicitly depends on core UX stabilization"],
"deferral_rationale": "Marketplace breadth should wait until core setup/auth/provider/session UX and plugin lifecycle are reliable.",
"classification_rationale": "Matches plan's ga_ecosystem/post-2.0 caution for marketplace parity."
}
],
"parity_rows": [
{
"id": "CC2-PARITY-OPENCODE-PLUGIN-ECOSYSTEM",
"source_anchor": "anomalyco/opencode@27ac53aa packages/app/web/desktop/plugin/sdk/extensions/zed/slack/containers plus issue #3038",
"source_type": "repo_clone_and_local_issue",
"title": "Plugin/skills/marketplace ecosystem inventory",
"release_bucket": "ga_ecosystem",
"lifecycle_status": "deferred_with_rationale",
"dependencies": ["Claw plugin/MCP lifecycle contract", "current extension-point inventory"],
"verification_required": ["inventory maps current Claw plugin/skill/MCP extension points before marketplace implementation"],
"deferral_rationale": "Adapt ecosystem discovery only after core setup/provider/session reliability is stable."
},
{
"id": "CC2-PARITY-OPENCODE-PERMISSION-PRESETS",
"source_anchor": "https://github.com/anomalyco/opencode/issues/27464 and ROADMAP.md#11-policy-engine-for-autonomous-coding",
"source_type": "external_issue_and_roadmap",
"title": "Quick permission preset switching mapped onto Claw policy profiles",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"dependencies": ["policy profile model", "approval-token audit trail"],
"verification_required": ["preset switch is visible in status/report output and cannot bypass path-scope enforcement"],
"deferral_rationale": null
},
{
"id": "CC2-PARITY-OPENCODE-CUSTOM-PROVIDER-PARAMS",
"source_anchor": "https://github.com/anomalyco/opencode/issues/27462 and #3030/#3032",
"source_type": "external_issue_and_local_issue",
"title": "Custom API parameter passthrough for provider profiles",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"dependencies": ["provider profile schema", "secret redaction", "request audit surface"],
"verification_required": ["custom params are schema-validated, redacted, and visible as provenance without leaking secrets"],
"deferral_rationale": null
},
{
"id": "CC2-PARITY-OPENCODE-TODOWRITE-AUTOCOMPLETE",
"source_anchor": "https://github.com/anomalyco/opencode/issues/27453 and ROADMAP.md#10-typed-task-packet-format",
"source_type": "external_issue_and_roadmap",
"title": "Task/Todo completion assistance via typed task lifecycle",
"release_bucket": "ga_ecosystem",
"lifecycle_status": "deferred_with_rationale",
"dependencies": ["typed task packet", "task lifecycle events", "evidence-gated completion"],
"verification_required": ["auto-complete suggestions cannot mark work complete without evidence bundle or explicit user approval"],
"deferral_rationale": "Useful UX should follow, not precede, typed task lifecycle and evidence contract."
},
{
"id": "CC2-PARITY-OPENCODE-WINDOWS-DISTRIBUTION",
"source_anchor": "https://github.com/anomalyco/opencode/issues/27476 https://github.com/anomalyco/opencode/issues/27459 https://github.com/anomalyco/opencode/issues/27470 and #3006/#3029",
"source_type": "external_issues_and_local_issues",
"title": "Windows/GLIBC/distribution reliability parity lessons",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"dependencies": ["install artifact matrix", "Windows encoding guidance", "minimum Linux/GLIBC support statement"],
"verification_required": ["release quickstart documents supported OS matrix and known terminal/encoding caveats"],
"deferral_rationale": null
},
{
"id": "CC2-PARITY-CODEX-GRANULAR-PERMISSIONS",
"source_anchor": "https://github.com/openai/codex/issues/22595 and Codex docs permissions/app/plugin concepts",
"source_type": "external_issue_and_docs",
"title": "Granular app/plugin permissions adapted to Claw policy engine",
"release_bucket": "alpha_blocker",
"lifecycle_status": "active",
"dependencies": ["permission enforcer path-scope fix", "plugin/MCP capability model", "approval-token replay protection"],
"verification_required": ["granular permission grants do not widen workspace path scope implicitly"],
"deferral_rationale": null
},
{
"id": "CC2-PARITY-CODEX-SESSION-RECOVERY",
"source_anchor": "https://github.com/openai/codex/issues/22619 https://github.com/openai/codex/issues/22597 https://github.com/openai/codex/issues/22593 and #3035",
"source_type": "external_issues_and_local_issue",
"title": "Safe local session/thread recovery without storage amplification",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"dependencies": ["session enumeration", "resume latest boundary", "JSONL/storage compaction policy"],
"verification_required": ["recoverable sessions are discoverable and session forks avoid unbounded duplicate history"],
"deferral_rationale": null
},
{
"id": "CC2-PARITY-CODEX-PROXY-NETWORK",
"source_anchor": "https://github.com/openai/codex/issues/22623 and #3032",
"source_type": "external_issue_and_local_issue",
"title": "Provider/network diagnostics include proxy behavior",
"release_bucket": "beta_adoption",
"lifecycle_status": "open",
"dependencies": ["HTTP client proxy detection", "provider diagnostics playbook"],
"verification_required": ["diagnostics report whether proxy env/config is honored for provider calls"],
"deferral_rationale": null
},
{
"id": "CC2-PARITY-CODEX-CLI-AGENT-FLAG",
"source_anchor": "https://github.com/openai/codex/issues/22615 and ROADMAP.md#10-typed-task-packet-format",
"source_type": "external_issue_and_roadmap",
"title": "CLI flag for agent/subagent mode mapped to Claw typed task packets",
"release_bucket": "ga_ecosystem",
"lifecycle_status": "deferred_with_rationale",
"dependencies": ["typed task packet", "session control API", "policy-scoped worker launch"],
"verification_required": ["CLI agent mode cannot bypass task policy or evidence requirements"],
"deferral_rationale": "Implement only after core task/session control contracts are stable."
}
],
"coverage": {
"required_latest_open_range_3028_3038": [3028, 3029, 3030, 3031, 3032, 3033, 3034, 3035, 3036, 3037, 3038],
"required_existing_issue_numbers": [3007, 3006, 3020, 3005, 3003, 2997, 3023, 3004],
"issue_rows_expected": 19,
"parity_rows_expected_minimum": 6
}
}

View File

@@ -0,0 +1,47 @@
# CC2 Issue / Parity Intake Mapping
Generated by `worker-2` for team task 3 (`G001 issue/parity intake mapping`). This is a board-integration fragment for Stream 0; it intentionally does **not** mutate `.omx/ultragoal`.
## Covered local issue clusters
| Issue | Theme | Bucket | Lifecycle | Board anchor |
|---:|---|---|---|---|
| #3007 | security/path-scope | `alpha_blocker` | `active` | Policy engine + green-ness contract |
| #3020 | provider/model-routing | `beta_adoption` | `open` | Provider routing/model source status |
| #3006 | windows/install | `beta_adoption` | `open` | Immediate backlog / install readiness |
| #3005 | provider/response-shape | `beta_adoption` | `open` | Failure taxonomy / provider diagnostics |
| #3004 | ide/acp | `ga_ecosystem` | `deferred_with_rationale` | Plugin/MCP lifecycle maturity |
| #3003 | session-hygiene/gitignore | `beta_adoption` | `open` | Green-ness / recovery hygiene |
| #2997 | docs/license | `beta_adoption` | `open` | Adoption docs/license readiness |
| #3023 | repo-hygiene/anti-slop | `beta_adoption` | `open` | Immediate backlog / PR quality gate |
| #3028 | docs/navigation-context | `beta_adoption` | `open` | Human UX leaks into claw workflows |
| #3029 | install/distribution | `beta_adoption` | `open` | Cross-platform release quickstart |
| #3030 | provider/setup-profiles | `beta_adoption` | `open` | Boot preflight / structured session control |
| #3031 | session-recovery/context-window | `beta_adoption` | `open` | Recovery recipes / compaction event |
| #3032 | provider/diagnostics-docs | `beta_adoption` | `open` | Failure taxonomy |
| #3033 | engine-api/control-plane | `ga_ecosystem` | `deferred_with_rationale` | Structured session control API |
| #3034 | sdlc/evidence-handoff | `post_2_0_research` | `deferred_with_rationale` | Event/report/task contract input |
| #3035 | session-resume/discoverability | `beta_adoption` | `open` | Recovery recipes / session enumeration |
| #3036 | provider/local-docs | `beta_adoption` | `open` | Provider setup and diagnostics docs |
| #3037 | docs/product-positioning | `beta_adoption` | `open` | Goal / definition of clawable |
| #3038 | plugin-marketplace/ecosystem | `ga_ecosystem` | `deferred_with_rationale` | Plugin/MCP lifecycle maturity |
## Parity intake rows
| Row | Source | Bucket | Lifecycle | Adaptation rule |
|---|---|---|---|---|
| `CC2-PARITY-OPENCODE-PLUGIN-ECOSYSTEM` | opencode repo + #3038 | `ga_ecosystem` | `deferred_with_rationale` | Inventory Claw extension points before marketplace work. |
| `CC2-PARITY-OPENCODE-PERMISSION-PRESETS` | opencode #27464 | `beta_adoption` | `open` | Permission preset UX must not bypass Claw path-scope policy. |
| `CC2-PARITY-OPENCODE-CUSTOM-PROVIDER-PARAMS` | opencode #27462 + #3030/#3032 | `beta_adoption` | `open` | Custom provider params need schema validation, redaction, and provenance. |
| `CC2-PARITY-OPENCODE-TODOWRITE-AUTOCOMPLETE` | opencode #27453 | `ga_ecosystem` | `deferred_with_rationale` | Auto-complete task UX follows typed task lifecycle/evidence gates. |
| `CC2-PARITY-OPENCODE-WINDOWS-DISTRIBUTION` | opencode #27476/#27459/#27470 + #3006/#3029 | `beta_adoption` | `open` | Use external pain as release-matrix and diagnostics evidence. |
| `CC2-PARITY-CODEX-GRANULAR-PERMISSIONS` | Codex #22595 + docs | `alpha_blocker` | `active` | Adapt granular permissions only through Claw policy engine and approval tokens. |
| `CC2-PARITY-CODEX-SESSION-RECOVERY` | Codex #22619/#22597/#22593 + #3035 | `beta_adoption` | `open` | Session discovery/recovery must avoid storage amplification. |
| `CC2-PARITY-CODEX-PROXY-NETWORK` | Codex #22623 + #3032 | `beta_adoption` | `open` | Provider diagnostics should expose proxy behavior. |
| `CC2-PARITY-CODEX-CLI-AGENT-FLAG` | Codex #22615 | `ga_ecosystem` | `deferred_with_rationale` | CLI agent mode waits for typed task/session control contracts. |
Validation command:
```bash
python3 .omx/cc2/validate_issue_parity_intake.py
```

View File

@@ -0,0 +1,58 @@
#!/usr/bin/env python3
"""Validate the worker-2 CC2 issue/parity intake fragment."""
from __future__ import annotations
import json
from pathlib import Path
ROOT = Path(__file__).resolve().parents[2]
INTAKE = ROOT / ".omx" / "cc2" / "issue-parity-intake.json"
REQUIRED_ISSUES = set(range(3028, 3039)) | {3007, 3006, 3020, 3005, 3003, 2997, 3023, 3004}
ALLOWED_STATUS = {
"context",
"active",
"open",
"done_verify",
"stale_done",
"superseded",
"deferred_with_rationale",
"rejected_not_claw",
}
ALLOWED_BUCKETS = {"alpha_blocker", "beta_adoption", "ga_ecosystem", "post_2_0_research"}
def require(condition: bool, message: str) -> None:
if not condition:
raise SystemExit(f"FAIL: {message}")
def main() -> None:
data = json.loads(INTAKE.read_text())
issue_rows = data.get("issue_clusters", [])
parity_rows = data.get("parity_rows", [])
seen = {row.get("source_number") for row in issue_rows}
missing = sorted(REQUIRED_ISSUES - seen)
extra = sorted(seen - REQUIRED_ISSUES)
require(not missing, f"missing required issue rows: {missing}")
require(not extra, f"unexpected issue rows in scoped intake: {extra}")
require(len(issue_rows) == len(REQUIRED_ISSUES), "duplicate or missing issue row count")
ids = [row.get("id") for row in issue_rows + parity_rows]
require(len(ids) == len(set(ids)), "duplicate ids present")
for row in issue_rows + parity_rows:
row_id = row.get("id")
for field in ["source_anchor", "source_type", "release_bucket", "lifecycle_status", "dependencies", "verification_required"]:
require(row.get(field) not in (None, "", []), f"{row_id} missing {field}")
require(row["release_bucket"] in ALLOWED_BUCKETS, f"{row_id} invalid release_bucket {row['release_bucket']}")
require(row["lifecycle_status"] in ALLOWED_STATUS, f"{row_id} invalid lifecycle_status {row['lifecycle_status']}")
if row["lifecycle_status"] == "deferred_with_rationale":
require(row.get("deferral_rationale"), f"{row_id} deferred without rationale")
require(len(parity_rows) >= data["coverage"]["parity_rows_expected_minimum"], "not enough parity rows")
print(f"PASS issue/parity intake: {len(issue_rows)} issue rows, {len(parity_rows)} parity rows")
if __name__ == "__main__":
main()