@dtlabs/ai-toolkit 0.24.6 → 0.24.7

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 CHANGED
@@ -1,4 +1,13 @@
1
1
  ## 0.1.4 (2026-07-21)
2
+ ## [0.24.7](https://github.com/dtlab-tech/ai-toolkit/compare/v0.24.6...v0.24.7) (2026-10-30)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * **pm-phase1:** route validator findings to a document by their prefix when the flags are omitted ([7bd9a38](https://github.com/dtlab-tech/ai-toolkit/commit/7bd9a38de571c07d233a5212dfba9213a1b7d562))
8
+ * **pm-phase1:** route validator findings to a document by their prefix when the flags are omitted ([f957d72](https://github.com/dtlab-tech/ai-toolkit/commit/f957d726294d2b563e67ba1c3f4e59f9c8d57be4))
9
+ * **pm-phase1:** route validator findings to a document by their prefix when the flags are omitted ([e33faef](https://github.com/dtlab-tech/ai-toolkit/commit/e33faefc4488f256e42ec459cefa547f7b5efbf2))
10
+
2
11
  ## [0.24.6](https://github.com/dtlab-tech/ai-toolkit/compare/v0.24.5...v0.24.6) (2026-10-29)
3
12
 
4
13
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dtlabs/ai-toolkit",
3
- "version": "0.24.6",
3
+ "version": "0.24.7",
4
4
  "description": "AI Toolkit — reusable agents and procedures for developers to build AI-powered applications.",
5
5
  "files": [
6
6
  "docs/",
@@ -744,8 +744,14 @@ return c.run(meta.name, featureDir, prefix, async () => {
744
744
  // now-stale self-report. The only authoritative signal for the final verdict is whether any
745
745
  // finding remains, from any source, after every check this cycle has run.
746
746
  const mergedValid = mergedFindings.length === 0
747
- const mergedNeedsTechSpecFix = result.needsTechSpecFix || newFindings.some(f => f.startsWith('Tech-Spec:'))
748
- const mergedNeedsRequirementsFix = result.needsRequirementsFix || newFindings.some(f => f.startsWith('Requirements:'))
747
+ // Routing reads the prefix of EVERY finding, the validator's own included: the validator is
748
+ // required to prefix each finding with the document it concerns (gaia-validate-feature-docs,
749
+ // output contract), and its own example verdict omits needsRequirementsFix/needsTechSpecFix
750
+ // altogether. Reading the prefix only on host-computed findings made a verdict with prefixed
751
+ // findings and no flags fail with "flagged neither document" (seen on FTR-034). A finding
752
+ // with no prefix and no flag still fails closed below.
753
+ const mergedNeedsTechSpecFix = result.needsTechSpecFix || mergedFindings.some(f => f.startsWith('Tech-Spec:'))
754
+ const mergedNeedsRequirementsFix = result.needsRequirementsFix || mergedFindings.some(f => f.startsWith('Requirements:'))
749
755
 
750
756
  // c.worker() already wrote result.report verbatim via its own outputs[0] contract; only
751
757
  // overwrite it when this cycle actually added findings the LLM's own report text doesn't