@rasensio/aidlc 1.10.1 → 1.10.5
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/dist/commands/add-action.d.ts.map +1 -1
- package/dist/commands/add-action.js +17 -2
- package/dist/commands/add-action.js.map +1 -1
- package/dist/commands/add-skill.d.ts.map +1 -1
- package/dist/commands/add-skill.js +13 -0
- package/dist/commands/add-skill.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +20 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/knowledge.d.ts.map +1 -1
- package/dist/commands/knowledge.js +11 -0
- package/dist/commands/knowledge.js.map +1 -1
- package/dist/commands/review.d.ts +27 -1
- package/dist/commands/review.d.ts.map +1 -1
- package/dist/commands/review.js +93 -8
- package/dist/commands/review.js.map +1 -1
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +13 -3
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/transition.d.ts.map +1 -1
- package/dist/commands/transition.js +7 -24
- package/dist/commands/transition.js.map +1 -1
- package/dist/core/index.d.ts +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/lifecycle.js +28 -5
- package/dist/core/lifecycle.js.map +1 -1
- package/dist/core/tty.d.ts +38 -0
- package/dist/core/tty.d.ts.map +1 -0
- package/dist/core/tty.js +40 -0
- package/dist/core/tty.js.map +1 -0
- package/dist/core/types.d.ts +6 -0
- package/dist/core/types.d.ts.map +1 -1
- package/dist/doctor/context.d.ts.map +1 -1
- package/dist/doctor/context.js +5 -1
- package/dist/doctor/context.js.map +1 -1
- package/dist/events/event-bus.d.ts.map +1 -1
- package/dist/events/event-bus.js +16 -13
- package/dist/events/event-bus.js.map +1 -1
- package/dist/events/plugin-hooks.d.ts.map +1 -1
- package/dist/events/plugin-hooks.js +12 -15
- package/dist/events/plugin-hooks.js.map +1 -1
- package/dist/events/run-command.d.ts +58 -0
- package/dist/events/run-command.d.ts.map +1 -0
- package/dist/events/run-command.js +110 -0
- package/dist/events/run-command.js.map +1 -0
- package/dist/menu/prompt.d.ts +7 -7
- package/dist/menu/prompt.d.ts.map +1 -1
- package/dist/menu/prompt.js +7 -9
- package/dist/menu/prompt.js.map +1 -1
- package/dist/traceability/cache.d.ts.map +1 -1
- package/dist/traceability/cache.js +9 -2
- package/dist/traceability/cache.js.map +1 -1
- package/dist/traceability/gate-criterion.d.ts +18 -0
- package/dist/traceability/gate-criterion.d.ts.map +1 -1
- package/dist/traceability/gate-criterion.js +94 -8
- package/dist/traceability/gate-criterion.js.map +1 -1
- package/package.json +2 -2
|
@@ -15,10 +15,76 @@
|
|
|
15
15
|
import { existsSync, readdirSync, readFileSync } from 'node:fs';
|
|
16
16
|
import { join } from 'node:path';
|
|
17
17
|
import { parse as parseYaml } from 'yaml';
|
|
18
|
+
import { loadTemplates as loadBuiltInTemplates } from '@rasensio/aidlc-content';
|
|
19
|
+
import { loadTemplates, resolveTemplate } from '../core/template-resolver.js';
|
|
18
20
|
import { parseRequirements } from './parser.js';
|
|
19
21
|
import { DEFAULT_TEST_GLOBS, discoverTestFiles, scanFiles } from './scanner.js';
|
|
20
22
|
import { parseCoverageBlock } from './coverage-block.js';
|
|
21
23
|
import { buildMatrix } from './matrix.js';
|
|
24
|
+
/** Legacy coverage file, kept readable for instances written before the fix (AC-11). */
|
|
25
|
+
const LEGACY_COVERAGE_FILE = 'testing.md';
|
|
26
|
+
/**
|
|
27
|
+
* Files that may carry an `ac-coverage` block, MOST-AUTHORITATIVE FIRST:
|
|
28
|
+
*
|
|
29
|
+
* 1. the testing phase's REQUIRED artifacts, per the instance's resolved template
|
|
30
|
+
* (so a project-local template override under `.aidlc/templates/` is honoured);
|
|
31
|
+
* 2. `testing.md` — legacy fallback for instances written under the old hardcoded
|
|
32
|
+
* path. Kept for AC-11, not for new use.
|
|
33
|
+
*
|
|
34
|
+
* Required-only, deliberately: `phase-testing.yaml` also lists OPTIONAL artifacts
|
|
35
|
+
* (9 of 17 instances on disk name `coverage-report.md`), and reading a coverage block
|
|
36
|
+
* out of a coverage report would be surprising and wrong. `phase-testing.yaml` does
|
|
37
|
+
* not mark which entries are required, so the required set comes from the template.
|
|
38
|
+
*
|
|
39
|
+
* Resolution happens here rather than through a new parameter because
|
|
40
|
+
* `evaluateTraceabilityCriterion` has four call sites (`cache.ts`, `commands/gate.ts`,
|
|
41
|
+
* `commands/transition.ts`) and changing its signature would touch all of them.
|
|
42
|
+
*/
|
|
43
|
+
export function coverageSources(projectRoot, instanceName) {
|
|
44
|
+
const sources = [];
|
|
45
|
+
const instanceDir = join(projectRoot, '.aidlc', 'state', instanceName);
|
|
46
|
+
try {
|
|
47
|
+
const instance = parseYaml(readFileSync(join(instanceDir, 'instance.yaml'), 'utf8'));
|
|
48
|
+
const templateName = instance?.template;
|
|
49
|
+
if (templateName) {
|
|
50
|
+
const all = loadAllTemplatesForCoverage(projectRoot);
|
|
51
|
+
const raw = all.get(templateName);
|
|
52
|
+
if (raw) {
|
|
53
|
+
const resolved = resolveTemplate(raw, all);
|
|
54
|
+
const testingPhase = resolved.phases.find((p) => p.name === 'testing');
|
|
55
|
+
for (const artifact of testingPhase?.required_artifacts ?? []) {
|
|
56
|
+
if (!sources.includes(artifact.name))
|
|
57
|
+
sources.push(artifact.name);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
// Unreadable instance.yaml or template — fall through to the legacy file.
|
|
64
|
+
}
|
|
65
|
+
if (!sources.includes(LEGACY_COVERAGE_FILE))
|
|
66
|
+
sources.push(LEGACY_COVERAGE_FILE);
|
|
67
|
+
return sources;
|
|
68
|
+
}
|
|
69
|
+
/** Built-in templates plus any project-local overrides. */
|
|
70
|
+
function loadAllTemplatesForCoverage(projectRoot) {
|
|
71
|
+
const templates = new Map();
|
|
72
|
+
try {
|
|
73
|
+
for (const tpl of loadBuiltInTemplates()) {
|
|
74
|
+
templates.set(tpl.name, tpl.raw);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
catch {
|
|
78
|
+
// Content package unavailable — project-local templates may still resolve.
|
|
79
|
+
}
|
|
80
|
+
const customDir = join(projectRoot, '.aidlc', 'templates');
|
|
81
|
+
if (existsSync(customDir)) {
|
|
82
|
+
for (const [name, tpl] of loadTemplates(customDir)) {
|
|
83
|
+
templates.set(name, tpl);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return templates;
|
|
87
|
+
}
|
|
22
88
|
/** Message template callers use for unsatisfied criteria / violations. */
|
|
23
89
|
export function uncoveredMessage(acId) {
|
|
24
90
|
return `acceptance criterion AC-${acId} has no referencing test (traceability)`;
|
|
@@ -86,7 +152,9 @@ export function evaluateTraceabilityCriterion(projectRoot, instanceName, phaseNa
|
|
|
86
152
|
if (!parsed || parsed.acShapedLines === 0)
|
|
87
153
|
return null;
|
|
88
154
|
const requirementsPath = `.aidlc/state/${instanceName}/requirements.md`;
|
|
89
|
-
const
|
|
155
|
+
const sources = coverageSources(projectRoot, instanceName);
|
|
156
|
+
const authoritative = sources.find((f) => existsSync(join(instanceDir, f)));
|
|
157
|
+
const testingPath = `.aidlc/state/${instanceName}/${authoritative ?? LEGACY_COVERAGE_FILE}`;
|
|
90
158
|
// Warnings ordered by phase: parse → glob/discovery → scan → block → matrix
|
|
91
159
|
// (NFR4). Registry parse warnings are scoped to the target instance only.
|
|
92
160
|
const warnings = [...parsed.warnings];
|
|
@@ -100,14 +168,32 @@ export function evaluateTraceabilityCriterion(projectRoot, instanceName, phaseNa
|
|
|
100
168
|
warnings.push(...discovery.warnings);
|
|
101
169
|
const scan = scanFiles(projectRoot, discovery.files);
|
|
102
170
|
warnings.push(...scan.warnings);
|
|
171
|
+
// PRECEDENCE, not union: the first source that exists provides the coverage block and
|
|
172
|
+
// later sources are not read. A union would let a stale `testing.md` keep an AC covered
|
|
173
|
+
// after the template-declared artifact had dropped the claim — coverage no current
|
|
174
|
+
// artifact asserts. When a later source also exists, a warning names it as ignored so
|
|
175
|
+
// the situation is visible rather than silent.
|
|
103
176
|
let blockEntries = [];
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
177
|
+
if (authoritative) {
|
|
178
|
+
try {
|
|
179
|
+
const block = parseCoverageBlock(readFileSync(join(instanceDir, authoritative), 'utf8'));
|
|
180
|
+
blockEntries = block.entries;
|
|
181
|
+
warnings.push(...block.warnings);
|
|
182
|
+
}
|
|
183
|
+
catch {
|
|
184
|
+
// Unreadable despite existing — scan-only coverage.
|
|
185
|
+
}
|
|
186
|
+
for (const ignored of sources) {
|
|
187
|
+
if (ignored === authoritative)
|
|
188
|
+
continue;
|
|
189
|
+
if (!existsSync(join(instanceDir, ignored)))
|
|
190
|
+
continue;
|
|
191
|
+
const block = parseCoverageBlock(readFileSync(join(instanceDir, ignored), 'utf8'));
|
|
192
|
+
if (block.entries.length > 0) {
|
|
193
|
+
warnings.push(`ac-coverage block in "${ignored}" ignored: "${authoritative}" is authoritative ` +
|
|
194
|
+
`for this template (${block.entries.length} ${block.entries.length === 1 ? 'entry' : 'entries'} not counted)`);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
111
197
|
}
|
|
112
198
|
const matrix = buildMatrix({
|
|
113
199
|
instance: instanceName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gate-criterion.js","sourceRoot":"","sources":["../../src/traceability/gate-criterion.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAChE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"gate-criterion.js","sourceRoot":"","sources":["../../src/traceability/gate-criterion.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rasensio/aidlc",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.5",
|
|
4
4
|
"description": "AI Development Lifecycle Framework — structured lifecycle guidance for AI coding agents across platforms",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/cli.js",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"commander": "15.0.0",
|
|
25
25
|
"picomatch": "4.0.5",
|
|
26
26
|
"yaml": "2.9.0",
|
|
27
|
-
"@rasensio/aidlc-content": "1.10.
|
|
27
|
+
"@rasensio/aidlc-content": "1.10.5"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@types/node": "22.15.32",
|