orizu 0.5.25 → 0.5.26

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.
@@ -2,28 +2,24 @@
2
2
 
3
3
  > **Core idea:** You can't improve what you can't measure — but measuring the wrong thing is worse than not measuring at all. This doc walks from raw failure logs to a continuously-running evaluation loop, and shows how Orizu operationalizes each step.
4
4
 
5
- The operational loop starts at **J3 — Build the dataset** and branches on the
6
- approved ground-truth source:
7
-
8
- ```
9
- approved golden ground truth covers the scenario classes: J3 → J5
10
- missing ground truth needs human labels: J3 → J4 → J5
11
- │
12
- ▼
13
- J6 → new traces → J3
5
+ The operational method is organized by the installed skill's flows:
6
+
7
+ ```text
8
+ Onboard → First win ───────────────→ Promote
9
+ ├─ complete approved ground truth → judges → optimization run
10
+ ├─ partial approved coverage → annotate uncovered ground truth → judges → optimization run
11
+ └─ no approved coverage → annotation → judges → optimization run
12
+ │
13
+ └─ after Promote: Recurse, Triage, or Expand by user interest
14
14
  ```
15
15
 
16
- In the diagram, **J4 — Ground truth via annotation (conditional)** is taken only
17
- for missing labels, **J5 — Build & validate judges** consumes the approved
18
- ground truth, and **J6 — Optimize & promote** feeds new traces into the next J3
19
- dataset version. Approved golden ground truth therefore goes directly from J3
20
- to J5 instead of passing through annotation.
16
+ First win builds the evidence and ends at a completed optimization run. Promote owns reporting, validation, and the human promotion decision. Recurse turns newly deployed traces into a later same-surface cycle; Triage starts from an incident and closes its eval gap before a fix; Expand chooses and plans another surface. Onboard owns pre-data inventory and plan ratification.
21
17
 
22
- The CLI covers the full operational loop. Start instruction sets with `orizu instructions`: one instruction set per agent or LLM experience, one profile per model config, and components owned by that profile. Human annotation still happens through apps/tasks when J4 is needed, while judge/scorer logic and optimization execution run locally and report back through the instruction control plane. Follow the applicable branch and require its prior journey step's exit criterion before continuing.
18
+ The CLI covers this operational loop. Start instruction sets with `orizu instructions`: one instruction set per agent or LLM experience, one profile per model config, and components owned by that profile. Human annotation happens through apps/tasks only for required ground truth, while judge/scorer logic and optimization execution run locally and report back through the instruction control plane. The active flow file owns ordering and its exit criterion; this primer explains why the stages exist rather than replacing that procedure.
23
19
 
24
20
  An instruction-set manifest carries its `name`, optional `description`, fixed, ordered `shape`, and component values. The set's slug is its stable CLI reference even when its display name changes. Profiles have their own component values; components are never shared between profiles or sets. The set-wide default serves model configs without a production profile version.
25
21
 
26
- Start by inspecting the set, then follow the [Authority map](../SKILL.md#authority-map)
22
+ Start by inspecting the set, then follow the [Authority map](authority-map.md)
27
23
  for mutation custody before syncing through the same surface:
28
24
 
29
25
  ```bash
@@ -59,7 +55,7 @@ The most common mistake teams make is jumping straight to evals before they unde
59
55
 
60
56
  ---
61
57
 
62
- ## J3 detail: Upload — gather diverse traces
58
+ ## First win detail: Upload — gather diverse traces
63
59
 
64
60
  ### Why
65
61
 
@@ -105,7 +101,7 @@ Full surface: `cli-reference.md`.
105
101
 
106
102
  ---
107
103
 
108
- ## Conditional J4 detail: Annotate — binary labels per failure mode
104
+ ## Conditional First win detail: Annotate — binary labels per failure mode
109
105
 
110
106
  ### Why
111
107
 
@@ -158,7 +154,7 @@ Authoring the labeler app — contract, design principles, and common patterns:
158
154
 
159
155
  ---
160
156
 
161
- ## J5 detail: Judge — turn labels into automated evaluators
157
+ ## First win detail: Judge — turn labels into automated evaluators
162
158
 
163
159
  ### Why
164
160
 
@@ -191,7 +187,7 @@ Control-plane commands: `prompt-control-plane.md`. Detailed alignment-first walk
191
187
 
192
188
  ---
193
189
 
194
- ## J6 detail: Optimize — hill-climb against validated judges
190
+ ## First win detail: Optimize — hill-climb against validated judges
195
191
 
196
192
  ### Why
197
193
 
@@ -206,8 +202,8 @@ Done locally, reported to Orizu:
206
202
  1. Package the candidate execution as a runner, or use the customer's existing local app wrapper.
207
203
  2. Register validated scorers.
208
204
  3. Run the bundled Orizu GEPA-style text optimizer, or a custom optimizer against the scorer set.
209
- 4. Stream optimization events to Orizu, promote accepted candidates into the target instruction-set profile, and submit comparable scores.
210
- 5. Diff before/after on the eval suite. Ship if it holds; new traces feed back to J3.
205
+ 4. Stream optimization events to Orizu and complete the run with a selected candidate or a recorded no-valid-candidate outcome.
206
+ 5. Stop First win at that completed run. Route to Promote for the report, supported Final-held-out comparison, validation evidence, and human ship, gather-more-evidence, or do-not-promote decision. After Promote, use Recurse for a human-agreed cadence that turns traces from the currently deployed version into a new immutable dataset version.
211
207
 
212
208
  Control-plane commands: `prompt-control-plane.md`. Detailed walkthrough — GEPA mechanics, optional DSPy context for customers already using it, and before/after comparison: `optimization-with-gepa.md`.
213
209
 
@@ -1,6 +1,6 @@
1
1
  # Instruction Control Plane
2
2
 
3
- Use this reference for the Phase 0 instruction, judge, scorer, runner, score, run, and optimization event control plane. Follow the [Authority map](../SKILL.md#authority-map) before executing its command sequences.
3
+ Use this reference for the Phase 0 instruction, judge, scorer, runner, score, run, and optimization event control plane. Follow the [Authority map](authority-map.md) before executing its command sequences.
4
4
 
5
5
  ## Contents
6
6
 
@@ -23,7 +23,7 @@ Use this reference for the Phase 0 instruction, judge, scorer, runner, score, ru
23
23
  8. After `run-gepa`, inspect `logs/<optimization_run_id>` first; it is the complete local trace for coding-agent analysis.
24
24
  9. Use `orizu optimizations export <run-id> --out <run-id>.optimization.json` when the local log is missing or the run happened elsewhere.
25
25
  10. Write and attach a markdown report for finished, failed, or cancelled runs; use `optimization-reports.md` for structure and diagnostic guidance.
26
- 11. Follow the [Authority map](../SKILL.md#authority-map). Simpler one-shot path: after the human accepts the report, a human curator runs `orizu optimizations promote <run-id> --candidate <id> --label production --project <team/project>`, materializing and labeling once. Equivalent two-stage path: an agent runs `orizu optimizations promote <run-id> --candidate <id> --project <team/project>` after acceptance. A human curator re-runs the same promotion as `orizu optimizations promote <run-id> --candidate <id> --label production --project <team/project>`. The idempotent finalizer finds the exact existing materialized version by run and candidate provenance, moves production, and creates no duplicate profile version or candidate-promoted event.
26
+ 11. Follow the [Authority map](authority-map.md). Simpler one-shot path: after the human accepts the report, a human curator runs `orizu optimizations promote <run-id> --candidate <id> --label production --project <team/project>`, materializing and labeling once. Equivalent two-stage path: an agent runs `orizu optimizations promote <run-id> --candidate <id> --project <team/project>` after acceptance. A human curator re-runs the same promotion as `orizu optimizations promote <run-id> --candidate <id> --label production --project <team/project>`. The idempotent finalizer finds the exact existing materialized version by run and candidate provenance, moves production, and creates no duplicate profile version or candidate-promoted event.
27
27
  12. For custom optimizers, start an optimization run before local execution, then stream events into that run.
28
28
  13. Use bare HTTP for optimization events; use `orizu log` only as a shell fallback.
29
29
  14. Promote only accepted candidates; rejected candidates stay in optimization events.
@@ -35,7 +35,7 @@ Customer model-provider secrets stay local. Do not upload Anthropic/OpenAI/etc.
35
35
  Work within the fixed, ordered component shape and model-config profiles defined
36
36
  for instruction sets in Vocabulary. Existing prompts appear as one-component
37
37
  sets. Inspect or write them with the customer-facing `orizu instructions`
38
- namespace. Follow the [Authority map](../SKILL.md#authority-map) for mutation
38
+ namespace. Follow the [Authority map](authority-map.md) for mutation
39
39
  custody before copying a command:
40
40
 
41
41
  ```bash
@@ -560,7 +560,7 @@ orizu --local scorers list --project <team>/<project>
560
560
  orizu --local scorers detail <scorer-id-or-name> --project <team>/<project> --json
561
561
  ```
562
562
 
563
- Production scorer labels are pointer moves. The agent prepares the scorer name, version id, and evidence. After human acceptance, follow the [Authority map](../SKILL.md#authority-map): a human curator runs `orizu --local scorers labels set hip-note-judge-score production --version <scorer-version-id> --project <team>/<project> --json`.
563
+ Production scorer labels are pointer moves. The agent prepares the scorer name, version id, and evidence. After human acceptance, follow the [Authority map](authority-map.md): a human curator runs `orizu --local scorers labels set hip-note-judge-score production --version <scorer-version-id> --project <team>/<project> --json`.
564
564
 
565
565
  Use scorer versions directly with the runner contract:
566
566
 
@@ -1054,7 +1054,7 @@ JUDGE_VERSION_ID="$(orizu --local judges push ./judge --project hip/judge-optimi
1054
1054
  SCORER_VERSION_ID="$(orizu --local scorers register --project hip/judge-optimization --name hip-note-judge-score --manifest ./scorer.manifest.json --prompt-version "$JUDGE_VERSION_ID" --runner-version "$RUNNER_VERSION_ID" --json | jq -r .scorer_version_id)"
1055
1055
  ```
1056
1056
 
1057
- Human curator hand-off through the [Authority map](../SKILL.md#authority-map) (do not run as the agent): no standalone runner-label command exists, so the human first runs `orizu --local runners pull hip-note-judge-runner --project hip/judge-optimization --version "$RUNNER_VERSION_ID" --out ./runner-default-handoff`, leaves that fresh exact-version directory unchanged, then runs `orizu --local runners push ./runner-default-handoff --project hip/judge-optimization --name hip-note-judge-runner --label default --json`. The human curator then runs `orizu --local scorers labels set hip-note-judge-score production --version "$SCORER_VERSION_ID" --project hip/judge-optimization --json`.
1057
+ Human curator hand-off through the [Authority map](authority-map.md) (do not run as the agent): no standalone runner-label command exists, so the human first runs `orizu --local runners pull hip-note-judge-runner --project hip/judge-optimization --version "$RUNNER_VERSION_ID" --out ./runner-default-handoff`, leaves that fresh exact-version directory unchanged, then runs `orizu --local runners push ./runner-default-handoff --project hip/judge-optimization --name hip-note-judge-runner --label default --json`. The human curator then runs `orizu --local scorers labels set hip-note-judge-score production --version "$SCORER_VERSION_ID" --project hip/judge-optimization --json`.
1058
1058
  The agent continues with an unlabeled optimizer version:
1059
1059
 
1060
1060
  ```bash
@@ -0,0 +1,27 @@
1
+ # Vocabulary
2
+
3
+ Use these terms exactly across Orizu's method, skill, references, and reports.
4
+
5
+ ## Workflow vocabulary
6
+
7
+ - **Evals-first** — understand observed failures, build and validate evaluations, then optimize the LLM application against that evidence.
8
+ - **Exit criterion** — the checkable evidence required before leaving one flow or ordered stage for the next.
9
+ - **Human-only** — an action the agent prepares with exact evidence and an authorized human executes.
10
+ - **Local surface** — a CLI action executed under the user's token; the authority map, not the surface, determines whether an agent or human executes it.
11
+ - **Hosted session** — a platform-managed coding-agent session authenticated with session credentials and bound to its signed team and project scope.
12
+ - **Instruction set** — the customer-facing identity for one agent or LLM experience, with a fixed ordered component shape and model-config profiles that own component values.
13
+ - **Judge trust bar** — the user-agreed metric thresholds a judge must clear for a named downstream decision and failure mode.
14
+ - **Decision class** — the judge's downstream use: gatekeeper, optimization signal, or triage / monitoring.
15
+ - **Scenario class** — a named, meaningful family of cases from the ratified improvement plan whose coverage and results are tracked separately.
16
+ - **Final-held-out** — the application partition reserved for Promote's single seed-versus-selected-candidate comparison.
17
+
18
+ ## Method vocabulary
19
+
20
+ - **Flow** — one named, top-level path through the Orizu method that an agent (or human) works end to end: a defined entry condition ("reach for X when Y"), ordered steps, and an exit criterion.
21
+ - **Quick win** — the recommended starting point for a repo new to Orizu: the instruction surface with the shortest credible path to a **measured, promotable model improvement**.
22
+ - **Onboard (flow)** — the single on-ramp: in a repo Orizu hasn't touched, inventory where the prompts/skills/instructions live, lay it out, and recommend the quick win.
23
+ - **First win (flow)** — the first pass through the loop on the recommended surface: curate the dataset, gather ground truth (annotation only when approved labels don't exist), build and validate judges, hill-climb to a completed optimization run.
24
+ - **Promote (flow)** — the actual customer win: report the run, support the human's promotion decision (learnings, tradeoffs, regressions), and guide validation (blind side-by-sides, replay on past traffic, staged rollout).
25
+ - **Recurse (flow)** — post-win, cadence-driven: fresh traces become a new dataset version and the loop reruns on the same surface on an agreed cadence.
26
+ - **Triage (flow)** — post-win, incident-driven: a reported issue leads to trace analysis and the eval-gap decision — does an existing eval catch it, does an eval need fixing, is an eval missing, or is the reported behavior expected — before any optimizing or fixing.
27
+ - **Expand (flow)** — post-win, appetite-driven: pick the next instruction surface from Onboard's inventory by the same quick-win criterion and run the loop there.