Back to Oh My Openagent

Shared Core Multi-PR Extraction

docs/reference/shared-core-multi-pr.md

4.8.12.2 KB
Original Source

Shared Core Multi-PR Extraction

This plan pins the shared core extraction work for OpenCode and Codex adapters. Each PR is intentionally small, lands through dev, and preserves observable behavior before moving logic into harness-neutral packages.

PR Matrix

PRScopeRequired proof
PR FCore guardrails and QA conventionstypecheck:packages, boundary audit, QA matrix test
PR 1Codex rules component uses rules-engineRules component characterization, OpenCode rules tests
PR 2Keyword and mode detector pure logicPrompt byte preservation, OpenCode and Codex detector tests
PR 3Comment-checker request shapingWrite/Edit/MultiEdit/apply_patch request equivalence tests
PR 4Boulder continuation readerChecklist and continuation state reader tests
PR 5Telemetry coreDaily activity, opt-out, capture, and shutdown isolation tests
PR 6LSP hook policy helpersMutation path ordering, diagnostics formatting, truncation tests
PR 7Context-pressure helperMarker detection tests and duplicate constant guard

Required QA

Every PR must use TDD: capture a passing baseline, add a failing RED test or structural guard, implement the smallest extraction, then capture GREEN on the same command.

Every PR must run LSP diagnostics when available. If the LSP MCP is unavailable, bun run typecheck is the fallback evidence and the changed TypeScript files must be recorded.

Every PR must run ast-grep checks for forbidden adapter coupling, as any, raw session.prompt, and raw session.promptAsync patterns. PR-specific structural searches must be added for the logic being extracted.

Every PR must run Codex fresh environment QA through an isolated CODEX_HOME install and verify the omo@sisyphuslabs marketplace identity appears in the generated config.

Every PR must run opencode-qa HTTP/SSE checks with the isolated server smoke and SSE hook probe scripts. Adapter behavior PRs must also record an attached server probe for the changed hook surface.

Before merge, every PR must pass local verification, GitHub CI, review-work, and Cubic with no blocking issues. Merge into dev with a merge commit only.