@osovv/vv-opencode 1.4.3-rc.0 → 1.4.3
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 +20 -0
- package/README.md +15 -6
- package/dist/lib/orchestration.js +9 -5
- package/dist/lib/orchestration.js.map +1 -1
- package/dist/lib/spec-lint.d.ts +2 -64
- package/dist/lib/spec-lint.js +47 -45
- package/dist/lib/spec-lint.js.map +1 -1
- package/dist/lib/vvoc-preset-registry.d.ts +13 -1
- package/dist/lib/vvoc-preset-registry.js +11 -1
- package/dist/lib/vvoc-preset-registry.js.map +1 -1
- package/dist/lib/workflow-contract.d.ts +277 -0
- package/dist/lib/workflow-contract.js +636 -0
- package/dist/lib/workflow-contract.js.map +1 -0
- package/dist/plugins/system-context-injection/index.js +8 -0
- package/dist/plugins/system-context-injection/index.js.map +1 -1
- package/dist/plugins/workflow/authority.d.ts +99 -0
- package/dist/plugins/workflow/authority.js +435 -0
- package/dist/plugins/workflow/authority.js.map +1 -0
- package/dist/plugins/workflow/checkpoint-io.d.ts +10 -1
- package/dist/plugins/workflow/checkpoint-io.js +22 -3
- package/dist/plugins/workflow/checkpoint-io.js.map +1 -1
- package/dist/plugins/workflow/checkpoints.d.ts +5 -0
- package/dist/plugins/workflow/checkpoints.js +15 -4
- package/dist/plugins/workflow/checkpoints.js.map +1 -1
- package/dist/plugins/workflow/delegated.d.ts +7 -1
- package/dist/plugins/workflow/delegated.js +12 -6
- package/dist/plugins/workflow/delegated.js.map +1 -1
- package/dist/plugins/workflow/execution.d.ts +361 -0
- package/dist/plugins/workflow/execution.js +1807 -0
- package/dist/plugins/workflow/execution.js.map +1 -0
- package/dist/plugins/workflow/index.js +317 -104
- package/dist/plugins/workflow/index.js.map +1 -1
- package/dist/plugins/workflow/persistence.d.ts +15 -3
- package/dist/plugins/workflow/persistence.js +270 -34
- package/dist/plugins/workflow/persistence.js.map +1 -1
- package/dist/plugins/workflow/snapshots.js +3 -3
- package/dist/plugins/workflow/snapshots.js.map +1 -1
- package/dist/plugins/workflow/state.d.ts +13 -0
- package/dist/plugins/workflow/state.js +22 -5
- package/dist/plugins/workflow/state.js.map +1 -1
- package/dist/plugins/workflow/system-instruction.md +15 -1
- package/dist/plugins/workflow/tooling.d.ts +46 -1
- package/dist/plugins/workflow/tooling.js +822 -6
- package/dist/plugins/workflow/tooling.js.map +1 -1
- package/dist/plugins/workflow/transactions.d.ts +54 -0
- package/dist/plugins/workflow/transactions.js +147 -0
- package/dist/plugins/workflow/transactions.js.map +1 -0
- package/package.json +1 -1
- package/schemas/vvoc/v3.json +1 -1
- package/templates/agents/vv-controller.md +12 -7
- package/templates/skills/vv-execute/SKILL.md +4 -4
- package/templates/skills/vv-plan/SKILL.md +1 -1
- package/templates/skills/vv-spec/SKILL.md +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
## <small>1.4.3 (2026-09-22)</small>
|
|
2
|
+
|
|
3
|
+
### Summary
|
|
4
|
+
|
|
5
|
+
Version 1.4.3 adds a new built-in preset, vv-osovv-mimo, giving users a personal osovv stack built around MiMo Flash High. The preset assigns xiaomi/vv-mimo-v2.6-flash-high to the default and smart roles, keeps openai/vv-codex-gpt-5.6-luna-low as the fast role, uses zai-coding-plan/vv-glm-5.3-max for review, and runs with the single-session orchestration profile, so teams can apply it directly with vvoc preset vv-osovv-mimo. The preset registry, shell completions for bash, zsh, and fish, and the README preset and orchestration tables were updated alongside it, so the new option appears consistently in listings, completion, and documentation.
|
|
6
|
+
|
|
7
|
+
* feat(presets): add vv-osovv-mimo preset with MiMo Flash High roles ([37c3a0e](https://github.com/osovv/vv-opencode/commit/37c3a0e))
|
|
8
|
+
|
|
9
|
+
## <small>1.4.3-rc.1 (2026-09-12)</small>
|
|
10
|
+
|
|
11
|
+
### Summary
|
|
12
|
+
|
|
13
|
+
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.
|
|
14
|
+
|
|
15
|
+
* chore(grace): apply and archive C-WORKFLOW-PLAN-INDEPENDENCE ([190ee03](https://github.com/osovv/vv-opencode/commit/190ee03))
|
|
16
|
+
* fix(workflow): close generic-review resume wedge and harden authority recovery ([4838f2b](https://github.com/osovv/vv-opencode/commit/4838f2b))
|
|
17
|
+
* feat(workflow): add source-independent execution contract and bounded advance authority ([8059770](https://github.com/osovv/vv-opencode/commit/8059770))
|
|
18
|
+
* feat(workflow): expose source-independent execution and advance authority through workflow tools ([4ed5e2c](https://github.com/osovv/vv-opencode/commit/4ed5e2c))
|
|
19
|
+
* docs(workflow): scope source-independent execution claims to the implemented domain surface ([fce2342](https://github.com/osovv/vv-opencode/commit/fce2342))
|
|
20
|
+
|
|
1
21
|
## <small>1.4.3-rc.0 (2026-09-12)</small>
|
|
2
22
|
|
|
3
23
|
### Summary
|
package/README.md
CHANGED
|
@@ -368,6 +368,7 @@ vvoc preset vv-deepseek
|
|
|
368
368
|
vvoc preset vv-kimi
|
|
369
369
|
vvoc preset vv-alibaba
|
|
370
370
|
vvoc preset vv-osovv-ds
|
|
371
|
+
vvoc preset vv-osovv-mimo
|
|
371
372
|
vvoc preset vv-osovv-zai
|
|
372
373
|
vvoc preset vv-osovv-qwen
|
|
373
374
|
vvoc preset vv-astra-solo
|
|
@@ -392,6 +393,7 @@ Every shipped preset declares an explicit role matrix and orchestration profile:
|
|
|
392
393
|
| `vv-kimi` | `kimi-for-coding/k3` | `kimi-for-coding/kimi-for-coding-highspeed` | `kimi-for-coding/vv-kimi-k3-max` | `kimi-for-coding/kimi-for-coding` | single-session |
|
|
393
394
|
| `vv-alibaba` | `alibaba-token-plan/qwen3.8-max` | `alibaba-token-plan/deepseek-v4-flash` | `alibaba-token-plan/vv-qwen3.8-max-xhigh` | `alibaba-token-plan/glm-5.2` | single-session |
|
|
394
395
|
| `vv-osovv-ds` | `deepseek/vv-deepseek-flash-max` | `openai/vv-codex-gpt-5.6-luna-low` | `deepseek/vv-deepseek-flash-max` | `zai-coding-plan/vv-glm-5.3-max` | single-session |
|
|
396
|
+
| `vv-osovv-mimo` | `xiaomi/vv-mimo-v2.6-flash-high` | `openai/vv-codex-gpt-5.6-luna-low` | `xiaomi/vv-mimo-v2.6-flash-high` | `zai-coding-plan/vv-glm-5.3-max` | single-session |
|
|
395
397
|
| `vv-osovv-zai` | `deepseek/vv-deepseek-flash-max` | `openai/vv-codex-gpt-5.6-luna-low` | `zai-coding-plan/vv-glm-5.3-max` | `zai-coding-plan/vv-glm-5.3-max` | single-session |
|
|
396
398
|
| `vv-osovv-qwen` | `deepseek/vv-deepseek-flash-max` | `openai/vv-codex-gpt-5.6-luna-low` | `alibaba-token-plan/vv-qwen3.8-max-xhigh` | `zai-coding-plan/vv-glm-5.3-max` | delegated |
|
|
397
399
|
| `vv-astra-solo` | `openai/vv-codex-gpt-6-astra-max` | `openai/vv-codex-gpt-5.6-luna-low` | `openai/vv-codex-gpt-6-astra-max` | `zai-coding-plan/vv-glm-5.3-high` | single-session |
|
|
@@ -425,6 +427,7 @@ Built-in presets declare an orchestration mapping:
|
|
|
425
427
|
| `vv-kimi` | single-session |
|
|
426
428
|
| `vv-alibaba` | single-session |
|
|
427
429
|
| `vv-osovv-ds` | single-session |
|
|
430
|
+
| `vv-osovv-mimo` | single-session |
|
|
428
431
|
| `vv-osovv-zai` | single-session |
|
|
429
432
|
| `vv-astra-solo` | single-session |
|
|
430
433
|
| `vv-astra-workers` | delegated |
|
|
@@ -476,16 +479,22 @@ A worker whose execution finishes but whose final report stays protocol-invalid
|
|
|
476
479
|
|
|
477
480
|
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.
|
|
478
481
|
|
|
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/`);
|
|
482
|
+
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
483
|
|
|
481
|
-
- `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.
|
|
482
|
-
- `start` — after every covered task is accepted, captures a
|
|
483
|
-
- `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. Completion is refused while a declared reviewer is missing: a skipped reviewer is never fabricated into a pass.
|
|
484
|
-
- `
|
|
484
|
+
- `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.
|
|
485
|
+
- `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.
|
|
486
|
+
- `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.
|
|
487
|
+
- `review` / `bind` — record one generic reviewer result (optionally binding a reviewer call identity) and settle the generation when every declared reviewer reported.
|
|
488
|
+
- `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.
|
|
489
|
+
- `amend` — append validated tasks or checkpoints to a generic execution without replaying accepted work.
|
|
490
|
+
- `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.
|
|
491
|
+
- `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.
|
|
485
492
|
|
|
486
493
|
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.
|
|
487
494
|
|
|
488
|
-
|
|
495
|
+
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.
|
|
496
|
+
|
|
497
|
+
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.
|
|
489
498
|
|
|
490
499
|
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.
|
|
491
500
|
|
|
@@ -67,9 +67,11 @@ 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.
|
|
71
|
-
|
|
72
|
-
|
|
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.
|
|
73
75
|
|
|
74
76
|
Send each worker one bounded task packet and let it complete its local edit, test, and fix cycle
|
|
75
77
|
before reporting a concise result with evidence references. One active implementation worker is the
|
|
@@ -78,8 +80,10 @@ code and evidence yourself, then explicitly accept each completed attempt or req
|
|
|
78
80
|
bounded rationale. Spend independent review at declared plan checkpoints instead of after every
|
|
79
81
|
task, and treat BLOCKED and NEEDS_CONTEXT as hard stops: diagnose a stopped or exhausted task
|
|
80
82
|
yourself and recover it through the session's supported recovery operation — bounded, one unit per
|
|
81
|
-
grant, never an unlimited retry and never a substitute for acceptance or review.
|
|
82
|
-
|
|
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.
|
|
83
87
|
`.trim();
|
|
84
88
|
const RESOLVED_POLICIES = Object.freeze({
|
|
85
89
|
"single-session": Object.freeze({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestration.js","sourceRoot":"","sources":["../../src/lib/orchestration.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,iBAAiB;AACjB,wBAAwB;AACxB,yIAAyI;AACzI,yHAAyH;AACzH,oBAAoB;AACpB,kEAAkE;AAClE,kBAAkB;AAClB,sBAAsB;AACtB,sBAAsB;AACtB,EAAE;AACF,mBAAmB;AACnB,0FAA0F;AAC1F,6DAA6D;AAC7D,yEAAyE;AACzE,iGAAiG;AACjG,4FAA4F;AAC5F,0GAA0G;AAC1G,2FAA2F;AAC3F,sGAAsG;AACtG,iBAAiB;AACjB,EAAE;AACF,uBAAuB;AACvB,0QAA0Q;AAC1Q,qBAAqB;AAErB,4BAA4B;AAC5B,mEAAmE;AACnE,MAAM,CAAC,MAAM,2BAA2B,GAAG;IACzC,gBAAgB;IAChB,UAAU;IACV,cAAc;IACd,WAAW;CACH,CAAC;AAiBX,0FAA0F;AAC1F,MAAM,CAAC,MAAM,6BAA6B,GAAyB,UAAU,CAAC;AAC9E,0BAA0B;AAE1B,gCAAgC;AAChC,MAAM,wCAAwC,GAAG;;;;;;;;;CAShD,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,kCAAkC,GAAG;;;;;CAK1C,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,sCAAsC,GAAG;;;;;CAK9C,CAAC,IAAI,EAAE,CAAC;AAET,MAAM,mCAAmC,GAAG
|
|
1
|
+
{"version":3,"file":"orchestration.js","sourceRoot":"","sources":["../../src/lib/orchestration.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/spec-lint.d.ts
CHANGED
|
@@ -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
|
-
|
|
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 {};
|
package/dist/lib/spec-lint.js
CHANGED
|
@@ -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-
|
|
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
|
-
//
|
|
376
|
-
//
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
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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"}
|