Skip to content

chore(stage7a): purge codex + refresh CORE from current Orbit skills - #1

Merged
thomasluizon merged 1 commit into
mainfrom
chore/stage7a-purge-codex-refresh-core
Jul 10, 2026
Merged

chore(stage7a): purge codex + refresh CORE from current Orbit skills#1
thomasluizon merged 1 commit into
mainfrom
chore/stage7a-purge-codex-refresh-core

Conversation

@thomasluizon

Copy link
Copy Markdown
Owner

Stage 7a of the harness-upgrade — turn the 2026-07-03 config-YAML pack into a current, dual-tool (Claude Code + opencode) generic core, and add the zero-leakage policy gate. First landed slice of Stage 7; 7b–7i follow.

What changed

1. Purge codex (locked-out decision)

  • Deleted adapters/codex/ (21 files), the genCodex() path in gen-adapters.mjs, and the codex layout in install.mjs. Driver = Claude Code; opencode = thin compat. A guard comment in gen-adapters.mjs warns against re-adding it.
  • install.mjs now rejects --tool codex with Expected one of: claude-code, opencode.

2. Zero-leakage genericity gate (guardrail)

  • Extended check-genericity.mjs with a second leak class: hardcoded SDLC policy constants — a Co-Authored-By trailer, gh-as-tracker, squash-only merge, a literal branch prefix. A policy line passes only when it also carries a {{config.*}} reference. The commit-trailer string is never exempted.
  • Self-tested: catches all four leak shapes, exempts the config-referenced line, and stays green against the current core.

3. Refresh CORE from the current Orbit skills (Stages 1–6), genericized

  • pr-review Phase 6: added the cross-model second-opinion step (Critical survivors only, gated by config.secondOpinion.enabled) + CONTESTED handling in the report.
  • New generic skills: second-opinion (+ deterministic second-opinion.helper.mjs), investigate (prod-incident runbook; tools bound via config.investigate.*, degrades gracefully), handoff, lesson.
  • New core/_shared/behavioral-baseline.md — the portable disposition (best-implementation / never-guess / maximum-autonomy / simplicity / surgical / gates-over-prose / orchestrate + the proactivity disposition) that bootstrap will auto-apply before any company overlay.
  • verification-protocol §6 (new): the Workflow-accelerator → subagent → sequential execution tiers + model routing (config.execution.cheapSubagentModel). This is the tool-agnostic home for "Workflow-driven audits" + model/effort routing, read by every review/audit skill.
  • config: added secondOpinion, investigate, and execution.cheapSubagentModel.

Adapters regenerated: 24 skills + 1 agent × 2 tools = 50. check-genericity green.

Design decision to confirm

The Claude-Code Workflow-runtime script (Orbit's audit.mjs) is deliberately not shipped into tool-agnostic core/ — core must not depend on one tool's runtime API. The audit pipeline semantics (find → refute → critic-loop) and the Workflow-accelerator tier are captured in the shared protocol instead. A genericized accelerator script, if wanted, is a clean claude-code-adapter add in the 7b engine slice. Flagging rather than silently scoping — say the word if you'd rather ship the script now.

Verification

  • node scripts/check-genericity.mjs → PASS (project-strings + policy-constants).
  • node --check core/review/second-opinion.helper.mjs → OK.
  • node scripts/gen-adapters.mjs → 50 files, reproducible (no drift on re-run).
  • End-to-end install.mjs --tool claude-code into a temp dir → helper, baseline, and new ops//meta/ core dirs vendor correctly; wrapper pointers resolve.

🤖 Generated with Claude Code

Stage 7a of the harness-upgrade: turn the 2026-07-03 config-YAML pack into a
current, dual-tool (Claude Code + opencode) generic core, and add the zero-leakage
policy gate.

Purge codex
- Delete adapters/codex/ (21 files), the genCodex() path in gen-adapters, and the
  codex layout in install.mjs. Driver = Claude Code, opencode = thin compat.

Zero-leakage genericity gate (guardrail)
- Extend check-genericity.mjs with a second leak class: hardcoded SDLC policy
  constants (Co-Authored-By trailer, gh-as-tracker, squash-only merge, literal
  branch prefix). A policy line passes only when it also carries a {{config.*}}
  ref. Self-tested: catches all four, exempts the config-referenced line, stays
  green against current core.

Refresh CORE from current Orbit skills (Stages 1-6), genericized
- pr-review Phase 6: add the cross-model second-opinion step (Critical survivors,
  gated by config.secondOpinion.enabled), CONTESTED handling in the report.
- New generic skills: second-opinion (+ deterministic helper), investigate (prod
  incident runbook, tool bindings via config.investigate.*), handoff, lesson.
- New core/_shared/behavioral-baseline.md — the portable disposition bootstrap
  auto-applies before any company overlay.
- verification-protocol §6 (new): Workflow-accelerator / subagent / sequential
  execution tiers + model routing (config.execution.cheapSubagentModel). This is
  the tool-agnostic home for "Workflow-driven audits" + model/effort routing.
- config: secondOpinion, investigate, execution.cheapSubagentModel blocks.

Design note: the Claude-Code Workflow-runtime *script* (Orbit's audit.mjs) is
deliberately NOT shipped into tool-agnostic core/ — core must not depend on one
tool's runtime API. The audit pipeline semantics (find -> refute -> critic-loop)
and the Workflow-accelerator tier are captured in the shared protocol; a
genericized accelerator script, if wanted, is a clean claude-code-adapter add in
a later slice (7b engine work).

adapters regenerated (24 skills + 1 agent x 2 tools = 50). check-genericity green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant