ma-agents 3.15.2 → 3.15.4
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.
|
@@ -2106,7 +2106,9 @@ function classifyFile(fileId) {
|
|
|
2106
2106
|
if (/^\d+-\d+-[a-z0-9][a-z0-9-]*\.md$/.test(basename4)) return "story";
|
|
2107
2107
|
if (/product-brief/.test(basename4)) return "product-brief";
|
|
2108
2108
|
if (lowerFileId.includes("/briefs/")) return "brief";
|
|
2109
|
-
if (/prd/.test(basename4) || /product-requirements/.test(basename4))
|
|
2109
|
+
if ((/prd/.test(basename4) || /product-requirements/.test(basename4)) && !/(validation|report|checklist|review|cohesion|assessment)/.test(basename4)) {
|
|
2110
|
+
return "prd";
|
|
2111
|
+
}
|
|
2110
2112
|
if (/architecture/.test(basename4)) return "architecture";
|
|
2111
2113
|
if (/epic/.test(basename4)) return "epics";
|
|
2112
2114
|
if (basename4.endsWith(".md") || basename4.endsWith(".yaml") || basename4.endsWith(".yml")) {
|
|
@@ -14292,7 +14294,7 @@ function renderOrphanPage(manifest, outDir) {
|
|
|
14292
14294
|
}
|
|
14293
14295
|
|
|
14294
14296
|
// lib/knowledge-atlas/src/generate.ts
|
|
14295
|
-
var MANIFEST_VERSION =
|
|
14297
|
+
var MANIFEST_VERSION = 3;
|
|
14296
14298
|
function normPath(p) {
|
|
14297
14299
|
return path11.resolve(p).replace(/[\\/]+$/, "");
|
|
14298
14300
|
}
|
|
@@ -51,8 +51,16 @@ import { renderOrphanPage } from './render/orphan.js';
|
|
|
51
51
|
* pre-29.8 engine) has NO such nodes/edges cached; a version bump forces the
|
|
52
52
|
* one-time full re-extraction that materializes them (verified on Prophesee:
|
|
53
53
|
* without this, an in-place re-run kept 0 edges).
|
|
54
|
+
*
|
|
55
|
+
* 3.15.3 bumps 2 → 3: `classifyFile()` no longer types `prd-validation-report.md`
|
|
56
|
+
* (and other prd-derivative reports) as 'prd'. The DocType is baked into each
|
|
57
|
+
* cached FileRecord, and the incremental diff reuses unchanged records verbatim —
|
|
58
|
+
* so on an in-place re-run those files kept their old 'prd' type and continued
|
|
59
|
+
* winning the requirement def-site election. Bumping the version forces the
|
|
60
|
+
* one-time full re-extraction that re-classifies them (verified on Prophesys:
|
|
61
|
+
* without this, FR links kept pointing at prd-validation-report.html).
|
|
54
62
|
*/
|
|
55
|
-
const MANIFEST_VERSION =
|
|
63
|
+
const MANIFEST_VERSION = 3;
|
|
56
64
|
|
|
57
65
|
/**
|
|
58
66
|
* Path helpers for the Story 29.7 purge safety gates (MUST-FIX #1).
|
|
@@ -126,8 +126,20 @@ export function classifyFile(fileId: string): DocType {
|
|
|
126
126
|
// e.g. briefs/epic-overview.md must be 'brief', not 'epics'.
|
|
127
127
|
if (lowerFileId.includes('/briefs/')) return 'brief';
|
|
128
128
|
|
|
129
|
-
// PRD: filename contains 'prd' or matches product-requirements
|
|
130
|
-
|
|
129
|
+
// PRD: filename contains 'prd' or matches product-requirements — but NOT a
|
|
130
|
+
// derivative document *about* the PRD (validation report, checklist, review,
|
|
131
|
+
// cohesion/assessment report). Those score or critique the requirements; the
|
|
132
|
+
// requirements themselves live in the PRD proper. Classifying e.g.
|
|
133
|
+
// `prd-validation-report.md` as 'prd' made it a rival definition-site, so an
|
|
134
|
+
// FR the PRD actually defines could anchor in the report instead — the real
|
|
135
|
+
// Prophesee bug where FR1/FR3/FR21 links pointed at prd-validation-report.html
|
|
136
|
+
// rather than the PRD. Let those fall through to 'report'.
|
|
137
|
+
if (
|
|
138
|
+
(/prd/.test(basename) || /product-requirements/.test(basename)) &&
|
|
139
|
+
!/(validation|report|checklist|review|cohesion|assessment)/.test(basename)
|
|
140
|
+
) {
|
|
141
|
+
return 'prd';
|
|
142
|
+
}
|
|
131
143
|
|
|
132
144
|
// Architecture document
|
|
133
145
|
if (/architecture/.test(basename)) return 'architecture';
|