@osovv/vv-opencode 1.4.2 → 1.4.3-rc.1

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.
Files changed (57) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +20 -6
  3. package/dist/lib/orchestration.js +12 -3
  4. package/dist/lib/orchestration.js.map +1 -1
  5. package/dist/lib/spec-lint.d.ts +2 -64
  6. package/dist/lib/spec-lint.js +47 -45
  7. package/dist/lib/spec-lint.js.map +1 -1
  8. package/dist/lib/workflow-contract.d.ts +277 -0
  9. package/dist/lib/workflow-contract.js +636 -0
  10. package/dist/lib/workflow-contract.js.map +1 -0
  11. package/dist/plugins/system-context-injection/index.js +15 -7
  12. package/dist/plugins/system-context-injection/index.js.map +1 -1
  13. package/dist/plugins/workflow/authority.d.ts +99 -0
  14. package/dist/plugins/workflow/authority.js +435 -0
  15. package/dist/plugins/workflow/authority.js.map +1 -0
  16. package/dist/plugins/workflow/checkpoint-io.d.ts +10 -1
  17. package/dist/plugins/workflow/checkpoint-io.js +22 -3
  18. package/dist/plugins/workflow/checkpoint-io.js.map +1 -1
  19. package/dist/plugins/workflow/checkpoints.d.ts +58 -1
  20. package/dist/plugins/workflow/checkpoints.js +362 -34
  21. package/dist/plugins/workflow/checkpoints.js.map +1 -1
  22. package/dist/plugins/workflow/delegated.d.ts +150 -2
  23. package/dist/plugins/workflow/delegated.js +551 -15
  24. package/dist/plugins/workflow/delegated.js.map +1 -1
  25. package/dist/plugins/workflow/execution.d.ts +361 -0
  26. package/dist/plugins/workflow/execution.js +1807 -0
  27. package/dist/plugins/workflow/execution.js.map +1 -0
  28. package/dist/plugins/workflow/index.js +539 -80
  29. package/dist/plugins/workflow/index.js.map +1 -1
  30. package/dist/plugins/workflow/persistence.d.ts +18 -4
  31. package/dist/plugins/workflow/persistence.js +439 -42
  32. package/dist/plugins/workflow/persistence.js.map +1 -1
  33. package/dist/plugins/workflow/repair.d.ts +2 -0
  34. package/dist/plugins/workflow/repair.js +16 -8
  35. package/dist/plugins/workflow/repair.js.map +1 -1
  36. package/dist/plugins/workflow/snapshots.js +3 -3
  37. package/dist/plugins/workflow/snapshots.js.map +1 -1
  38. package/dist/plugins/workflow/state.d.ts +13 -0
  39. package/dist/plugins/workflow/state.js +37 -7
  40. package/dist/plugins/workflow/state.js.map +1 -1
  41. package/dist/plugins/workflow/system-instruction.md +15 -1
  42. package/dist/plugins/workflow/tooling.d.ts +81 -6
  43. package/dist/plugins/workflow/tooling.js +956 -23
  44. package/dist/plugins/workflow/tooling.js.map +1 -1
  45. package/dist/plugins/workflow/transactions.d.ts +54 -0
  46. package/dist/plugins/workflow/transactions.js +147 -0
  47. package/dist/plugins/workflow/transactions.js.map +1 -0
  48. package/package.json +1 -1
  49. package/schemas/vvoc/v3.json +1 -1
  50. package/templates/agents/vv-code-reviewer.md +1 -0
  51. package/templates/agents/vv-controller.md +26 -13
  52. package/templates/agents/vv-implementer.md +1 -0
  53. package/templates/agents/vv-spec-reviewer.md +1 -0
  54. package/templates/skills/vv-execute/SKILL.md +6 -5
  55. package/templates/skills/vv-plan/SKILL.md +1 -1
  56. package/templates/skills/vv-review/SKILL.md +1 -0
  57. package/templates/skills/vv-spec/SKILL.md +2 -2
package/CHANGELOG.md CHANGED
@@ -1,3 +1,23 @@
1
+ ## <small>1.4.3-rc.1 (2026-09-12)</small>
2
+
3
+ ### Summary
4
+
5
+ This release makes delegated workflow execution independent of native plan documents and hardens recovery authority. Requirements can now come from a native spec/plan package, a provided plan reference, or the current conversation through one common execution contract, with generic registration and checkpoints exposed through work_item_open and work_checkpoint actions such as start, review, bind, complete, and amend, so a small request no longer needs spec/plan files or a multi-stage ceremony. Required reviews are exactly those declared by the source, the user, or an explicit controller decision, with a no-review result honestly reported as controller-accepted rather than independently reviewed, and assigned reviewers are enforced mechanically against the current revision. A bounded advance authority with a shared three-unit reserve lets an explicit user instruction fund a finite continuation after ordinary allowances are exhausted, without weakening post-stop validation, refilling on replay, or turning authority into acceptance or a passing review. The release also fixes a generic-review resume wedge by giving each checkpoint generation a fresh identity, settles reviewer NEEDS_CONTEXT as a cost-free recoverable stop, validates and reserves advance units before mutating state, binds authority recovery to the owning execution, rejects asserted reviewer statuses, and adds a whole-store fingerprint guard so staged transactions never publish over concurrent live mutations. Workflow state now persists at snapshot version 4, preserving v1/v2/v3 recovery and rejected-report history, while documentation and instructions scope source-independent execution claims to the implemented surface. Runtime plugin upgrades still require an OpenCode restart.
6
+
7
+ * chore(grace): apply and archive C-WORKFLOW-PLAN-INDEPENDENCE ([190ee03](https://github.com/osovv/vv-opencode/commit/190ee03))
8
+ * fix(workflow): close generic-review resume wedge and harden authority recovery ([4838f2b](https://github.com/osovv/vv-opencode/commit/4838f2b))
9
+ * feat(workflow): add source-independent execution contract and bounded advance authority ([8059770](https://github.com/osovv/vv-opencode/commit/8059770))
10
+ * feat(workflow): expose source-independent execution and advance authority through workflow tools ([4ed5e2c](https://github.com/osovv/vv-opencode/commit/4ed5e2c))
11
+ * docs(workflow): scope source-independent execution claims to the implemented domain surface ([fce2342](https://github.com/osovv/vv-opencode/commit/fce2342))
12
+
13
+ ## <small>1.4.3-rc.0 (2026-09-12)</small>
14
+
15
+ ### Summary
16
+
17
+ This release makes delegated workflow execution recoverable instead of dead-ending: tasks and checkpoint review cycles that stop or exhaust their ordinary budgets can now resume through a bounded, explicitly recorded recovery operation, with one autonomous grant per target and any further unit requiring a fresh root-user message that the runtime validates for role, session identity, and timing. A worker whose report stays protocol-invalid is now settled truthfully as a rejected report with bounded diagnostics rather than appearing permanently in flight, while observed hard stops are preserved and never converted into success. Persistence advances to version 3, adding recovery and rejected-report records while conservatively loading older snapshots, and recovery changes are written durably before new launch permissions appear. Managed controller, worker, and reviewer prompts were also recalibrated to distinguish stops, recovery, and completion, reserve handoff files for genuine transfers, and scope re-reviews to prior findings and the fix's effects — so users get clearer guidance and fewer unnecessary dead ends without weakening mandatory review.
18
+
19
+ * feat(workflow): add bounded recovery, report-rejection settlement, and calibrated prompts ([f5fa9d3](https://github.com/osovv/vv-opencode/commit/f5fa9d3))
20
+
1
21
  ## <small>1.4.2 (2026-09-11)</small>
2
22
 
3
23
  ### Summary
package/README.md CHANGED
@@ -408,7 +408,7 @@ Four concrete policies control how vv-controller delegates work at runtime:
408
408
  - `single-session` — vv-controller performs exploration, investigation, planning, implementation, and verification directly. Independent reviewer subagents remain available when the user explicitly requests review or when a materially risky completed change benefits from independent cross-model evaluation.
409
409
  - `balanced` — vv-controller keeps architecture, critical reading, and final synthesis in the primary session and may selectively delegate bounded search, investigation, mechanical implementation, or review when that is the lightest safe route. Delegation is optional, not mechanically mandatory.
410
410
  - `orchestrated` — vv-controller uses the full tracked implementer/reviewer workflow with explicit work items, required reviewers, bounded rounds, and hard stops.
411
- - `delegated` — implementation is delegated to workers while the primary session keeps architecture, important code reading, task contracts, explicit acceptance, and final synthesis. Source edits, tests, config changes, formatting, lint fixes, and reviewer-requested fixes — including small mechanical ones — go to workers through bounded task packets. Independent review happens at declared plan checkpoints instead of after every task; `BLOCKED` and `NEEDS_CONTEXT` remain hard stops.
411
+ - `delegated` — implementation is delegated to workers while the primary session keeps architecture, important code reading, task contracts, explicit acceptance, and final synthesis. Source edits, tests, config changes, formatting, lint fixes, and reviewer-requested fixes — including small mechanical ones — go to workers through bounded task packets. Independent review happens at declared plan checkpoints instead of after every task; `BLOCKED` and `NEEDS_CONTEXT` remain hard stops, and stopped or exhausted work resumes only through recorded bounded recovery.
412
412
 
413
413
  Pick a profile explicitly or let a built-in preset select one:
414
414
 
@@ -464,20 +464,34 @@ Delegated tasks are opened with `"mode": "delegated"`, an explicitly empty `requ
464
464
  - `accept` (with rationale and evidence references) records controller acceptance and reaches `ready_to_close`. Acceptance is recorded distinctly from an independent reviewer `PASS`.
465
465
  - `request_changes` returns the task to the implementation path. Controller-directed retries are bounded to an initial attempt plus one correction; re-deciding or reopening never resets that budget. `DONE_WITH_CONCERNS` requires an explicit `concernsDisposition`.
466
466
  - `rework` reopens an accepted task only when a failed checkpoint from the same registered run covers it, preserving acceptance history and granting exactly one additional attempt.
467
+ - `recover` resumes a stopped or exhausted unaccepted task without resetting history. Recovery targets the latest terminal attempt and requires an explicit `diagnosis`, a `changedCondition` (the changed condition or approach), `verification` references, and a stable `recoveryId`. When ordinary budget remains, recovery simply returns a stopped item to the launch gate; when an extra attempt is necessary, it grants exactly one. The first grant per target is the single autonomous allowance; every further unit requires a fresh root-user message referenced by `userMessageId`, which the runtime validates for role, owning-session identity, message identity, and a timestamp at or after the stop — never for its wording — and each message authorizes at most one unit per target. A successful recovery authorization only makes the next bounded attempt possible: it is not a successful implementation, not acceptance, and never satisfies a reviewer.
468
+
469
+ Worker stops stay hard stops for ordinary dispatch: a `BLOCKED` or `NEEDS_CONTEXT` result is never re-launched directly, and its recorded outcome and explanation remain historical facts. The same applies to an exhausted budget — an ordinary third launch is refused until a recorded recovery raises it. Accepted items are not recovery targets; their path is checkpoint-authorized rework.
467
470
 
468
471
  A worker can fail to launch at all: the host task wrapper rejects the call before the worker runs (for example, an unknown provider or model). The host skips the `tool.execute.after` hook on a thrown execution, so the plugin consumes the failure as a distinct **failed attempt** from the live call binding instead of leaving `inFlightAttempt` stranded until a restart. The supported case is deliberately narrow — a fresh ordinary foreground `vv-implementer` task launch (no `background`, no `task_id` resume, no command/subtask path) whose host call errors with the exact `Subagent failed (task_id: <child>): ` wrapper, where the event metadata independently binds the same parent session and child session. When it applies, the attempt is marked `failed` with the bounded host error as evidence and a completion time, the item stays `awaiting_implementer`, and the attempt is charged against the same two-attempt budget. The controller can then explicitly retry with a new call; two failed attempts exhaust the normal budget exactly like two completed ones. A failed attempt never counts as `DONE`, cannot be accepted or decided as a successful completion, and persists across restart. Because a worker may have applied partial edits before failing, inspect the diff before retrying or closing.
469
472
 
470
473
  This is not universal automatic error recovery. Background or promoted launches, resumed/shared/re-prompted children, cancellation or interruption, any task that entered the `tool.execute.after` hook (including a protocol/repair failure there), missing or mismatched parent/child metadata, and unknown or non-wrapper host errors all remain fail-closed: the in-flight block is preserved and no retry is authorized from the event alone. The plugin never hydrates workflow state, infers a work item from error text, or resets a whole session because of an error event, and it does not reclassify legacy-mode or checkpoint-reviewer launches.
471
474
 
475
+ A worker whose execution finishes but whose final report stays protocol-invalid after the bounded continuation is settled truthfully as a **rejected report**: the exact call-bound attempt is recorded as a completed execution with status `report_rejected`, a bounded diagnostic excerpt, and the protocol error code — never as `DONE`, never as a launch failure, and never as a still-in-flight attempt. When the malformed output contains an explicit `VVOC_STATUS: BLOCKED` or `NEEDS_CONTEXT` line, the observed stop is preserved (the item parks in the corresponding hard-stop state) and no continuation runs; otherwise the item returns to the launch gate with the attempt consumed. A rejected report has the same bounded recovery path as any other terminal outcome, and `work_item_list` distinguishes it from a running attempt, an exhausted budget, and a substantive stop by exposing the remaining budget and the supported next action. Unknown or still-running host outcomes (for example a non-string task output) are never guessed terminal and cannot clear a live attempt.
476
+
472
477
  When a tracked subagent returns a recognized task envelope whose inner result is malformed for the strict protocol — a missing `VVOC_STATUS`, a missing `VVOC_ROUTE`, a non-protocol top-block line, or body text without the required blank line — the plugin makes at most one bounded continuation to that same child session. The continuation request carries no `tools` override (so the child's persisted session permissions are preserved), and its instructions direct the child to preserve the original work item, assignment, role, and write scope; to finish unfinished work with its existing history and currently permitted tools; or, if the work was already complete, to correct only the final report without repeating work or inventing evidence; and to report a truthful post-continuation `VVOC_STATUS`/`VVOC_ROUTE` rather than freezing an outdated one. These are instructions to the model, not a mechanical guarantee of compliance: the plugin still reparses the continued output strictly, applies the bounded error-code and explicit-hard-stop gates, and fails closed with the original protocol error and excerpt. Continuation is attempted only once; a valid result never continues, and a failed, empty, or still-malformed continuation is never retried. An explicit `VVOC_STATUS: BLOCKED` or `NEEDS_CONTEXT` line is detected before the call, so malformed hard-stop output fails closed through the original protocol error and excerpt instead of being continued.
473
478
 
474
- Independent review happens at checkpoints declared in the plan. An approved delegated plan carries an `<execution><mode>delegated</mode>` section with `<review_checkpoints>` (`CHECKPOINT-R-NNN` identities, each with kind, wave barrier, covered tasks, reviewed scope files, reviewer set, acceptance criteria, and verification commands) and per-task `<write_scope>` lists. `work_checkpoint` handles three actions:
479
+ Independent review happens at checkpoints declared in the plan. An approved delegated plan carries an `<execution><mode>delegated</mode>` section with `<review_checkpoints>` (`CHECKPOINT-R-NNN` identities, each with kind, wave barrier, covered tasks, reviewed scope files, reviewer set, acceptance criteria, and verification commands) and per-task `<write_scope>` lists. Registration accepts only this supported approved native plan package (the approved spec and plan pair under `.vvoc/specs/`); a provided plan or conversation-scoped execution stays on its own source and lifecycle rather than being converted into a native package. `work_checkpoint` handles these actions:
480
+
481
+ - `register` — with `planPath`, loads an approved active plan plus its linked approved spec, fully lints them, and binds the run to their content hashes and the canonical workspace root. With a generic `runId` instead, it appends checkpoints to that execution. Re-registering identical inputs is idempotent; changed approved inputs are explicit plan drift, never a progress reset.
482
+ - `start` — after every covered task is accepted, captures a fingerprint over the checkpoint scope (native scope files and existence, or the generic accepted-attempt coverage) and opens exactly the declared reviewer set as an ordinary `review_only` item. Writes overlapping an in-flight checkpoint scope are refused.
483
+ - `verify` — for native runs, derives `passed`, `failed`, `stale`, or `stopped` from the recorded reviewer results plus freshly recomputed fingerprints and approval hashes. A checkpoint passes only when every declared reviewer passes for the pinned snapshot; a closed review-only `FAIL` report is findings, not approval; edits during review make the generation stale. The final checkpoint seals the run only via `verify` with `complete: true` after every task is accepted, every earlier checkpoint passed, and the complete declared write scope is covered with fresh verification. Completion is refused while a declared reviewer is missing: a skipped reviewer is never fabricated into a pass.
484
+ - `review` / `bind` — record one generic reviewer result (optionally binding a reviewer call identity) and settle the generation when every declared reviewer reported.
485
+ - `complete` — complete a generic execution when every active task is accepted and every assigned checkpoint passed for the current revision, reporting `controller_accepted` or `independently_reviewed` honestly.
486
+ - `amend` — append validated tasks or checkpoints to a generic execution without replaying accepted work.
487
+ - `authorize` / `record_approval` / `revoke_authority` — record a bounded advance authority from an eligible root-user instruction, record a truthful controller-delegated stage approval, or revoke/narrow future authority credits.
488
+ - `recover` — bounded recovery for a checkpoint generation that stopped (`NEEDS_CONTEXT`) or exhausted its ordinary generations. Recovery takes the same `diagnosis`, `changedCondition`, `verification`, `recoveryId`, and optional `userMessageId` fields as task recovery, with the same one-unit autonomous-then-authorized policy per checkpoint; a generic exhausted checkpoint recovers under a recorded advance authority referenced by `runId` and `authorityId`. Recovering a stopped generation settles it into history as a `stopped` entry — it does not convert the stop into a failure, so checkpoint rework stays locked until a real failed generation exists — and recovering an exhausted checkpoint grants exactly one further generation with a fresh snapshot at the next `start`. Recovery never satisfies prerequisites, erases a `FAIL`, or seals a run: only the required passing final review does.
489
+
490
+ Passed milestones stay historical: later planned edits are covered by later checkpoints or the final gate, not by an old approval. Hard stops (`BLOCKED`, `NEEDS_CONTEXT`) are never reset or bypassed by acceptance or checkpoint handling; only a separately recorded recovery decision resumes the affected work. Checkpoint state persists per session and survives restarts; a persisted `PASS` is not fresh evidence until `verify` recomputes current hashes.
475
491
 
476
- - `register` — loads an approved active plan plus its linked approved spec, fully lints them, and binds the run to their content hashes and the canonical workspace root. Re-registering identical inputs is idempotent; changed approved inputs are explicit plan drift, never a progress reset.
477
- - `start` — after every covered task is accepted, captures a SHA-256 fingerprint over the checkpoint scope (file contents, existence, mode bits, and covered accepted attempts) and opens exactly the declared reviewer set as an ordinary `review_only` item. Writes overlapping an in-flight checkpoint scope are refused.
478
- - `verify` — derives `passed`, `failed`, `stale`, or `stopped` from the recorded reviewer results plus freshly recomputed fingerprints and approval hashes. A checkpoint passes only when every declared reviewer passes for the pinned snapshot; a closed review-only `FAIL` report is findings, not approval; edits during review make the generation stale. The final checkpoint seals the run only via `verify` with `complete: true` after every task is accepted, every earlier checkpoint passed, and the complete declared write scope is covered with fresh verification.
492
+ Source-independent execution is built on one common contract. Requirements may come from a native package, a provided plan reference, or the current conversation: a native package registers with `work_checkpoint register` (`planPath`), while a provided-plan or conversation-scoped run registers once with `work_item_open` carrying an `execution` descriptor (`executionKey`, `source`, `goal`, `boundary`) and its first task batch, and later tasks append with the same `runId` plus `amendmentId` and `rationale`. Generic review obligations run through `work_checkpoint` actions `start`, `review`/`bind`, `complete`, and `amend`. The registry validates task and checkpoint identities, exact references, execution boundaries, and acyclic dependencies before anything is published, and a selected source stays authoritative — a failed native package is never silently reopened as weaker generic execution, and a provided document is never converted or executed as commands. Required reviews are exactly those registered by the source, the user, or an explicit controller decision; a task with no assigned review completes honestly as controller-accepted rather than as independently reviewed, and a final checkpoint, when one was assigned, must still cover the current revision before completion. Explicit autonomous authority is recorded through `work_checkpoint action "authorize"` from an eligible root-user instruction as a bounded advance reserve shared by the whole authorized execution, consumed one unit at a time only after ordinary allowances are exhausted; duplicate calls, replay, restart, and task replacement cannot refill it, and narrowing or revocation disables future credits without erasing history. The same recorded authority can authorize one bounded continuation that predates a stop, while the separate post-stop `userMessageId` path keeps its own timing rules.
479
493
 
480
- Passed milestones stay historical: later planned edits are covered by later checkpoints or the final gate, not by an old approval. Hard stops (`BLOCKED`, `NEEDS_CONTEXT`) are never reset or bypassed by acceptance or checkpoint handling. Checkpoint state persists per session and survives restarts; a persisted `PASS` is not fresh evidence until `verify` recomputes current hashes.
494
+ Delegated and checkpoint state persists under `$XDG_DATA_HOME/vvoc/workflow/<sessionId>/workflow-state.json` at snapshot version 4, which adds the common execution registry and session-wide root-message claims on top of version 3's recovery histories, replay-protected authorization references, recovery-aware budgets, and rejected-report attempts. Existing native plan runs materialize a compatibility registry entry with their original run ids and content hashes. Older supported snapshots load conservatively: version 3 and 2 files hydrate with empty execution registries (version 2 also with empty recovery histories and original budgets), and version 1 files hydrate as legacy records without plan runs; none ever synthesizes acceptance, approval, or recovery. A snapshot written by a newer plugin version is refused rather than reset. Recovery mutations commit on the live store and persist synchronously — a failed write rolls the mutation back, so changed launch permissions appear only after a durable record; terminal report settlements stage, persist, and then commit. Because runtime plugins share the startup config snapshot, a plugin upgrade takes effect after an OpenCode restart.
481
495
 
482
496
  Plans without an `<execution>` section keep their legacy meaning; executing them with different acceptance or review obligations requires an explicit agreed plan amendment, and archived plans are never rewritten. In a deterministic dispatch-count scenario, a twenty-task plan with two intermediate code-review checkpoints and one final spec+code checkpoint needs exactly four initial reviewer launches instead of forty — that is a property of the declared checkpoint policy, not a wall-clock or model-quality benchmark.
483
497
 
@@ -21,7 +21,7 @@
21
21
  // END_MODULE_MAP
22
22
  //
23
23
  // START_CHANGE_SUMMARY
24
- // LAST_CHANGE: [C-DELEGATED-WORKFLOW-ASTRA-PRESETS - Added the delegated profile with worker-owned implementation, controller acceptance, and checkpoint review guidance.]
24
+ // LAST_CHANGE: [C-WORKFLOW-BOUNDED-RECOVERY-R1 - Calibrated the delegated policy: worker stops are bounded diagnosis and recovery targets rather than session ends, recovery is distinct from acceptance, and checkpoint registration states its native plan boundary.]
25
25
  // END_CHANGE_SUMMARY
26
26
  // START_BLOCK_PROFILE_TYPES
27
27
  /** Supported orchestration profiles in stable CLI/schema order. */
@@ -67,14 +67,23 @@ You may author specifications, plans, and explicitly requested planning artifact
67
67
  existing approval lifecycle, and you may execute verification commands, including commands that
68
68
  produce ordinary generated verification or build outputs. Do not write complete implementation
69
69
  bodies inside task packets and do not bypass the delegation policy by rewriting source through
70
- shell commands.
70
+ shell commands. Requirements may come from the supported approved native spec/plan package under
71
+ .vvoc/specs/, a provided plan reference, or the current conversation: work_checkpoint register
72
+ accepts only its supported approved native package, while a provided plan or conversation-scoped
73
+ run registers through work_item_open with an execution descriptor and keeps its own source rather
74
+ than being converted into a native package.
71
75
 
72
76
  Send each worker one bounded task packet and let it complete its local edit, test, and fix cycle
73
77
  before reporting a concise result with evidence references. One active implementation worker is the
74
78
  default; any parallel work requires explicitly disjoint approved scopes. Read the material changed
75
79
  code and evidence yourself, then explicitly accept each completed attempt or request changes with
76
80
  bounded rationale. Spend independent review at declared plan checkpoints instead of after every
77
- task, and treat BLOCKED and NEEDS_CONTEXT as hard stops.
81
+ task, and treat BLOCKED and NEEDS_CONTEXT as hard stops: diagnose a stopped or exhausted task
82
+ yourself and recover it through the session's supported recovery operation — bounded, one unit per
83
+ grant, never an unlimited retry and never a substitute for acceptance or review. After the ordinary
84
+ allowances are exhausted, a recorded advance authority from an explicit user instruction may
85
+ fund a finite continuation; it never becomes acceptance or a passing review. A stop suspends that
86
+ work item; it does not end the session.
78
87
  `.trim();
79
88
  const RESOLVED_POLICIES = Object.freeze({
80
89
  "single-session": Object.freeze({
@@ -1 +1 @@
1
- {"version":3,"file":"orchestration.js","sourceRoot":"","sources":["../../src/lib/orchestration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestration.js","sourceRoot":"","sources":["../../src/lib/orchestration.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { normalizeDeclaredScopePath, type DeclaredScopePathResult, type DelegatedCheckpointDefinition, type DelegatedPlanDefinition, type DelegatedPlanExtractionResult, type DelegatedReviewer, type DelegatedTaskDefinition } from "./workflow-contract.js";
1
2
  export declare const LINT_VERSION = 2;
2
3
  export type SpecLintArtifactKind = "spec" | "plan" | "design-context";
3
4
  export type SpecLintSeverity = "error" | "warning";
@@ -45,69 +46,7 @@ interface ParseResult {
45
46
  * content, multiple roots, and content after the root element.
46
47
  */
47
48
  export declare function parseSpecXml(content: string, file: string): ParseResult;
48
- /** Canonical reviewer roles accepted inside a delegated checkpoint's reviewer set. */
49
- export type DelegatedReviewer = "spec" | "code";
50
- /** Typed delegated obligation for one declared plan task. */
51
- export interface DelegatedTaskDefinition {
52
- /** Canonical task id used by depends_on and checkpoint coverage (e.g. "T-001"). */
53
- taskId: string;
54
- /** Declaring identity element name (e.g. "TASK-T-001"). */
55
- taskElement: string;
56
- /** Declaring wave id in document order (e.g. "WAVE-1"). */
57
- wave: string;
58
- /** Normalized workspace-relative write scope files declared for the task. */
59
- writeScope: string[];
60
- }
61
- /** Typed delegated obligation for one declared review checkpoint. */
62
- export interface DelegatedCheckpointDefinition {
63
- /** Declared checkpoint identity (e.g. "CHECKPOINT-R-001"). */
64
- checkpointId: string;
65
- kind: "milestone" | "final";
66
- /** Wave barrier that must be accepted before the checkpoint may start. */
67
- afterWave: string;
68
- /** Canonical task ids covered by the checkpoint. */
69
- covers: string[];
70
- /** Normalized workspace-relative files reviewed by the checkpoint. */
71
- scope: string[];
72
- /** Declared reviewer roles; every role must pass for the checkpoint to pass. */
73
- reviewers: DelegatedReviewer[];
74
- /** Acceptance criterion texts recorded in the plan. */
75
- acceptance: string[];
76
- /** Verification command texts recorded in the plan. */
77
- verification: string[];
78
- }
79
- /** Typed obligations extracted from a plan's delegated execution section. */
80
- export interface DelegatedPlanDefinition {
81
- mode: "delegated";
82
- /** Declared wave ids in document order. */
83
- waves: string[];
84
- tasks: DelegatedTaskDefinition[];
85
- checkpoints: DelegatedCheckpointDefinition[];
86
- }
87
- /** Either a typed delegated definition or the collected validation errors. */
88
- export type DelegatedPlanExtractionResult = {
89
- ok: true;
90
- definition: DelegatedPlanDefinition;
91
- } | {
92
- ok: false;
93
- errors: string[];
94
- };
95
- /** Normalized workspace-relative path, or the reason a declared path is malformed. */
96
- export type DeclaredScopePathResult = {
97
- ok: true;
98
- path: string;
99
- } | {
100
- ok: false;
101
- reason: string;
102
- };
103
- /**
104
- * Text-level canonical normalization for declared scope paths. The linter and
105
- * the runtime snapshot fingerprint share this representation so a plan that
106
- * lints clean cannot declare paths the runtime normalizer rejects on sight.
107
- * Filesystem-specific checks (existence, symlinks, regular files) stay in the
108
- * runtime normalizer; this function is deliberately pure.
109
- */
110
- export declare function normalizeDeclaredScopePath(raw: string): DeclaredScopePathResult;
49
+ export { normalizeDeclaredScopePath, type DeclaredScopePathResult, type DelegatedCheckpointDefinition, type DelegatedPlanDefinition, type DelegatedPlanExtractionResult, type DelegatedReviewer, type DelegatedTaskDefinition, };
111
50
  /**
112
51
  * Strictly extract typed delegated obligations from plan content. Returns
113
52
  * ok:false with every validation message when the plan does not declare a
@@ -124,4 +63,3 @@ export declare function detectSpecArtifactKind(rootName: string): SpecLintArtifa
124
63
  * checks; a plan without its spec yields a warning, not an error.
125
64
  */
126
65
  export declare function lintSpecArtifacts(inputs: SpecLintArtifactInput[], options?: SpecLintOptions): SpecLintVerdict[];
127
- export {};
@@ -3,8 +3,8 @@
3
3
  // START_MODULE_CONTRACT
4
4
  // PURPOSE: Pure strict linter for .vvoc spec-package XML artifacts (spec.xml, plan.xml, design-context.xml) enforcing the element-name identity format and delegated execution/checkpoint contracts.
5
5
  // SCOPE: Strict well-formedness validation over the htmlparser2 xmlMode event stream, template-contract checks per artifact kind, component/task/wave/checkpoint identity rules, reference integrity, lifecycle-aware severity, plan-subset-of-spec cross-file checking, delegated execution and review-checkpoint validation with typed extraction, and package layout checks. No filesystem access — callers pass artifact contents.
6
- // DEPENDS: [htmlparser2]
7
- // LINKS: [M-SPEC-LINT, M-PLUGIN-SPEC-GUARD, M-CLI-COMMANDS, M-WORKFLOW-CHECKPOINTS]
6
+ // DEPENDS: [htmlparser2, src/lib/workflow-contract.ts]
7
+ // LINKS: [M-SPEC-LINT, M-WORKFLOW-CONTRACT, M-PLUGIN-SPEC-GUARD, M-CLI-COMMANDS, M-WORKFLOW-CHECKPOINTS]
8
8
  // ROLE: RUNTIME
9
9
  // MAP_MODE: EXPORTS
10
10
  // END_MODULE_CONTRACT
@@ -17,13 +17,13 @@
17
17
  // SpecLintVerdict - Per-artifact lint result with kind, ok flag, and findings.
18
18
  // SpecLintArtifactInput - One artifact to lint identified by a file label and raw content.
19
19
  // SpecLintOptions - Options for lint runs (skipCrossFile for single-file contexts).
20
- // DelegatedReviewer - Canonical delegated checkpoint reviewer roles (spec, code).
21
- // DelegatedTaskDefinition - Typed delegated obligation for one declared plan task.
22
- // DelegatedCheckpointDefinition - Typed delegated obligation for one declared review checkpoint.
23
- // DelegatedPlanDefinition - Typed obligations extracted from a delegated execution section.
24
- // DelegatedPlanExtractionResult - Success payload or error list returned by delegated extraction.
25
- // DeclaredScopePathResult - Normalized workspace-relative path or a rejection reason.
26
- // normalizeDeclaredScopePath - Text-level canonical normalization for declared scope file paths.
20
+ // DelegatedReviewer - Canonical delegated checkpoint reviewer roles (spec, code); re-exported from the common contract.
21
+ // DelegatedTaskDefinition - Typed delegated obligation for one declared plan task; re-exported from the common contract.
22
+ // DelegatedCheckpointDefinition - Typed delegated obligation for one declared review checkpoint; re-exported from the common contract.
23
+ // DelegatedPlanDefinition - Typed obligations extracted from a delegated execution section; re-exported from the common contract.
24
+ // DelegatedPlanExtractionResult - Success payload or error list returned by delegated extraction; re-exported from the common contract.
25
+ // DeclaredScopePathResult - Normalized workspace-relative path or a rejection reason; re-exported from the common contract.
26
+ // normalizeDeclaredScopePath - Text-level canonical normalization for declared scope file paths; re-exported from the common contract.
27
27
  // extractDelegatedPlanDefinition - Strictly extract and validate typed delegated obligations from plan content.
28
28
  // parseSpecXml - Strict xmlMode parse producing a positioned element tree or well-formedness findings.
29
29
  // lintSpecArtifacts - Lint a set of artifacts together, applying cross-file rules between plans and specs.
@@ -32,9 +32,10 @@
32
32
  // END_MODULE_MAP
33
33
  //
34
34
  // START_CHANGE_SUMMARY
35
- // LAST_CHANGE: [C-DELEGATED-WORKFLOW-ASTRA-PRESETS - Added the delegated execution section, review-checkpoint vocabulary, scope-path normalization, typed extractDelegatedPlanDefinition, and bumped LINT_VERSION to 2.]
35
+ // LAST_CHANGE: [C-WORKFLOW-PLAN-INDEPENDENCE - Delegated obligation types and declared-path normalization moved to the dependency-free M-WORKFLOW-CONTRACT and re-exported here; native extraction now lifts task title, acceptance, verification, and dependency text for the common adapter.]
36
36
  // END_CHANGE_SUMMARY
37
37
  import { Tokenizer } from "htmlparser2";
38
+ import { normalizeDeclaredScopePath, } from "./workflow-contract.js";
38
39
  // START_BLOCK_PUBLIC_TYPES
39
40
  export const LINT_VERSION = 2;
40
41
  const IDENTITY_PATTERNS = {
@@ -372,41 +373,13 @@ function textOf(node) {
372
373
  function nonEmpty(node) {
373
374
  return textOf(node) !== "";
374
375
  }
375
- // END_BLOCK_DELEGATED_TYPES
376
- // START_BLOCK_SCOPE_PATH_NORMALIZATION
377
- /**
378
- * Text-level canonical normalization for declared scope paths. The linter and
379
- * the runtime snapshot fingerprint share this representation so a plan that
380
- * lints clean cannot declare paths the runtime normalizer rejects on sight.
381
- * Filesystem-specific checks (existence, symlinks, regular files) stay in the
382
- * runtime normalizer; this function is deliberately pure.
383
- */
384
- export function normalizeDeclaredScopePath(raw) {
385
- const trimmed = raw.trim();
386
- if (trimmed === "")
387
- return { ok: false, reason: "empty path" };
388
- if (trimmed.includes("\\"))
389
- return { ok: false, reason: "backslash separator" };
390
- if (trimmed.startsWith("/"))
391
- return { ok: false, reason: "absolute path" };
392
- if (/^[A-Za-z]:/.test(trimmed))
393
- return { ok: false, reason: "drive-absolute path" };
394
- if (trimmed.startsWith("~"))
395
- return { ok: false, reason: "home-relative path" };
396
- if (/[*?[\]]/.test(trimmed))
397
- return { ok: false, reason: "wildcard characters" };
398
- // eslint-disable-next-line no-control-regex
399
- if (/[\u0000-\u001f\u007f]/.test(trimmed))
400
- return { ok: false, reason: "control characters" };
401
- const segments = trimmed.split("/");
402
- for (const segment of segments) {
403
- if (segment === "")
404
- return { ok: false, reason: "empty path segment" };
405
- if (segment === "." || segment === "..")
406
- return { ok: false, reason: "traversal segment" };
407
- }
408
- return { ok: true, path: segments.join("/") };
409
- }
376
+ // END_BLOCK_TREE_HELPERS
377
+ // START_BLOCK_DELEGATED_TYPES
378
+ // The delegated obligation vocabulary and the pure declared-path normalizer
379
+ // live in the dependency-free common contract so the native linter and the
380
+ // common runtime share one representation. These names remain re-exported here
381
+ // for existing linter consumers.
382
+ export { normalizeDeclaredScopePath, };
410
383
  /**
411
384
  * Collect wave order and per-task delegated facts with a standalone walk so
412
385
  * lintPlan's main task validation and extractDelegatedPlanDefinition share one
@@ -466,6 +439,31 @@ function collectDelegatedTaskFacts(root) {
466
439
  const normalized = normalizeDeclaredScopePath(textOf(child(task, "file")));
467
440
  return normalized.ok ? normalized.path : "";
468
441
  })(),
442
+ title: textOf(child(task, "title")).trim(),
443
+ acceptance: (() => {
444
+ const acceptanceNode = child(task, "acceptance");
445
+ return acceptanceNode
446
+ ? children(acceptanceNode, "criterion")
447
+ .map((entry) => textOf(entry).trim())
448
+ .filter(Boolean)
449
+ : [];
450
+ })(),
451
+ verification: (() => {
452
+ const verificationNode = child(task, "verification");
453
+ return verificationNode
454
+ ? children(verificationNode, "command")
455
+ .map((entry) => textOf(entry).trim())
456
+ .filter(Boolean)
457
+ : [];
458
+ })(),
459
+ dependsOn: (() => {
460
+ const dependsNode = child(task, "depends_on");
461
+ return dependsNode
462
+ ? children(dependsNode, "task_id")
463
+ .map((entry) => textOf(entry).trim())
464
+ .filter(Boolean)
465
+ : [];
466
+ })(),
469
467
  });
470
468
  }
471
469
  }
@@ -881,6 +879,10 @@ export function extractDelegatedPlanDefinition(planContent, file = "plan.xml") {
881
879
  taskElement: task.taskElement,
882
880
  wave: task.wave,
883
881
  writeScope: [...task.writeScope],
882
+ ...(task.title ? { title: task.title } : {}),
883
+ ...(task.acceptance.length > 0 ? { acceptance: [...task.acceptance] } : {}),
884
+ ...(task.verification.length > 0 ? { verification: [...task.verification] } : {}),
885
+ ...(task.dependsOn.length > 0 ? { dependsOn: [...task.dependsOn] } : {}),
884
886
  })),
885
887
  checkpoints,
886
888
  },
@@ -1 +1 @@
1
- {"version":3,"file":"spec-lint.js","sourceRoot":"","sources":["../../src/lib/spec-lint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spec-lint.js","sourceRoot":"","sources":["../../src/lib/spec-lint.ts"],"names":[],"mappings":"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"}