@planu/cli 5.3.4 → 5.3.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/CHANGELOG.md +15 -0
- package/dist/engine/execution/validate-job-executor.js +25 -10
- package/dist/engine/planu-core.darwin-arm64.node.manifest.json +7 -7
- package/dist/engine/planu-core.darwin-arm64.node.sbom.json +4 -4
- package/dist/engine/planu-core.darwin-x64.node.manifest.json +7 -7
- package/dist/engine/planu-core.darwin-x64.node.sbom.json +4 -4
- package/dist/engine/planu-core.linux-arm64-gnu.node.manifest.json +7 -7
- package/dist/engine/planu-core.linux-arm64-gnu.node.sbom.json +4 -4
- package/dist/engine/planu-core.linux-arm64-musl.node.manifest.json +7 -7
- package/dist/engine/planu-core.linux-arm64-musl.node.sbom.json +4 -4
- package/dist/engine/planu-core.linux-x64-gnu.node.manifest.json +7 -7
- package/dist/engine/planu-core.linux-x64-gnu.node.sbom.json +4 -4
- package/dist/engine/planu-core.linux-x64-musl.node.manifest.json +7 -7
- package/dist/engine/planu-core.linux-x64-musl.node.sbom.json +4 -4
- package/dist/engine/planu-core.win32-arm64-msvc.node.manifest.json +7 -7
- package/dist/engine/planu-core.win32-arm64-msvc.node.sbom.json +4 -4
- package/dist/engine/planu-core.win32-x64-msvc.node.manifest.json +7 -7
- package/dist/engine/planu-core.win32-x64-msvc.node.sbom.json +4 -4
- package/dist/engine/reconcile/apply-changes.d.ts +0 -12
- package/dist/engine/reconcile/apply-changes.js +11 -33
- package/dist/engine/reconcile/verify-write.js +2 -3
- package/dist/engine/rules-reconciler.js +21 -2
- package/dist/engine/spec-format/acceptance-criteria.js +7 -1
- package/dist/engine/universal-rules/catalog.js +6 -0
- package/dist/engine/universal-rules/rules/agent-teams.js +0 -2
- package/dist/engine/universal-rules/rules/planu-approval-gates.js +0 -1
- package/dist/engine/universal-rules/rules/planu-bdd-criteria.js +0 -1
- package/dist/engine/universal-rules/rules/planu-clean-code-no-comments.d.ts +3 -0
- package/dist/engine/universal-rules/rules/planu-clean-code-no-comments.js +30 -0
- package/dist/engine/universal-rules/rules/planu-debate-review.d.ts +3 -0
- package/dist/engine/universal-rules/rules/planu-debate-review.js +38 -0
- package/dist/engine/universal-rules/rules/planu-dogfood-bugs.js +0 -2
- package/dist/engine/universal-rules/rules/planu-english-specs.js +0 -1
- package/dist/engine/universal-rules/rules/planu-minimal-change.js +0 -2
- package/dist/engine/universal-rules/rules/planu-modes.js +0 -2
- package/dist/engine/universal-rules/rules/planu-release-policy.js +0 -1
- package/dist/engine/universal-rules/rules/planu-revert-proof-tests.d.ts +3 -0
- package/dist/engine/universal-rules/rules/planu-revert-proof-tests.js +34 -0
- package/dist/engine/universal-rules/rules/planu-sdd-model-routing.js +0 -1
- package/dist/engine/universal-rules/rules/planu-workflow.js +0 -2
- package/dist/engine/validator/validation-report-writer.js +1 -1
- package/dist/tools/reconcile-spec.d.ts +1 -1
- package/dist/tools/reconcile-spec.js +303 -178
- package/dist/tools/update-status/dod-gates.js +3 -3
- package/dist/types/reconcile.d.ts +5 -17
- package/dist/types/reconcile.js +1 -7
- package/package.json +9 -9
- package/planu-native.json +1 -1
- package/planu-plugin.json +1 -1
|
@@ -1,58 +1,46 @@
|
|
|
1
|
-
|
|
2
|
-
* Sections whose values do not appear as literal text in spec.md body —
|
|
3
|
-
* applied/verified at the metadata layer, never via string-replace.
|
|
4
|
-
* Shared by apply-changes.ts (skip) and verify-write.ts (skip).
|
|
5
|
-
*/
|
|
6
|
-
export declare const RECONCILE_METADATA_SECTIONS: ReadonlySet<string>;
|
|
7
|
-
/** A single failed post-write verification entry (Bug D). */
|
|
1
|
+
export declare const SECTIONS_WITHOUT_LITERAL_BODY_TEXT: ReadonlySet<string>;
|
|
8
2
|
export interface VerifyWriteFailure {
|
|
9
3
|
section: string;
|
|
10
4
|
newValue: string;
|
|
11
5
|
reason: string;
|
|
12
6
|
}
|
|
13
|
-
/** Result of verifyWriteSucceeded (Bug D). */
|
|
14
7
|
export interface VerifyWriteResult {
|
|
15
8
|
verified: boolean;
|
|
16
9
|
missingChanges: VerifyWriteFailure[];
|
|
17
10
|
}
|
|
18
|
-
/** A change that could not be applied to spec.md body (Bug D). */
|
|
19
11
|
export interface SkippedChange {
|
|
20
12
|
section: string;
|
|
21
13
|
originalValue: string;
|
|
22
14
|
reason: string;
|
|
15
|
+
reasonCategory: 'skipped' | 'ambiguous';
|
|
23
16
|
}
|
|
24
|
-
/** Result of applyChangesToSpec (Bug D). */
|
|
25
17
|
export interface ApplyChangesResult {
|
|
26
18
|
applied: number;
|
|
27
19
|
skipped: SkippedChange[];
|
|
28
20
|
fileWritten: boolean;
|
|
29
21
|
}
|
|
30
|
-
|
|
22
|
+
export interface ApplyChangesToSpecFilesResult {
|
|
23
|
+
auditWritten: boolean;
|
|
24
|
+
}
|
|
31
25
|
export interface SectionBounds {
|
|
32
26
|
start: number;
|
|
33
27
|
end: number;
|
|
34
28
|
}
|
|
35
|
-
/** Parsed snapshot of status.json used by status-reconciler (Bug G). */
|
|
36
29
|
export interface CurrentStatus {
|
|
37
30
|
totalSpecs: number;
|
|
38
31
|
content: Record<string, unknown>;
|
|
39
|
-
/** True when status.json exists; false when missing (ENOENT). */
|
|
40
32
|
exists: boolean;
|
|
41
|
-
/** True when status.json existed but could not be parsed/read for non-ENOENT reasons. */
|
|
42
33
|
corrupt: boolean;
|
|
43
34
|
}
|
|
44
|
-
/** Result of reconcileStatusFromDisk (Bug G). */
|
|
45
35
|
export interface StatusReconcileResult {
|
|
46
36
|
reconciled: boolean;
|
|
47
37
|
before: number;
|
|
48
38
|
after: number;
|
|
49
39
|
}
|
|
50
40
|
import type { ProjectKnowledge } from './project/core.js';
|
|
51
|
-
/** Result when a project was resolved via resolveProjectFromPath (Bug F). */
|
|
52
41
|
export interface ResolvedProject {
|
|
53
42
|
projectId: string;
|
|
54
43
|
knowledge: ProjectKnowledge;
|
|
55
|
-
/** True when knowledge was recovered from disk fingerprint. */
|
|
56
44
|
recovered: boolean;
|
|
57
45
|
}
|
|
58
46
|
//# sourceMappingURL=reconcile.d.ts.map
|
package/dist/types/reconcile.js
CHANGED
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
/**
|
|
3
|
-
* Sections whose values do not appear as literal text in spec.md body —
|
|
4
|
-
* applied/verified at the metadata layer, never via string-replace.
|
|
5
|
-
* Shared by apply-changes.ts (skip) and verify-write.ts (skip).
|
|
6
|
-
*/
|
|
7
|
-
export const RECONCILE_METADATA_SECTIONS = new Set([
|
|
1
|
+
export const SECTIONS_WITHOUT_LITERAL_BODY_TEXT = new Set([
|
|
8
2
|
'estimation',
|
|
9
3
|
'cost',
|
|
10
4
|
'status',
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@planu/cli",
|
|
3
|
-
"version": "5.3.
|
|
3
|
+
"version": "5.3.5",
|
|
4
4
|
"description": "Planu — MCP Server for Spec Driven Development with native Rust acceleration for hot paths. Cross-platform (Linux/macOS/Windows, x64/arm64, glibc/musl).",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -35,14 +35,14 @@
|
|
|
35
35
|
"packageName": "@planu/core"
|
|
36
36
|
},
|
|
37
37
|
"optionalDependencies": {
|
|
38
|
-
"@planu/core-darwin-arm64": "5.3.
|
|
39
|
-
"@planu/core-darwin-x64": "5.3.
|
|
40
|
-
"@planu/core-linux-arm64-gnu": "5.3.
|
|
41
|
-
"@planu/core-linux-arm64-musl": "5.3.
|
|
42
|
-
"@planu/core-linux-x64-gnu": "5.3.
|
|
43
|
-
"@planu/core-linux-x64-musl": "5.3.
|
|
44
|
-
"@planu/core-win32-arm64-msvc": "5.3.
|
|
45
|
-
"@planu/core-win32-x64-msvc": "5.3.
|
|
38
|
+
"@planu/core-darwin-arm64": "5.3.5",
|
|
39
|
+
"@planu/core-darwin-x64": "5.3.5",
|
|
40
|
+
"@planu/core-linux-arm64-gnu": "5.3.5",
|
|
41
|
+
"@planu/core-linux-arm64-musl": "5.3.5",
|
|
42
|
+
"@planu/core-linux-x64-gnu": "5.3.5",
|
|
43
|
+
"@planu/core-linux-x64-musl": "5.3.5",
|
|
44
|
+
"@planu/core-win32-arm64-msvc": "5.3.5",
|
|
45
|
+
"@planu/core-win32-x64-msvc": "5.3.5"
|
|
46
46
|
},
|
|
47
47
|
"engines": {
|
|
48
48
|
"node": ">=24.0.0"
|
package/planu-native.json
CHANGED
package/planu-plugin.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "dev.planu.cli",
|
|
3
3
|
"displayName": "Planu — Spec Driven Development",
|
|
4
4
|
"description": "Manage software specs, estimations, and autonomous SDD workflows. Language-agnostic MCP server for Claude Code.",
|
|
5
|
-
"version": "5.3.
|
|
5
|
+
"version": "5.3.5",
|
|
6
6
|
"icon": "assets/plugin/icon.svg",
|
|
7
7
|
"command": ["npx", "@planu/cli@latest"],
|
|
8
8
|
"packageName": "@planu/cli",
|