runbook-tutorials/workplans/RBT-WP-0002-runbook-pack-spec-and-validator.md
tegwick 535836054a
All checks were successful
Work Records / validate (push) Successful in 21s
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 17s
Add runbook pack spec, validator, legacy launcher, and workplans RBT-WP-0002..0006
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
2026-09-29 00:24:05 +02:00

2 KiB

id type title domain repo status flavor owner topic_slug created updated
RBT-WP-0002 workplan Runbook pack specification and validator infotech runbook-tutorials active implementation claude stack 2026-09-29 2026-09-29

Goal

Define what a runbook pack is, so packs can live in the repos that own them and the engine can load, validate and present them. The pack spec is the contract between this repo and every pack owner.

Publish the pack specification

id: RBT-WP-0002-T01
status: done
priority: high

docs/pack-spec.md v0.1: manifest fields, parameters (never secret), steps with mandatory verification, rollback for state-changing steps, exercise status per the attended-procedure standard, and the legacy-command engine.

Encode the specification as a JSON Schema

id: RBT-WP-0002-T02
status: done
priority: high

schema/runbook-pack.schema.json with conditional requirements per engine.

Implement discovery, validation and rendering

id: RBT-WP-0002-T03
status: done
priority: high

rtut/pack.py and the CLI (python -m rtut list|validate|show|render), with semantic checks the schema cannot express (placeholders, duplicates, rollback, secret markers, parameter defaults) and 16 tests. Parameter rendering rejects unsafe characters.

Review the specification with the operator and freeze v0.1

id: RBT-WP-0002-T04
status: todo
priority: high

Walk through the spec with Bernd against the real NetKingdom packs and the legacy console. Open questions: step branching and conditional steps; whether verify may run a command automatically; how packs declare dependencies on other packs; signed packs. Record decisions and freeze runbook-pack/v0.1, or raise v0.2 with a migration note.

Acceptance Criteria

  • Every pack in this repo and in net-kingdom validates.
  • Invalid packs fail with a clear error; tests cover each rule.
  • The spec names how the pre-existing console stays working.