agentic-workflow-manager 9.22.0 → 9.22.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 (53) hide show
  1. package/dist/src/commands/change/index.js +2 -2
  2. package/dist/src/commands/init.js +8 -4
  3. package/dist/src/commands/registry/add.js +9 -3
  4. package/dist/src/commands/sync.js +11 -5
  5. package/dist/src/commands/update.js +23 -12
  6. package/dist/src/core/changes/derive.js +6 -3
  7. package/dist/src/core/changes/git.js +1 -2
  8. package/dist/src/core/changes/worktree.js +15 -3
  9. package/dist/src/core/init/steps.js +3 -8
  10. package/dist/src/core/registries.js +20 -15
  11. package/dist/src/core/registry-git-errors.js +107 -0
  12. package/dist/src/core/registry-git.js +93 -0
  13. package/dist/src/core/registry-sync-report.js +74 -0
  14. package/dist/src/core/versioning.js +3 -6
  15. package/dist/src/index.js +5 -8
  16. package/dist/tests/commands/change/new.test.js +103 -57
  17. package/dist/tests/commands/change/validate.test.js +164 -108
  18. package/dist/tests/commands/changes/list.test.js +41 -22
  19. package/dist/tests/commands/job/gate-reconcile.test.js +13 -2
  20. package/dist/tests/commands/registry-sync-honesty.test.js +175 -0
  21. package/dist/tests/commands/sensors/exec.test.js +3 -1
  22. package/dist/tests/commands/update.test.js +8 -8
  23. package/dist/tests/commands/watch/supervisor-loop.test.js +21 -5
  24. package/dist/tests/core/changes/helpers.js +15 -3
  25. package/dist/tests/core/changes/list-paging.test.js +131 -110
  26. package/dist/tests/core/changes/list.test.js +133 -83
  27. package/dist/tests/core/changes/receipt.test.js +18 -6
  28. package/dist/tests/core/diagnostics/provider-checks.test.js +3 -0
  29. package/dist/tests/core/init/steps-registry-sync.test.js +6 -8
  30. package/dist/tests/core/registry-git.test.js +153 -0
  31. package/dist/tests/helpers/commit-seeded-registry.js +18 -0
  32. package/dist/tests/integration/codex-provider-isolated.test.js +7 -2
  33. package/dist/tests/integration/copilot-init-isolated.test.js +7 -4
  34. package/dist/tests/structural/active-documentation.test.js +0 -41
  35. package/dist/tests/structural/bundle-skill-reference-contract.test.js +0 -12
  36. package/dist/tests/structural/cli-reference-matches-commander.test.js +94 -0
  37. package/dist/tests/structural/native-release-artifacts.test.js +116 -107
  38. package/dist/tests/structural/sensor-documentation-contract.test.js +0 -47
  39. package/dist/tests/structural/sensor-portability-contract.test.js +0 -7
  40. package/dist/tests/structural/simple-git-v4-pin.test.js +49 -0
  41. package/package.json +2 -2
  42. package/prebuilds/darwin-arm64/secure_fs.node +0 -0
  43. package/prebuilds/darwin-x64/secure_fs.node +0 -0
  44. package/prebuilds/win32-arm64/secure_fs.node +0 -0
  45. package/prebuilds/win32-x64/secure_fs.node +0 -0
  46. package/dist/tests/structural/cloud-admission-docs-contract.test.js +0 -54
  47. package/dist/tests/structural/documentation-phase-is-mechanized.test.js +0 -29
  48. package/dist/tests/structural/operator-environments-docs-contract.test.js +0 -70
  49. package/dist/tests/structural/process-model-description-contract.test.js +0 -34
  50. package/dist/tests/structural/project-declared-sensors-docs-contract.test.js +0 -104
  51. package/dist/tests/structural/r4-plan-currentness-docs.test.js +0 -37
  52. package/dist/tests/structural/sensor-execution-optimization-docs-contract.test.js +0 -102
  53. package/dist/tests/structural/sensor-slice-decision-contract.test.js +0 -63
@@ -1,63 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const fs_1 = __importDefault(require("fs"));
7
- const path_1 = __importDefault(require("path"));
8
- /**
9
- * CMD-DECISION — RF-D.1 `--slice` / `closureOnly` cycle policy in docs/decisions.md.
10
- *
11
- * Section-scoped: index-table mentions alone must not satisfy the body asserts.
12
- */
13
- const repoRoot = path_1.default.resolve(__dirname, '../../..');
14
- const decisionsPath = path_1.default.join(repoRoot, 'docs', 'decisions.md');
15
- const DECISION_ID = 'D-025';
16
- const DECISION_HEADING = `## ${DECISION_ID}`;
17
- const COMPANION_PLAN = 'docs/plans/2026-10-27-sensor-execution-optimization-registry-plan.md';
18
- function readDecisions() {
19
- return fs_1.default.readFileSync(decisionsPath, 'utf8');
20
- }
21
- /** Body of ## D-025 through the next ## D- or EOF. */
22
- function decisionBody(text) {
23
- const start = text.indexOf(DECISION_HEADING);
24
- expect(start).toBeGreaterThanOrEqual(0);
25
- const rest = text.slice(start);
26
- const next = rest.search(/\n## D-\d+/);
27
- return next === -1 ? rest : rest.slice(0, next);
28
- }
29
- describe('sensor slice decision contract (CMD-DECISION / RF-D.1)', () => {
30
- it('indexes D-025 in the decisions table', () => {
31
- const text = readDecisions();
32
- const tableEnd = text.indexOf('\n---\n');
33
- expect(tableEnd).toBeGreaterThan(0);
34
- const table = text.slice(0, tableEnd);
35
- expect(table).toMatch(new RegExp(`\\[D-025\\]\\(#d-025\\)[^\n]*--slice[^\n]*closureOnly|\\[D-025\\]\\(#d-025\\)[^\n]*closureOnly[^\n]*--slice`, 'i'));
36
- expect(table).toMatch(/\| \[D-025\]\(#d-025\) \| 2026-10-27 \|/);
37
- });
38
- it('records --slice + closureOnly cycle policy and forbids partial selection as closure evidence', () => {
39
- const body = decisionBody(readDecisions());
40
- expect(body).toMatch(/--slice/);
41
- expect(body).toMatch(/closureOnly/);
42
- // DONE of a slice requires `awm sensors run --slice` + overall pass — not a loose
43
- // "slice…DONE" / "DONE…--slice" alternation that surviving prose elsewhere could satisfy.
44
- expect(body).toMatch(/(?:Task\s*\/\s*slice|slice)\s+DONE:\s*`awm sensors run --slice`[\s\S]{0,80}overall:\s*`?pass`?/i);
45
- expect(body).toMatch(/(?:full[- ]gate|full run|no --slice)[\s\S]{0,200}(?:QA|docs|finish|Change Record)|(?:QA|docs|finish|Change Record)[\s\S]{0,200}(?:full[- ]gate|full run)/i);
46
- // Partial flags are never closure evidence — all four must sit in that rule
47
- // (section-scoped to D-025 body; deleting the bullet fails).
48
- expect(body).toMatch(/`--slice`[\s\S]{0,100}`--fast`[\s\S]{0,100}`--slow`[\s\S]{0,100}`--changed`[\s\S]{0,160}(?:nunca|never)[\s\S]{0,100}closure/i);
49
- });
50
- it('points to the registry companion plan for skill wording', () => {
51
- const body = decisionBody(readDecisions());
52
- expect(body).toContain(COMPANION_PLAN);
53
- expect(body).toMatch(/awm-baseline-registry/);
54
- expect(body).toMatch(/skill/i);
55
- });
56
- it('avoids incomplete-prose sentinels in the decision body', () => {
57
- const body = decisionBody(readDecisions());
58
- expect(body).not.toMatch(/\bTODO\b/);
59
- expect(body).not.toMatch(/\bTBD\b/);
60
- expect(body).not.toMatch(/\bplaceholder\b/i);
61
- expect(body).not.toMatch(/\bdraft\b/i);
62
- });
63
- });