golden-chain-sweep
Announce at start: "I'm using the golden-chain-sweep skill."
Usage
/golden-chain-sweep # Validate all 5 chains
/golden-chain-sweep --chains registration,routing # Filter chains
/golden-chain-sweep --timeout-ms 30000 # Override timeout
Execution
Step 1 — Parse arguments
--chains→ comma-separated chain names (default: all 5)--timeout-ms→ per-chain timeout (default: 15000)--projected-rows→ JSON dict of pre-collected projection data
Step 2 — Run node
onex node node_golden_chain_sweep -- \
[--chains <comma-list>] \
[--timeout-ms <ms>] \
[--projected-rows '<json>']
Capture stdout (JSON: GoldenChainSweepResult). Exit 0 = all chains pass, exit 1 = partial/fail.
On non-zero exit, a SkillRoutingError JSON envelope is returned — surface it directly, do not produce prose.
Step 3 — Render report
From the JSON output display:
- Summary: overall status (pass/partial/fail), chains total/passed/failed
- Per-chain table: chain name, status, publish latency (ms), projection latency (ms)
- Failure details: missing fields, timeout messages, error descriptions
Step 4 — Failure handling
| Failure | Cause |
|---|---|
timeout |
omnidash consumer not running or DB unreachable |
fail |
Assertion mismatch on expected fields |
error |
Kafka unavailable or DB connection failure |
Chains
| Chain | Head Topic | Tail Table |
|---|---|---|
| registration | onex.evt.omniclaude.routing-decision.v1 |
agent_routing_decisions |
| pattern_learning | onex.evt.omniintelligence.pattern-stored.v1 |
pattern_learning_artifacts |
| delegation | onex.evt.omniclaude.task-delegated.v1 |
delegation_events |
| routing | onex.evt.omniclaude.llm-routing-decision.v1 |
llm_routing_decisions |
| evaluation | onex.evt.omniclaude.session-outcome.v1 |
session_outcomes |
Architecture
SKILL.md -> thin shell (this file)
node -> omnimarket/src/omnimarket/nodes/node_golden_chain_sweep/ (business logic)
contract -> node_golden_chain_sweep/contract.yaml
Routing contract: dispatch must use onex node <node_name> (not onex run). Non-zero exit emits a SkillRoutingError JSON envelope — callers must surface it verbatim, never paraphrase.