@azure-id/orc 0.56.1 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +219 -0
- package/README-id.md +49 -107
- package/README.md +694 -719
- package/bin/build-agents.js +18 -11
- package/bin/cli.js +33699 -29855
- package/bin/onboarding-content.js +0 -3
- package/bin/test-run.js +491 -0
- package/bin/verify-contracts.js +4330 -3277
- package/bin/verify-package.js +76 -6
- package/bin/webui/api.js +1201 -1163
- package/bin/webui/app.html +210 -198
- package/bin/webui/css/06-responsive.css +120 -108
- package/bin/webui/css/panels/extra.css +29 -0
- package/bin/webui/css/panels/lanes.css +134 -0
- package/bin/webui/css/panels/settings.css +79 -3
- package/bin/webui/css/panels/wait.css +123 -0
- package/bin/webui/fixtures/extra.js +2036 -1934
- package/bin/webui/fixtures/flow.js +2 -2
- package/bin/webui/fixtures/index.js +510 -486
- package/bin/webui/fixtures/lanes.js +218 -0
- package/bin/webui/fixtures/settings.js +261 -34
- package/bin/webui/fixtures/stats.js +3 -3
- package/bin/webui/fixtures/wait.js +97 -0
- package/bin/webui/i18n/TERMS.md +135 -134
- package/bin/webui/i18n/en/extra.json +345 -313
- package/bin/webui/i18n/en/lanes.json +29 -0
- package/bin/webui/i18n/en/nav.json +21 -19
- package/bin/webui/i18n/en/overview.json +2 -0
- package/bin/webui/i18n/en/settings.json +16 -5
- package/bin/webui/i18n/en/wait.json +41 -0
- package/bin/webui/i18n/id/extra.json +345 -313
- package/bin/webui/i18n/id/lanes.json +29 -0
- package/bin/webui/i18n/id/nav.json +21 -19
- package/bin/webui/i18n/id/overview.json +2 -0
- package/bin/webui/i18n/id/settings.json +15 -4
- package/bin/webui/i18n/id/wait.json +41 -0
- package/bin/webui/js/01-i18n.js +151 -149
- package/bin/webui/js/panels/extra.js +3199 -3011
- package/bin/webui/js/panels/lanes.js +259 -0
- package/bin/webui/js/panels/overview.js +10 -0
- package/bin/webui/js/panels/settings.js +149 -3
- package/bin/webui/js/panels/wait.js +253 -0
- package/package.json +39 -39
- package/templates/agents/MODEL-MAPPING.md +23 -35
- package/templates/agents/orc-executor-opus-4-7-high.md +1 -1
- package/templates/agents/orc-executor-opus-4-7-med.md +1 -1
- package/templates/agents/orc-executor-opus-4-8-high.md +1 -1
- package/templates/agents/orc-executor-opus-5-high.md +1 -1
- package/templates/agents/orc-executor-opus-5-low.md +1 -1
- package/templates/agents/orc-executor-opus-5-med.md +1 -1
- package/templates/agents/orc-retro-opus-5-med.md +73 -73
- package/templates/agents/orc-retro-sonnet-5-high.md +72 -72
- package/templates/agents/orc-trace-writer-haiku-4-5.md +107 -107
- package/templates/commands/orc-route.md +1 -1
- package/templates/commands/orc-wait.md +19 -0
- package/templates/commands/orc.md +1 -1
- package/templates/hooks/orc-statusline.js +39 -0
- package/templates/skills/_shared/README.md +7 -3
- package/templates/skills/_shared/config-precedence.md +198 -0
- package/templates/skills/_shared/drift-recovery.md +1 -1
- package/templates/skills/_shared/extra-dispatch.md +159 -7
- package/templates/skills/_shared/interview.md +1 -1
- package/templates/skills/_shared/opus5-only.md +9 -7
- package/templates/skills/_shared/phases/README.md +82 -0
- package/templates/skills/{orc/references → _shared/phases}/analyst-gates.md +15 -3
- package/templates/skills/_shared/phases/execution.md +143 -0
- package/templates/skills/{orc/references → _shared/phases}/house-rules.md +13 -1
- package/templates/skills/{orc/references → _shared/phases}/intake.md +15 -2
- package/templates/skills/_shared/phases/mock-example.md +56 -0
- package/templates/skills/{orc/references → _shared/phases}/plan-handoff.md +16 -3
- package/templates/skills/_shared/phases/planning.md +135 -0
- package/templates/skills/_shared/phases/preflight.md +98 -0
- package/templates/skills/_shared/phases/review.md +53 -0
- package/templates/skills/_shared/phases/scoring.md +65 -0
- package/templates/skills/{orc/references → _shared/phases}/security-checklist.md +12 -1
- package/templates/skills/_shared/phases/security.md +55 -0
- package/templates/skills/_shared/phases/ship.md +88 -0
- package/templates/skills/{orc/references/stop-and-resume.md → _shared/phases/stop-resume.md} +169 -160
- package/templates/skills/_shared/phases/summary.md +48 -0
- package/templates/skills/_shared/phases/testgen.md +51 -0
- package/templates/skills/{orc/references/trace-protocol.md → _shared/phases/trace.md} +49 -6
- package/templates/skills/_shared/phases/verify.md +70 -0
- package/templates/skills/{orc/references → _shared/phases}/wave-grouping.md +14 -2
- package/templates/skills/{orc/references → _shared/phases}/wiki-consult.md +13 -1
- package/templates/skills/_shared/read-ladder.md +48 -0
- package/templates/skills/_shared/wait.md +240 -0
- package/templates/skills/context-combiner/SKILL.md +214 -187
- package/templates/skills/orc/README.md +148 -150
- package/templates/skills/orc/SKILL.md +75 -358
- package/templates/skills/orc/config.md +137 -389
- package/templates/skills/orc/examples/full-run-mock.md +1 -1
- package/templates/skills/orc/references/effort-and-mode.md +16 -18
- package/templates/skills/orc/references/phases/intake.md +47 -0
- package/templates/skills/orc/references/phases/integration.md +19 -0
- package/templates/skills/orc/references/preflight-report.md +4 -4
- package/templates/skills/orc/references/ultra-mode.md +117 -123
- package/templates/skills/orc/schemas/planning-output.md +279 -279
- package/templates/skills/orc/subskills/orc-planner/SKILL.md +260 -264
- package/templates/skills/orc/subskills/orc-pr/stack-gate.md +4 -1
- package/templates/skills/orc-aftermath/SKILL.md +158 -136
- package/templates/skills/orc-analyze/SKILL.md +252 -220
- package/templates/skills/orc-analyze/references/branching.md +51 -51
- package/templates/skills/orc-analyze/references/thin-input.md +1 -1
- package/templates/skills/orc-analyze-mini/SKILL.md +128 -112
- package/templates/skills/orc-boundary/SKILL.md +249 -208
- package/templates/skills/orc-brainstorm/SKILL.md +377 -339
- package/templates/skills/orc-budget/SKILL.md +248 -225
- package/templates/skills/orc-challenge/README.md +1 -1
- package/templates/skills/orc-challenge/SKILL.md +298 -255
- package/templates/skills/orc-challenge/examples/council-full-roster.md +1 -1
- package/templates/skills/orc-claude/SKILL.md +221 -199
- package/templates/skills/orc-diy/README.md +2 -1
- package/templates/skills/orc-diy/SKILL.md +132 -68
- package/templates/skills/orc-diy/references/blocks/analyze.md +1 -1
- package/templates/skills/orc-diy/references/compile.md +21 -7
- package/templates/skills/orc-diy/references/flow-schema.md +2 -2
- package/templates/skills/orc-doc/SKILL.md +49 -7
- package/templates/skills/orc-explain/SKILL.md +24 -0
- package/templates/skills/orc-export/SKILL.md +31 -5
- package/templates/skills/orc-fast/SKILL.md +218 -185
- package/templates/skills/orc-grill/SKILL.md +238 -207
- package/templates/skills/orc-handoff/SKILL.md +223 -204
- package/templates/skills/orc-learn/SKILL.md +181 -156
- package/templates/skills/orc-mini/SKILL.md +47 -24
- package/templates/skills/orc-pact/SKILL.md +255 -218
- package/templates/skills/orc-pattern/SKILL.md +154 -124
- package/templates/skills/orc-poly/SKILL.md +242 -216
- package/templates/skills/orc-poly/references/gather.md +1 -1
- package/templates/skills/orc-pr-driver/SKILL.md +196 -167
- package/templates/skills/orc-pr-driver/references/orc-run-split.md +1 -1
- package/templates/skills/orc-pr-setup/SKILL.md +212 -184
- package/templates/skills/orc-quick/README.md +2 -2
- package/templates/skills/orc-quick/SKILL.md +51 -13
- package/templates/skills/orc-quick/references/dispatch-gate.md +2 -3
- package/templates/skills/orc-retro/SKILL.md +249 -222
- package/templates/skills/orc-retro/examples/retro-mock.md +171 -171
- package/templates/skills/orc-route/SKILL.md +188 -165
- package/templates/skills/orc-verify/SKILL.md +103 -84
- package/templates/skills/orc-wait/SKILL.md +163 -0
- package/templates/skills/orc-wiki/SKILL.md +60 -206
- package/templates/skills/orc-wiki/references/phases/phase-0.md +71 -0
- package/templates/skills/orc-wiki/references/phases/phase-1.md +35 -0
- package/templates/skills/orc-wiki/references/phases/phase-2.md +52 -0
- package/templates/skills/orc-wiki/references/phases/phase-3.md +57 -0
- package/templates/skills/orc-wiki/references/phases/phase-3c.md +36 -0
- package/templates/agents/orc-advisor-fable-5.md +0 -50
- package/templates/agents/orc-analyst-fable-5.md +0 -115
- package/templates/agents/orc-judge-fable-5.md +0 -79
- package/templates/agents/orc-planner-fable-5.md +0 -152
- package/templates/agents/orc-reviewer-fable-5.md +0 -57
- package/templates/skills/_shared/fable5-override.md +0 -56
- package/templates/skills/orc-diy/references/blocks/execution.md +0 -42
- package/templates/skills/orc-diy/references/blocks/mock-example.md +0 -22
- package/templates/skills/orc-diy/references/blocks/planning.md +0 -34
- package/templates/skills/orc-diy/references/blocks/review.md +0 -18
- package/templates/skills/orc-diy/references/blocks/scoring.md +0 -16
- package/templates/skills/orc-diy/references/blocks/security.md +0 -25
- package/templates/skills/orc-diy/references/blocks/ship.md +0 -25
- package/templates/skills/orc-diy/references/blocks/summary.md +0 -18
- package/templates/skills/orc-diy/references/blocks/testgen.md +0 -17
- package/templates/skills/orc-diy/references/blocks/trace.md +0 -28
- package/templates/skills/orc-diy/references/blocks/verify.md +0 -25
|
@@ -1,171 +1,171 @@
|
|
|
1
|
-
# Worked example — /orc-retro run (mock; orient only, never execute from this)
|
|
2
|
-
|
|
3
|
-
The retro is the READER end of the behavior-trace flywheel: it mines the `.txt`
|
|
4
|
-
traces (logging is permanent — every run writes one), aggregates the CLOSED verb
|
|
5
|
-
set, and files a calibration report UPSTREAM to the ORC repo. It never tunes
|
|
6
|
-
your project, never self-tunes, and writes no trace of its own.
|
|
7
|
-
|
|
8
|
-
## Happy path
|
|
9
|
-
|
|
10
|
-
Setup: `.claude/orc/logs/` holds 3 traces (logging was on for a while). The
|
|
11
|
-
delivery target is the configured `retro_repo` (default `azure-id/orc`). The
|
|
12
|
-
`gh` CLI is installed and authed.
|
|
13
|
-
|
|
14
|
-
```
|
|
15
|
-
U: /orc-retro
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
### Step 0 — P0 preflight (a delivery channel, or no run at all)
|
|
19
|
-
|
|
20
|
-
```
|
|
21
|
-
C: Probing delivery channel…
|
|
22
|
-
gh --version → gh 2.62.0 ✓ gh auth status → logged in as joshua-k ✓
|
|
23
|
-
Channel = gh. Target = retro_repo (azure-id/orc).
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
If BOTH `gh` and a GitHub MCP were missing → STOP here: mine nothing, spawn
|
|
27
|
-
nothing, write no local report. Tell the user to `gh auth login` (or connect a
|
|
28
|
-
GitHub MCP) and re-run.
|
|
29
|
-
|
|
30
|
-
### Step 1 — collect traces
|
|
31
|
-
|
|
32
|
-
```
|
|
33
|
-
C: log_dir = .claude/orc/logs
|
|
34
|
-
Found 3 traces:
|
|
35
|
-
• run-orc-feat-auth-090726-144001.txt (lane=orc, 42 lines)
|
|
36
|
-
• run-claude-readme-100726-091401.txt (lane=claude, 5 lines)
|
|
37
|
-
• run-mini-fix-cache-110726-101200.txt (lane=mini, 11 lines)
|
|
38
|
-
Lane comes free from the filename; each has a .jsonl companion.
|
|
39
|
-
Mining all 3. n=3 runs — small-sample edge; weak signals get labeled.
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
The three lanes contribute DIFFERENT verb sets — the miner only gets what each
|
|
43
|
-
lane wrote:
|
|
44
|
-
|
|
45
|
-
`run-orc-feat-auth-090726-144001.txt` (full pipeline — the rich one; every
|
|
46
|
-
non-hook line was written by the trace writer from a phase packet):
|
|
47
|
-
```
|
|
48
|
-
[090726 14:40:02.300] writer SCORE task=T3 score=72 band=[
|
|
49
|
-
[090726 14:40:03.010] writer DISPATCH orc-executor-opus-
|
|
50
|
-
[090726 14:44:12.900] writer VERIFY T3 actual=opus-
|
|
51
|
-
[090726 14:44:13.000] writer VERIFY T5 actual=sonnet-4-6/high ⛔ DOWNGRADE expected=opus-
|
|
52
|
-
[090726 15:02:00.000] reviewer FINDING p0=1 p1=0 p2=3 p3=2
|
|
53
|
-
[090726 15:04:10.000] writer GATE coverage bounce :: T4 unowned (no owning req)
|
|
54
|
-
[090726 15:10:00.000] verifier VERDICT pass :: 8/8 acceptance criteria
|
|
55
|
-
[090726 15:11:30.000] writer OUTCOME task=T3 score=72 band=[
|
|
56
|
-
[090726 15:12:00.000] writer FINISH :: shipped PR #123
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
`run-claude-readme-100726-091401.txt` (single-dispatch lane — ONE end-of-run
|
|
60
|
-
packet; its meaningful signal is the writer's tier honesty):
|
|
61
|
-
```
|
|
62
|
-
[100726 09:14:02.110] writer DISPATCH orc-claude-writer :: refresh expect=opus-4-8/high
|
|
63
|
-
[100726 09:14:02.230] hook SPAWN orc-claude-writer-opus-4-8-high
|
|
64
|
-
[100726 09:15:47.900] hook RETURN
|
|
65
|
-
[100726 09:15:48.010] writer VERIFY writer actual=sonnet-4-6/high ⛔ DOWNGRADE expected=opus-4-8/high
|
|
66
|
-
[100726 09:15:48.120] writer FINISH :: refresh CLAUDE.md v0.0.3
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
### Step 2 — dispatch the miner (never mines itself)
|
|
70
|
-
|
|
71
|
-
```
|
|
72
|
-
C: Spawning orc-retro-sonnet-5-high → claude-sonnet-5 / high
|
|
73
|
-
slice: trace_files=[3 paths] + verb_reference=
|
|
74
|
-
(This lane writes NO run pointer and emits NO markers — tracing the retro
|
|
75
|
-
would pollute the very data it mines.)
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
The miner parses `[stamp] actor VERB :: tail`, skips any line outside the closed
|
|
79
|
-
verb set, and returns EXACTLY the contract:
|
|
80
|
-
|
|
81
|
-
```yaml
|
|
82
|
-
runs_analyzed: 3
|
|
83
|
-
tasks_analyzed: 6
|
|
84
|
-
band_stats:
|
|
85
|
-
- {band: "[
|
|
86
|
-
- {band: "[
|
|
87
|
-
downgrades:
|
|
88
|
-
- {agent: orc-executor-opus-
|
|
89
|
-
- {agent: orc-claude-writer-opus-4-8-high, expected: opus-4-8/high, actual: sonnet-4-6/high, run: orc-claude-100726}
|
|
90
|
-
leaks:
|
|
91
|
-
- {kind: verdict-fail, evidence: "run-orc-feat-auth-090726-144001.txt:L31 (FINDING p0=1)", count: 1}
|
|
92
|
-
- {kind: gate-bounce, evidence: "run-orc-feat-auth-090726-144001.txt:L33 (coverage bounce)", count: 1}
|
|
93
|
-
- {kind: context-gap, evidence: "run-mini-fix-cache-110726-101200.txt:L4,L7", count: 2}
|
|
94
|
-
recommendations:
|
|
95
|
-
- finding: "Both downgrades share a fingerprint: an opus-4-8/high pin ran as sonnet-4-6 — the main session was below Opus when the child spawned."
|
|
96
|
-
suggested_change: "Not a rubric issue — surface to the user: run the pinned lanes from an Opus 4.8 session. No config edit."
|
|
97
|
-
confidence: strong
|
|
98
|
-
- finding: "sonnet-5 band [
|
|
99
|
-
suggested_change: "config.md — tighten the planner's declared-files discipline, or nudge the [
|
|
100
|
-
confidence: weak # n<3 in this band
|
|
101
|
-
actual_model: claude-sonnet-5
|
|
102
|
-
actual_effort: high
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
A recommendation with no evidence line references is DROPPED — the retro obeys
|
|
106
|
-
the same evidence-or-advisory rule it audits.
|
|
107
|
-
|
|
108
|
-
### Step 3 — validate, write the local report, show the summary
|
|
109
|
-
|
|
110
|
-
```
|
|
111
|
-
C: Return validates. Writing report →
|
|
112
|
-
.claude/orc/logs/retro/130726-report.md (retro/ subfolder keeps the top
|
|
113
|
-
level to run traces + their sidecars)
|
|
114
|
-
|
|
115
|
-
── orc-retro summary (n=3 runs, 6 tasks) ──────────────────────────────
|
|
116
|
-
Scoring calibrated? ~ mostly — [
|
|
117
|
-
Workers honest? ⛔ NO — 2 silent downgrades (opus-4-8 → sonnet-4-6)
|
|
118
|
-
Where it leaks? 1 coverage-gate bounce, 1 P0 review finding, 2 context-gaps
|
|
119
|
-
Narrated? 11/12 phases had a writer dispatch (1 execution phase blind)
|
|
120
|
-
Recommendations: 2 (1 strong, 1 weak)
|
|
121
|
-
───────────────────────────────────────────────────────────────────────
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
The report is AI-readable: YAML frontmatter mirroring the return contract
|
|
125
|
-
(`schema: orc-retro/v1`, every array verbatim), then short human sections
|
|
126
|
-
(Verdicts / Per-band table / Recommendations, each with its evidence + n).
|
|
127
|
-
|
|
128
|
-
### Step 4 — deliver upstream (the point of the retro)
|
|
129
|
-
|
|
130
|
-
```
|
|
131
|
-
C: cwd remote ≠ retro_repo → shallow-clone azure-id/orc into a temp dir.
|
|
132
|
-
branch retro/130726 → add retro/incoming/130726-myproject-report.md → push
|
|
133
|
-
gh pr create -R azure-id/orc --title "orc-retro: 130726 — 3 runs, 2 recommendations"
|
|
134
|
-
✅ https://github.com/azure-id/orc/pull/318
|
|
135
|
-
```
|
|
136
|
-
|
|
137
|
-
If push or PR creation fails (e.g. no write access), fall back to
|
|
138
|
-
`gh issue create -R azure-id/orc` with the full report as the body. Either way,
|
|
139
|
-
end by showing the created PR/issue URL. If delivery itself errors after the
|
|
140
|
-
preflight passed, surface the error verbatim and point at the local report copy
|
|
141
|
-
— never claim it was filed.
|
|
142
|
-
|
|
143
|
-
## Early-exit branches
|
|
144
|
-
|
|
145
|
-
No delivery channel (preflight fails):
|
|
146
|
-
```
|
|
147
|
-
U: /orc-retro
|
|
148
|
-
C: gh not authed, no GitHub MCP in this session.
|
|
149
|
-
✋ Retro needs somewhere to file its report. Run `gh auth login` (or connect a
|
|
150
|
-
GitHub MCP), then re-run. Mining nothing until then.
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
No traces yet (no ORC runs have happened):
|
|
154
|
-
```
|
|
155
|
-
U: /orc-retro
|
|
156
|
-
C: Channel OK. log_dir has 0 *.txt files.
|
|
157
|
-
Nothing to mine — no ORC runs have been traced yet. Run some ORC work, then
|
|
158
|
-
come back. Never invents findings from zero data.
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
## What each lane contributes to the mine
|
|
162
|
-
|
|
163
|
-
- **Full `/orc`** — the rich one: `SCORE`/`OUTCOME` (band calibration), GATE
|
|
164
|
-
bounce rates (which role's discipline leaks), `FINDING`/`VERDICT`
|
|
165
|
-
(review/verify health), plus `VERIFY` (tier honesty).
|
|
166
|
-
- **orc-mini** — `DISPATCH`/`VERIFY`/`FINISH` + any `CONTEXT-GAP`; no scoring
|
|
167
|
-
or review markers.
|
|
168
|
-
- **orc-claude** — single-dispatch: `DISPATCH`/`VERIFY`/`FINISH` only. Its one
|
|
169
|
-
contribution is the writer's tier-honesty `VERIFY` — exactly the `⛔ DOWNGRADE`
|
|
170
|
-
in this mock. Before orc-claude wrote its trace at all, that downgrade was
|
|
171
|
-
invisible; now it lands in `downgrades[]`.
|
|
1
|
+
# Worked example — /orc-retro run (mock; orient only, never execute from this)
|
|
2
|
+
|
|
3
|
+
The retro is the READER end of the behavior-trace flywheel: it mines the `.txt`
|
|
4
|
+
traces (logging is permanent — every run writes one), aggregates the CLOSED verb
|
|
5
|
+
set, and files a calibration report UPSTREAM to the ORC repo. It never tunes
|
|
6
|
+
your project, never self-tunes, and writes no trace of its own.
|
|
7
|
+
|
|
8
|
+
## Happy path
|
|
9
|
+
|
|
10
|
+
Setup: `.claude/orc/logs/` holds 3 traces (logging was on for a while). The
|
|
11
|
+
delivery target is the configured `retro_repo` (default `azure-id/orc`). The
|
|
12
|
+
`gh` CLI is installed and authed.
|
|
13
|
+
|
|
14
|
+
```
|
|
15
|
+
U: /orc-retro
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
### Step 0 — P0 preflight (a delivery channel, or no run at all)
|
|
19
|
+
|
|
20
|
+
```
|
|
21
|
+
C: Probing delivery channel…
|
|
22
|
+
gh --version → gh 2.62.0 ✓ gh auth status → logged in as joshua-k ✓
|
|
23
|
+
Channel = gh. Target = retro_repo (azure-id/orc).
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
If BOTH `gh` and a GitHub MCP were missing → STOP here: mine nothing, spawn
|
|
27
|
+
nothing, write no local report. Tell the user to `gh auth login` (or connect a
|
|
28
|
+
GitHub MCP) and re-run.
|
|
29
|
+
|
|
30
|
+
### Step 1 — collect traces
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
C: log_dir = .claude/orc/logs
|
|
34
|
+
Found 3 traces:
|
|
35
|
+
• run-orc-feat-auth-090726-144001.txt (lane=orc, 42 lines)
|
|
36
|
+
• run-claude-readme-100726-091401.txt (lane=claude, 5 lines)
|
|
37
|
+
• run-mini-fix-cache-110726-101200.txt (lane=mini, 11 lines)
|
|
38
|
+
Lane comes free from the filename; each has a .jsonl companion.
|
|
39
|
+
Mining all 3. n=3 runs — small-sample edge; weak signals get labeled.
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
The three lanes contribute DIFFERENT verb sets — the miner only gets what each
|
|
43
|
+
lane wrote:
|
|
44
|
+
|
|
45
|
+
`run-orc-feat-auth-090726-144001.txt` (full pipeline — the rich one; every
|
|
46
|
+
non-hook line was written by the trace writer from a phase packet):
|
|
47
|
+
```
|
|
48
|
+
[090726 14:40:02.300] writer SCORE task=T3 score=72 band=[65,90) model=opus-5 :: multi-file, judgment
|
|
49
|
+
[090726 14:40:03.010] writer DISPATCH orc-executor-opus-5-low :: T3 expect=opus-5/low
|
|
50
|
+
[090726 14:44:12.900] writer VERIFY T3 actual=opus-5/low ✅ MATCH
|
|
51
|
+
[090726 14:44:13.000] writer VERIFY T5 actual=sonnet-4-6/high ⛔ DOWNGRADE expected=opus-5/med
|
|
52
|
+
[090726 15:02:00.000] reviewer FINDING p0=1 p1=0 p2=3 p3=2
|
|
53
|
+
[090726 15:04:10.000] writer GATE coverage bounce :: T4 unowned (no owning req)
|
|
54
|
+
[090726 15:10:00.000] verifier VERDICT pass :: 8/8 acceptance criteria
|
|
55
|
+
[090726 15:11:30.000] writer OUTCOME task=T3 score=72 band=[65,90) model=opus-5 retries=1 requeues=0 needs_context=0 unmet=0
|
|
56
|
+
[090726 15:12:00.000] writer FINISH :: shipped PR #123
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
`run-claude-readme-100726-091401.txt` (single-dispatch lane — ONE end-of-run
|
|
60
|
+
packet; its meaningful signal is the writer's tier honesty):
|
|
61
|
+
```
|
|
62
|
+
[100726 09:14:02.110] writer DISPATCH orc-claude-writer :: refresh expect=opus-4-8/high
|
|
63
|
+
[100726 09:14:02.230] hook SPAWN orc-claude-writer-opus-4-8-high
|
|
64
|
+
[100726 09:15:47.900] hook RETURN
|
|
65
|
+
[100726 09:15:48.010] writer VERIFY writer actual=sonnet-4-6/high ⛔ DOWNGRADE expected=opus-4-8/high
|
|
66
|
+
[100726 09:15:48.120] writer FINISH :: refresh CLAUDE.md v0.0.3
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
### Step 2 — dispatch the miner (never mines itself)
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
C: Spawning orc-retro-sonnet-5-high → claude-sonnet-5 / high
|
|
73
|
+
slice: trace_files=[3 paths] + verb_reference=_shared/phases/trace.md
|
|
74
|
+
(This lane writes NO run pointer and emits NO markers — tracing the retro
|
|
75
|
+
would pollute the very data it mines.)
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
The miner parses `[stamp] actor VERB :: tail`, skips any line outside the closed
|
|
79
|
+
verb set, and returns EXACTLY the contract:
|
|
80
|
+
|
|
81
|
+
```yaml
|
|
82
|
+
runs_analyzed: 3
|
|
83
|
+
tasks_analyzed: 6
|
|
84
|
+
band_stats:
|
|
85
|
+
- {band: "[65,90)", model: opus-5, tasks: 2, avg_retries: 0.5, avg_requeues: 0, avg_needs_context: 0, avg_unmet: 0}
|
|
86
|
+
- {band: "[55,65)", model: sonnet-5, tasks: 3, avg_retries: 1.3, avg_requeues: 0.7, avg_needs_context: 1.0, avg_unmet: 0.3}
|
|
87
|
+
downgrades:
|
|
88
|
+
- {agent: orc-executor-opus-5-low, expected: opus-5/low, actual: sonnet-4-6/high, run: feat-auth-090726}
|
|
89
|
+
- {agent: orc-claude-writer-opus-4-8-high, expected: opus-4-8/high, actual: sonnet-4-6/high, run: orc-claude-100726}
|
|
90
|
+
leaks:
|
|
91
|
+
- {kind: verdict-fail, evidence: "run-orc-feat-auth-090726-144001.txt:L31 (FINDING p0=1)", count: 1}
|
|
92
|
+
- {kind: gate-bounce, evidence: "run-orc-feat-auth-090726-144001.txt:L33 (coverage bounce)", count: 1}
|
|
93
|
+
- {kind: context-gap, evidence: "run-mini-fix-cache-110726-101200.txt:L4,L7", count: 2}
|
|
94
|
+
recommendations:
|
|
95
|
+
- finding: "Both downgrades share a fingerprint: an opus-4-8/high pin ran as sonnet-4-6 — the main session was below Opus when the child spawned."
|
|
96
|
+
suggested_change: "Not a rubric issue — surface to the user: run the pinned lanes from an Opus 4.8 session. No config edit."
|
|
97
|
+
confidence: strong
|
|
98
|
+
- finding: "sonnet-5 band [55,65) shows avg_needs_context=1.0 across 3 tasks — slices may be under-specified."
|
|
99
|
+
suggested_change: "config.md — tighten the planner's declared-files discipline, or nudge the [55,65) band slice detail."
|
|
100
|
+
confidence: weak # n<3 in this band
|
|
101
|
+
actual_model: claude-sonnet-5
|
|
102
|
+
actual_effort: high
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
A recommendation with no evidence line references is DROPPED — the retro obeys
|
|
106
|
+
the same evidence-or-advisory rule it audits.
|
|
107
|
+
|
|
108
|
+
### Step 3 — validate, write the local report, show the summary
|
|
109
|
+
|
|
110
|
+
```
|
|
111
|
+
C: Return validates. Writing report →
|
|
112
|
+
.claude/orc/logs/retro/130726-report.md (retro/ subfolder keeps the top
|
|
113
|
+
level to run traces + their sidecars)
|
|
114
|
+
|
|
115
|
+
── orc-retro summary (n=3 runs, 6 tasks) ──────────────────────────────
|
|
116
|
+
Scoring calibrated? ~ mostly — [65,90) clean; [40,65) shows a context-gap (weak, n=3)
|
|
117
|
+
Workers honest? ⛔ NO — 2 silent downgrades (opus-4-8 → sonnet-4-6)
|
|
118
|
+
Where it leaks? 1 coverage-gate bounce, 1 P0 review finding, 2 context-gaps
|
|
119
|
+
Narrated? 11/12 phases had a writer dispatch (1 execution phase blind)
|
|
120
|
+
Recommendations: 2 (1 strong, 1 weak)
|
|
121
|
+
───────────────────────────────────────────────────────────────────────
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
The report is AI-readable: YAML frontmatter mirroring the return contract
|
|
125
|
+
(`schema: orc-retro/v1`, every array verbatim), then short human sections
|
|
126
|
+
(Verdicts / Per-band table / Recommendations, each with its evidence + n).
|
|
127
|
+
|
|
128
|
+
### Step 4 — deliver upstream (the point of the retro)
|
|
129
|
+
|
|
130
|
+
```
|
|
131
|
+
C: cwd remote ≠ retro_repo → shallow-clone azure-id/orc into a temp dir.
|
|
132
|
+
branch retro/130726 → add retro/incoming/130726-myproject-report.md → push
|
|
133
|
+
gh pr create -R azure-id/orc --title "orc-retro: 130726 — 3 runs, 2 recommendations"
|
|
134
|
+
✅ https://github.com/azure-id/orc/pull/318
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
If push or PR creation fails (e.g. no write access), fall back to
|
|
138
|
+
`gh issue create -R azure-id/orc` with the full report as the body. Either way,
|
|
139
|
+
end by showing the created PR/issue URL. If delivery itself errors after the
|
|
140
|
+
preflight passed, surface the error verbatim and point at the local report copy
|
|
141
|
+
— never claim it was filed.
|
|
142
|
+
|
|
143
|
+
## Early-exit branches
|
|
144
|
+
|
|
145
|
+
No delivery channel (preflight fails):
|
|
146
|
+
```
|
|
147
|
+
U: /orc-retro
|
|
148
|
+
C: gh not authed, no GitHub MCP in this session.
|
|
149
|
+
✋ Retro needs somewhere to file its report. Run `gh auth login` (or connect a
|
|
150
|
+
GitHub MCP), then re-run. Mining nothing until then.
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
No traces yet (no ORC runs have happened):
|
|
154
|
+
```
|
|
155
|
+
U: /orc-retro
|
|
156
|
+
C: Channel OK. log_dir has 0 *.txt files.
|
|
157
|
+
Nothing to mine — no ORC runs have been traced yet. Run some ORC work, then
|
|
158
|
+
come back. Never invents findings from zero data.
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
## What each lane contributes to the mine
|
|
162
|
+
|
|
163
|
+
- **Full `/orc`** — the rich one: `SCORE`/`OUTCOME` (band calibration), GATE
|
|
164
|
+
bounce rates (which role's discipline leaks), `FINDING`/`VERDICT`
|
|
165
|
+
(review/verify health), plus `VERIFY` (tier honesty).
|
|
166
|
+
- **orc-mini** — `DISPATCH`/`VERIFY`/`FINISH` + any `CONTEXT-GAP`; no scoring
|
|
167
|
+
or review markers.
|
|
168
|
+
- **orc-claude** — single-dispatch: `DISPATCH`/`VERIFY`/`FINISH` only. Its one
|
|
169
|
+
contribution is the writer's tier-honesty `VERIFY` — exactly the `⛔ DOWNGRADE`
|
|
170
|
+
in this mock. Before orc-claude wrote its trace at all, that downgrade was
|
|
171
|
+
invisible; now it lands in `downgrades[]`.
|