@deftai/directive-runtime 0.128.0 → 0.129.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 (74) hide show
  1. package/UPGRADING.md +2 -2
  2. package/dist/contract-entry.js +2 -0
  3. package/dist/doctor-diagnose.d.ts +8 -3
  4. package/dist/doctor-diagnose.js +23 -5
  5. package/dist/hook-dispatch.js +2 -1
  6. package/dist/self-complete.d.ts +4 -0
  7. package/dist/self-complete.js +18 -0
  8. package/dist/setup-wiring.d.ts +19 -1
  9. package/dist/setup-wiring.js +113 -24
  10. package/dist/setup.d.ts +4 -0
  11. package/dist/setup.js +80 -2
  12. package/dist/verify-ac.js +29 -2
  13. package/package.json +1 -1
  14. package/packs/skills/skills-pack-0.1.json +2 -2
  15. package/skills/deft-directive-refinement/SKILL.md +2 -2
  16. package/skills/deft-directive-setup/SKILL.md +2 -2
  17. package/skills/deft-directive-swarm/references/core-phase-0.md +1 -1
  18. package/tasks/docs.yml +1 -1
  19. package/vendor/directive-content/UPGRADING.md +2 -2
  20. package/vendor/directive-content/packs/skills/skills-pack-0.1.json +2 -2
  21. package/vendor/directive-content/skills/deft-directive-refinement/SKILL.md +2 -2
  22. package/vendor/directive-content/skills/deft-directive-setup/SKILL.md +2 -2
  23. package/vendor/directive-content/skills/deft-directive-swarm/references/core-phase-0.md +1 -1
  24. package/vendor/directive-content/tasks/docs.yml +1 -1
  25. package/vendor/directive-core/dist/.tsbuildinfo +1 -1
  26. package/vendor/directive-core/dist/class-checks/evaluate.d.ts.map +1 -1
  27. package/vendor/directive-core/dist/class-checks/evaluate.js +8 -0
  28. package/vendor/directive-core/dist/class-checks/evaluate.js.map +1 -1
  29. package/vendor/directive-core/dist/coverage-applicability/evaluate.d.ts.map +1 -1
  30. package/vendor/directive-core/dist/coverage-applicability/evaluate.js +1 -0
  31. package/vendor/directive-core/dist/coverage-applicability/evaluate.js.map +1 -1
  32. package/vendor/directive-core/dist/hooks/scope.d.ts +57 -0
  33. package/vendor/directive-core/dist/hooks/scope.d.ts.map +1 -1
  34. package/vendor/directive-core/dist/hooks/scope.js +171 -0
  35. package/vendor/directive-core/dist/hooks/scope.js.map +1 -1
  36. package/vendor/directive-core/dist/install-health/wiring.d.ts.map +1 -1
  37. package/vendor/directive-core/dist/install-health/wiring.js +111 -0
  38. package/vendor/directive-core/dist/install-health/wiring.js.map +1 -1
  39. package/vendor/directive-core/dist/packs/pack-render.d.ts +6 -1
  40. package/vendor/directive-core/dist/packs/pack-render.d.ts.map +1 -1
  41. package/vendor/directive-core/dist/packs/pack-render.js +103 -78
  42. package/vendor/directive-core/dist/packs/pack-render.js.map +1 -1
  43. package/vendor/directive-core/dist/packs/packs-root.d.ts +53 -0
  44. package/vendor/directive-core/dist/packs/packs-root.d.ts.map +1 -0
  45. package/vendor/directive-core/dist/packs/packs-root.js +83 -0
  46. package/vendor/directive-core/dist/packs/packs-root.js.map +1 -0
  47. package/vendor/directive-core/dist/packs/packs-slice.d.ts.map +1 -1
  48. package/vendor/directive-core/dist/packs/packs-slice.js +6 -6
  49. package/vendor/directive-core/dist/packs/packs-slice.js.map +1 -1
  50. package/vendor/directive-core/dist/preflight-gh/pre-push.d.ts.map +1 -1
  51. package/vendor/directive-core/dist/preflight-gh/pre-push.js +13 -0
  52. package/vendor/directive-core/dist/preflight-gh/pre-push.js.map +1 -1
  53. package/vendor/directive-core/dist/product-first-done-gate/acceptance-resolver.d.ts +1 -1
  54. package/vendor/directive-core/dist/product-first-done-gate/acceptance-resolver.d.ts.map +1 -1
  55. package/vendor/directive-core/dist/product-first-done-gate/acceptance-resolver.js +1 -1
  56. package/vendor/directive-core/dist/product-first-done-gate/acceptance-resolver.js.map +1 -1
  57. package/vendor/directive-core/dist/product-first-done-gate/index.d.ts +1 -1
  58. package/vendor/directive-core/dist/product-first-done-gate/index.d.ts.map +1 -1
  59. package/vendor/directive-core/dist/product-first-done-gate/index.js +1 -1
  60. package/vendor/directive-core/dist/product-first-done-gate/index.js.map +1 -1
  61. package/vendor/directive-core/dist/release/main.d.ts.map +1 -1
  62. package/vendor/directive-core/dist/release/main.js +3 -2
  63. package/vendor/directive-core/dist/release/main.js.map +1 -1
  64. package/vendor/directive-core/dist/release/version.d.ts +14 -0
  65. package/vendor/directive-core/dist/release/version.d.ts.map +1 -1
  66. package/vendor/directive-core/dist/release/version.js +28 -0
  67. package/vendor/directive-core/dist/release/version.js.map +1 -1
  68. package/vendor/directive-core/dist/xbrief-migrate/migrate-project.d.ts +5 -4
  69. package/vendor/directive-core/dist/xbrief-migrate/migrate-project.d.ts.map +1 -1
  70. package/vendor/directive-core/dist/xbrief-migrate/migrate-project.js +65 -46
  71. package/vendor/directive-core/dist/xbrief-migrate/migrate-project.js.map +1 -1
  72. package/vendor/directive-core/dist/xbrief-migrate/transforms.d.ts.map +1 -1
  73. package/vendor/directive-core/dist/xbrief-migrate/transforms.js +13 -6
  74. package/vendor/directive-core/dist/xbrief-migrate/transforms.js.map +1 -1
@@ -173,7 +173,7 @@ The agent may suggest the next phase, but the user decides. Phases can be entere
173
173
  - **Batch**: `task issue:ingest -- --all [--label <L>] [--status <S>]` — ingests every open issue matching the filters, skipping duplicates by `references.uri` match.
174
174
  - **Preview**: add `--dry-run` to either form to preview without writing files.
175
175
 
176
- The task emits xBRIEFs conforming to the canonical v0.6 schema (`xbrief/schemas/xbrief-core.schema.json`) with origin references in the form documented in [`../../conventions/references.md`](../../conventions/references.md):
176
+ The task emits xBRIEFs conforming to the canonical xBRIEF v0.8 schema (`node_modules/@deftai/directive-runtime/vbrief/schemas/xbrief-core-0.8.schema.json`; OVPR pin is schema SoT) with origin references in the form documented in [`../../conventions/references.md`](../../conventions/references.md):
177
177
 
178
178
  ```json
179
179
  "references": [
@@ -187,7 +187,7 @@ The task emits xBRIEFs conforming to the canonical v0.6 schema (`xbrief/schemas/
187
187
 
188
188
  - ! New scope xBRIEFs MUST target `"xBRIEFInfo": { "version": "0.8" }` (the task handles this automatically)
189
189
  - ! `plan.status` starts at `"proposed"`; the task sets this
190
- - ! Conform to `xbrief/schemas/xbrief-core.schema.json` (v0.6) -- the task validates before writing
190
+ - ! Conform to `node_modules/@deftai/directive-runtime/vbrief/schemas/xbrief-core-0.8.schema.json` (v0.8; pin schema SoT) -- the task validates before writing
191
191
  - ~ After ingest, review the generated xBRIEFs with the user before promoting any of them to `pending/`
192
192
 
193
193
  ⊗ Hand-author scope xBRIEFs inside the skill when the ingest task exists — duplicating the narrative logic is how #534 (non-conformant references) and #537 (drift between skill and task) arise
@@ -673,7 +673,7 @@ omit = [
673
673
 
674
674
  ### Template
675
675
 
676
- ! The output MUST conform to the canonical xBRIEF v0.8 schema (`xbrief/schemas/xbrief-core-0.8.schema.json`, strict `const: "0.8"`). See [`../../conventions/references.md`](../../conventions/references.md). Write-path default is **0.8 only** (#2971); legacy 0.6 remains read-accepted until `deft migrate:xbrief`.
676
+ ! The output MUST conform to the canonical xBRIEF v0.8 schema (`node_modules/@deftai/directive-runtime/vbrief/schemas/xbrief-core-0.8.schema.json`, strict `const: "0.8"`; OVPR pin is schema SoT — install does not deposit project-root `xbrief/schemas/`). See [`../../conventions/references.md`](../../conventions/references.md). Write-path default is **0.8 only** (#2971); legacy 0.6 remains read-accepted until `deft migrate:xbrief`.
677
677
 
678
678
  ! Do not write this document onto `xbrief/PROJECT-DEFINITION.xbrief.json` yourself. After confirmation, write it to a temporary narratives file that is not that artifact, then run `deft project:write-narratives --project-root <policy-project-root> --narratives-file <path>`. The command stores Overview, TechStack, Strategy, Quality, ProjectRules, and Branching while `xbrief/active/` is empty. Optional `--title` sets `plan.title` only. A policy block in the temporary file is ignored. Policy still goes through the public writer in the gate above.
679
679
 
@@ -893,7 +893,7 @@ Per [strategies/interview.md](../../strategies/interview.md#interview-rules-shar
893
893
  - ⊗ Create a separate PRD.md on the Light path
894
894
  - ⊗ Generate an authoritative PRD.md — if needed, users run `task prd:render`
895
895
 
896
- ! The xBRIEF files MUST conform to `xbrief/schemas/xbrief-core-0.8.schema.json` (v0.8):
896
+ ! The xBRIEF files MUST conform to `node_modules/@deftai/directive-runtime/vbrief/schemas/xbrief-core-0.8.schema.json` (v0.8; pin schema SoT):
897
897
 
898
898
  - ! All `narratives` and `narrative` values MUST be plain strings — never objects or arrays
899
899
  - ! Nested children within a PlanItem use `items` (preferred field); `subItems` is the deprecated legacy alias kept for backward compatibility only
@@ -153,7 +153,7 @@ Loop body, per candidate (top-of-queue first):
153
153
  ? When the operator explicitly opts out of the queue (e.g. a one-off ad-hoc cohort that has not been ingested into the triage cache yet, or a swarm batch driven from a hand-supplied list of issue numbers), the monitor MAY fall back to the legacy GitHub-issue path:
154
154
 
155
155
  1. ! Fetch issue data: `gh api repos/<owner>/<repo>/issues/<N>` (REST per `templates/agent-prompt-preamble.md` § 5; never the GraphQL `gh issue view --json` surface).
156
- 2. ! Generate a minimal xBRIEF in `xbrief/proposed/` following the `YYYY-MM-DD-descriptive-slug.xbrief.json` naming convention (slug rules: [`../../conventions/vbrief-filenames.md`](../../conventions/vbrief-filenames.md)) and conforming to the canonical v0.6 schema (`xbrief/schemas/xbrief-core.schema.json`, strict `const: "0.6"`; see [`../../conventions/references.md`](../../conventions/references.md)).
156
+ 2. ! Generate a minimal xBRIEF in `xbrief/proposed/` following the `YYYY-MM-DD-descriptive-slug.xbrief.json` naming convention (slug rules: [`../../conventions/vbrief-filenames.md`](../../conventions/vbrief-filenames.md)) and conforming to the canonical xBRIEF v0.8 schema (`node_modules/@deftai/directive-runtime/vbrief/schemas/xbrief-core-0.8.schema.json`, strict `const: "0.8"`; OVPR pin is schema SoT — see [`../../conventions/references.md`](../../conventions/references.md)).
157
157
  3. ! Promote through the canonical lifecycle (`task scope:promote -- <path>` then `task scope:activate -- <path>`), respecting the WIP cap and the same `--force` audit-logged override semantics as the queue-driven loop.
158
158
  4. ! Surface the opt-out reason in the Step 4 (Present Analysis) summary so a reviewer can see WHY the queue was bypassed.
159
159
 
package/tasks/docs.yml CHANGED
@@ -49,4 +49,4 @@ tasks:
49
49
  cmds:
50
50
  - task: :engine:invoke
51
51
  vars:
52
- ENGINE_CMD: 'capability-map --project-root "{{.USER_WORKING_DIR}}" --check'
52
+ ENGINE_CMD: 'capability-map --project-root "{{.USER_WORKING_DIR}}" --check'
@@ -79,7 +79,7 @@ npm install -g --allow-scripts=<pkg,...> <package>
79
79
 
80
80
  ### Framework monorepo contributors
81
81
 
82
- Install source of truth for this repo is **pnpm** (`packageManager` field; CI uses `pnpm install --frozen-lockfile`). Install-script builds are gated by `pnpm-workspace.yaml` **`allowBuilds`** (currently `esbuild: true`). Do **not** treat `npm approve-scripts` under the pnpm virtual store as monorepo SoT.
82
+ Install source of truth for this repo is **pnpm** (`packageManager` field; CI uses `pnpm install --frozen-lockfile`). Install-script builds are gated by `pnpm-workspace.yaml` **`allowBuilds`** (currently `esbuild: true` where needed). **`allowBuilds` is PM-owned**: Directive install/upgrade uses the package manager for `package.json` / lockfile pin ops and does **not** hand-edit `allowBuilds`. If pnpm fails with `ERR_PNPM_IGNORED_BUILDS`, recover with `pnpm approve-builds` or set a real `true`/`false` under `allowBuilds` — do **not** commit pnpm's interactive placeholder text. Pin/add paths already pass `--ignore-scripts` so ordinary consumer upgrades should not need a runtime `allowBuilds` entry. Do **not** treat `npm approve-scripts` under the pnpm virtual store as monorepo SoT.
83
83
 
84
84
  ### Git / remote package sources and publish
85
85
 
@@ -456,7 +456,7 @@ import schema from "@deftai/directive-types/schemas/xbrief-core-0.8.schema.json"
456
456
 
457
457
  **Supported public API:** `@deftai/directive-types` and its published schema subpaths only. **`@deftai/directive-core` is published for npm dependency resolution but is not a supported library surface** — use the `deft` / `directive` CLI for behavior.
458
458
 
459
- **Schema source of truth:** `content/vbrief/schemas/vbrief-core.schema.json` in the directive repo. The types package mirrors it to `packages/types/schemas/` at build time; `deft` install also deposits schemas under project-root `xbrief/schemas/`. When in doubt, treat the directive repo canonical file as authoritative and refresh mirrors with `deft update` (install) or `@deftai/directive-types` (npm).
459
+ **Schema source of truth (OVPR):** the pinned runtime ships schemas under `node_modules/@deftai/directive-runtime/vbrief/schemas/` (current write schema: `xbrief-core-0.8.schema.json`). The types package publishes the same artifacts as `@deftai/directive-types/schemas/…`. Framework source authors at `content/vbrief/schemas/`. Install does **not** deposit project-root `xbrief/schemas/`. Refresh via `directive upgrade` (pin) or `@deftai/directive-types` (npm).
460
460
 
461
461
  ### `deft migrate` vs pre-v0.20 document-model migration
462
462