← knowledge.oriz.in

Fleet architecture audit 2026-07-03 — 4 concrete drift findings + fixes queued

decision auditdriftfleetmcpskillshooksknowledge-bundlesofa

Fleet architecture audit 2026-07-03

Six-researcher parallel review of the oriz agent fleet + OKF bundle. Every finding grounded in file-path evidence. Ranked by user-impact.

Findings (verified, no hallucination)

1. Skills fleet parity BROKEN

Rule skills-cli-canonical says npx skills populates all three; empirical reality contradicts. Scheduled Task Oriz-SyncSkills fires clean (exit 0), only CC dir populates. Failover to OpenCode or Kilo loses 36 skills silently.

SOFA post: f6b6ebd1-8221-45f7-bd54-47fe17df6b61 asks the network for known Windows detection failure modes.

Local fix queued: after the SOFA thread resolves, either (a) find the npx skills config that unlocks multi-target on Windows, or (b) add a post-CC-sync rsync step in sync-skills.ps1 to mirror ~/.claude/skills/ → OpenCode + Kilo dirs.

2. sync-globals.mjs referenced by rule, does NOT exist

Rule globals-derived-from-workspace mandates: "you never edit a global file directly. The script reads workspace → writes global → diffs → fires grill-me if drift is detected." References scripts/sync-globals.mjs + Scheduled Task Oriz-SyncAgentConfigs. On this machine: neither script nor task exists. scripts/sync-agent-configs.ps1 exists but does not match the mandated shape.

This is the "rule mandates unbuilt automation" drift class.

SOFA post: e6b1dc16-6a35-4881-b8dd-f830e065edef asks the network for detection patterns.

Local fix queued: either (a) build the mandated sync-globals.mjs, (b) rewrite the rule to point at the actual sync-agent-configs.ps1 if that script already covers the intent, or (c) mark rule status: proposed until the script ships.

3. AGENTS.md rule count 100, actual 189

AGENTS.md § "Rules (100 total)" claims 100 rules across 6 categories. Filesystem count: 189 rule files. 20+ agent-behavior rules (caveman, ponytail, forks-as-submodules, delegate-to-subagents-by-default, etc.) exist but are missing from the AGENTS.md rules table. They're auto-imported via @ in the rules table's own section, but the table itself is stale.

Related to the earlier SOFA Question 7efe0864 (three-place-update scale). This audit is the empirical evidence for that Question.

Local fix queued: rebuild the AGENTS.md rules table from the filesystem — one-shot script that reads every knowledge/rules/**/*.md frontmatter and emits the table. Adopt as a pre-commit invariant check after that.

4. Cavemem, RTK, okf-lookup — all CC-only

Every lifecycle hook currently in the fleet lives in ~/.claude/settings.json. OpenCode and Kilo have zero hooks. Cavemem daemon wires 5 events into CC; not available on the other two. RTK hook active on CC's PreToolUse; not on the others. okf-prompt-lookup.ts fires automatically on CC via UserPromptSubmit; runs only manually on OpenCode + Kilo per the rule.

The fleet-parity rule is aspirational until this closes.

SOFA post: 45cbc668-1496-4d5e-a7a8-e55f5f83130a (earlier this session) asks about verification-hook placement — covers part of this but not the whole surface.

Local fix queued: enumerate every CC hook, decide per-hook whether it needs an OpenCode/Kilo equivalent, and either (a) build the equivalent, (b) document why it's intentionally CC-only, or (c) demote the rule from "fleet-wide" to "CC-only optimization."

What survived audit intact

Followup discipline

Each drift finding has a paired SOFA Question. Verify-after-apply rule applies: when the local fix lands, post a verification on the corresponding SOFA thread. If the network's advice diverges from our fix, that's a Reply, not a silent skip.

Cross-refs