Adopt spec v0.2: schema, semantic validator, operating modes; workplans updated
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Assistant: claude-code Assistant-Model: sonnet Assistant-Process: 295952@bnt-lap001 Assistant-Session: e93f64ad-516c-46eb-9666-aad8d300c477
This commit is contained in:
parent
b6868a3a58
commit
79996ab249
15 changed files with 1090 additions and 64 deletions
|
|
@ -61,27 +61,24 @@ unsafe characters.
|
|||
|
||||
```task
|
||||
id: RBT-WP-0002-T04
|
||||
status: progress
|
||||
status: done
|
||||
priority: high
|
||||
```
|
||||
|
||||
`docs/pack-spec-v0.2-proposal.md` (stages and hierarchy, dependency graph with a
|
||||
`docs/pack-spec-v0.2.md` (stages and hierarchy, dependency graph with a
|
||||
recommended serialization, datapoints with `nil/set/err/ok`, QA gates tied to stages
|
||||
and goals, actors and roles, artefacts, reversibility-based confirmation, framing).
|
||||
Review with Bernd, resolve the five open questions, and decide: freeze v0.1 as
|
||||
shipped and adopt v0.2. Supersedes the earlier plan to freeze v0.1 alone.
|
||||
Done 2026-09-29: Bernd answered the five questions; v0.2 adopted as `docs/pack-spec-v0.2.md` (with operating modes, overrides, deviations); v0.1 stays as shipped. Supersedes the earlier plan to freeze v0.1 alone.
|
||||
|
||||
## Write the v0.2 schema and validator
|
||||
|
||||
```task
|
||||
id: RBT-WP-0002-T05
|
||||
status: wait
|
||||
status: done
|
||||
priority: high
|
||||
```
|
||||
|
||||
After T04: `schema/runbook-pack-v0.2.schema.json`, semantic checks (acyclic
|
||||
requires, gate and datapoint references resolve, one stage per gate, no secret
|
||||
datapoints), v0.1 packs still load, tests.
|
||||
Done 2026-09-29: `schema/runbook-pack-v0.2.schema.json` and `rtut/v2.py` (acyclic requires, references resolve, nesting depth 3, irreversible steps need a confirm phrase, no secret datapoints). v0.1 packs still load. 61 tests including one negative test per rule.
|
||||
|
||||
## Port the in-repo and NetKingdom packs
|
||||
|
||||
|
|
@ -106,10 +103,9 @@ state_hub_task_id: "6740457f-81a7-5761-a768-b9b0faee7552"
|
|||
|
||||
`runbooks/showcase-lighthouse/` is a harmless interactive-fiction runbook (poem, story,
|
||||
scratch logbook under /tmp/rtut-*). `pack.yaml` (v0.1) runs today and is the test bed for
|
||||
UI refinement. `pack.v0.2.draft.yaml` expresses the same story in the proposed v0.2 model
|
||||
UI refinement. `pack.v0.2.yaml` expresses the same story in the proposed v0.2 model
|
||||
(stages, parallel steps, alternatives, gates, actors, datapoints, artefacts, irreversible
|
||||
confirmation). The draft is checked for internal consistency by tests. When v0.2 is adopted
|
||||
the validator must accept it unchanged, or the proposal changes.
|
||||
confirmation). It now validates against the v0.2 schema and semantic checks. It cannot be run until RBT-WP-0007 lands.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ priority: high
|
|||
state_hub_task_id: "8309d778-3688-5cb3-bb34-18f87b66dbf3"
|
||||
```
|
||||
|
||||
Done 2026-09-29 with Bernd. Findings and consequences are in `docs/ux-review-2026-09-29.md`; the model they imply is proposed in `docs/pack-spec-v0.2-proposal.md`.
|
||||
Done 2026-09-29 with Bernd. Findings and consequences are in `docs/ux-review-2026-09-29.md`; the model they imply is proposed in `docs/pack-spec-v0.2.md`.
|
||||
|
||||
## Build the step view
|
||||
|
||||
|
|
@ -146,6 +146,18 @@ state_hub_task_id: "ddbca5e1-dcf6-5c2a-b3e2-497d2a82ba23"
|
|||
Confirm button for reversible steps, typed phrase for irreversible ones, per the v0.2
|
||||
`reversible` field.
|
||||
|
||||
## Mode switch and override dialog
|
||||
|
||||
```task
|
||||
id: RBT-WP-0004-T11
|
||||
status: wait
|
||||
priority: high
|
||||
```
|
||||
|
||||
Depends on RBT-WP-0007 T06-T07. Choose manual or autopilot per run (with timeout and
|
||||
push-through controls). In manual mode, an override dialog lists unmet preconditions and
|
||||
the downstream risk before continuing; deviations show in the overview.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- Bernd can complete the SSH tutorial pack in the UI without pasting outputs to an agent.
|
||||
|
|
|
|||
|
|
@ -56,3 +56,15 @@ state_hub_task_id: "ce82d1ae-76a3-59c8-9d26-4813e8dc9745"
|
|||
Operator feedback on a step feeds an assistant that knows the runbook and may
|
||||
diagnose the deployment (read-only access first), giving a feedback, retry,
|
||||
feedback, confirm loop. Needs decisions on access, identity and what is sent where.
|
||||
|
||||
## Dependencies between runbooks
|
||||
|
||||
```task
|
||||
id: RBT-WP-0006-T04
|
||||
status: wait
|
||||
priority: low
|
||||
```
|
||||
|
||||
Packs declare `requires_packs` with a required result (exercised, or a named gate
|
||||
passed), instead of deeper nesting (v0.2 caps nesting at three levels). Needs a decision
|
||||
on how a pack in another repo is identified and trusted.
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ a dimension view and an overview from the same run data.
|
|||
|
||||
```task
|
||||
id: RBT-WP-0007-T01
|
||||
status: wait
|
||||
status: todo
|
||||
priority: high
|
||||
state_hub_task_id: "55dd86f9-5f89-59a2-8a0a-85fbedd95483"
|
||||
```
|
||||
|
|
@ -35,7 +35,7 @@ canonical order; explain what a blocked item waits for.
|
|||
|
||||
```task
|
||||
id: RBT-WP-0007-T02
|
||||
status: wait
|
||||
status: todo
|
||||
priority: high
|
||||
state_hub_task_id: "571e8685-6eeb-54ce-bb1a-4616ea951f81"
|
||||
```
|
||||
|
|
@ -47,7 +47,7 @@ how `ok` is reached (check or recorded manual confirmation).
|
|||
|
||||
```task
|
||||
id: RBT-WP-0007-T03
|
||||
status: wait
|
||||
status: todo
|
||||
priority: high
|
||||
state_hub_task_id: "707cca55-24a1-5355-8722-10740c5a2862"
|
||||
```
|
||||
|
|
@ -59,7 +59,7 @@ exit, record waivers with who, when and why.
|
|||
|
||||
```task
|
||||
id: RBT-WP-0007-T04
|
||||
status: wait
|
||||
status: todo
|
||||
priority: medium
|
||||
state_hub_task_id: "73307bb9-2739-563b-92c7-a034a360b444"
|
||||
```
|
||||
|
|
@ -70,7 +70,7 @@ state_hub_task_id: "73307bb9-2739-563b-92c7-a034a360b444"
|
|||
|
||||
```task
|
||||
id: RBT-WP-0007-T05
|
||||
status: wait
|
||||
status: todo
|
||||
priority: medium
|
||||
state_hub_task_id: "0933ff4a-8478-50d9-aa99-991948bc2379"
|
||||
```
|
||||
|
|
@ -78,6 +78,33 @@ state_hub_task_id: "0933ff4a-8478-50d9-aa99-991948bc2379"
|
|||
Derive confirm button versus typed phrase from `reversible`; enforce the phrase in the
|
||||
engine so no renderer can skip it.
|
||||
|
||||
## Operating modes: manual and autopilot
|
||||
|
||||
```task
|
||||
id: RBT-WP-0007-T06
|
||||
status: todo
|
||||
priority: high
|
||||
```
|
||||
|
||||
A run has a mode (`docs/pack-spec-v0.2.md`). Manual: the operator confirms; every
|
||||
check, gate and precondition is shown with its state. Autopilot: the engine confirms
|
||||
when all preconditions are met. `autopilot: manual-only` steps and irreversible steps
|
||||
are never auto-confirmed without a recorded pre-authorization.
|
||||
|
||||
## Overrides, waivers, push-through and the deviation record
|
||||
|
||||
```task
|
||||
id: RBT-WP-0007-T07
|
||||
status: todo
|
||||
priority: high
|
||||
```
|
||||
|
||||
Override in manual mode when preconditions are unmet: name the unmet items and the
|
||||
declared `downstream_risk`, require explicit confirmation and a reason, record a
|
||||
deviation. Waivers only where a gate declares `waivable`. Autopilot timeouts
|
||||
(`stop` or `push-through`) record a deviation and, for push-through, move on. A run with
|
||||
any deviation is flagged and can never exercise a pack.
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- The old console's stages, gates and datapoints can be expressed and computed
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue