@dommaker/harness 1.2.0 → 1.2.2
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 +12 -0
- package/dist/cli/commands/check.js +1 -1
- package/dist/cli/commands/check.js.map +1 -1
- package/dist/cli/commands/constraints-report.js +1 -1
- package/dist/cli/commands/constraints-report.js.map +1 -1
- package/dist/cli/commands/constraints-retire.d.ts +6 -3
- package/dist/cli/commands/constraints-retire.d.ts.map +1 -1
- package/dist/cli/commands/constraints-retire.js +34 -25
- package/dist/cli/commands/constraints-retire.js.map +1 -1
- package/dist/cli/commands/init.d.ts +21 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +137 -3
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/core/constraints/checkers/governance-presence.d.ts +20 -0
- package/dist/core/constraints/checkers/governance-presence.d.ts.map +1 -0
- package/dist/core/constraints/checkers/governance-presence.js +76 -0
- package/dist/core/constraints/checkers/governance-presence.js.map +1 -0
- package/dist/core/constraints/checkers/index.d.ts.map +1 -1
- package/dist/core/constraints/checkers/index.js +2 -0
- package/dist/core/constraints/checkers/index.js.map +1 -1
- package/dist/core/constraints/definitions/guidelines.d.ts.map +1 -1
- package/dist/core/constraints/definitions/guidelines.js +21 -0
- package/dist/core/constraints/definitions/guidelines.js.map +1 -1
- package/dist/core/constraints/injection-drift.d.ts +29 -4
- package/dist/core/constraints/injection-drift.d.ts.map +1 -1
- package/dist/core/constraints/injection-drift.js +52 -20
- package/dist/core/constraints/injection-drift.js.map +1 -1
- package/package.json +1 -1
- package/src/__tests__/governance-presence.test.ts +129 -0
- package/src/__tests__/iron-laws.test.ts +7 -7
- package/src/cli/commands/CONTEXT.md +4 -1
- package/src/cli/commands/__tests__/constraints-report.test.ts +2 -2
- package/src/cli/commands/__tests__/constraints-retire.test.ts +45 -4
- package/src/cli/commands/__tests__/init-injection.test.ts +202 -0
- package/src/cli/commands/__tests__/init.test.ts +43 -0
- package/src/cli/commands/__tests__/sync-docs-agents.test.ts +28 -0
- package/src/cli/commands/check.ts +1 -1
- package/src/cli/commands/constraints-report.ts +1 -1
- package/src/cli/commands/constraints-retire.ts +38 -27
- package/src/cli/commands/init.ts +150 -3
- package/src/core/CONTEXT.md +1 -1
- package/src/core/constraints/__tests__/injection-drift.test.ts +90 -0
- package/src/core/constraints/checkers/governance-presence.ts +74 -0
- package/src/core/constraints/checkers/index.ts +2 -0
- package/src/core/constraints/definitions/guidelines.ts +22 -0
- package/src/core/constraints/injection-drift.ts +60 -21
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* governance_presence:治理契约在场守护(studio #302,ADR 2026-08-21 落点模型)
|
|
3
|
+
*
|
|
4
|
+
* 治理契约正本 = AGENTS.md 手写 `PRESERVE:governance` 段(旧模型仓 = CLAUDE.md
|
|
5
|
+
* Governance Rules / HARNESS_CONSTRAINTS 注入段)。PRESERVE 只保「存在」不保「在场」:
|
|
6
|
+
* 段被删除/掏空后 sync-docs 重新生成会静默丢失,此处补「在场」校验。
|
|
7
|
+
*
|
|
8
|
+
* ADR-0001 存在性探测:项目未采用 harness 治理(无 .harness/config.yml)→ skip。
|
|
9
|
+
* 向后兼容:旧模型仓(CLAUDE.md 有治理块、AGENTS.md 无 PRESERVE:governance)→ pass,
|
|
10
|
+
* 不强制迁移;两处都没有才报违规。
|
|
11
|
+
*/
|
|
12
|
+
import type { ConstraintCheck } from './types';
|
|
13
|
+
/** 治理契约 PRESERVE 段名(ADR 落点模型约定) */
|
|
14
|
+
export declare const GOVERNANCE_PRESERVE_NAME = "governance";
|
|
15
|
+
/** AGENTS.md 是否存在非空 PRESERVE:governance 块(标记须独占一行,与 preserve-block.ts 同语义) */
|
|
16
|
+
export declare function hasGovernancePreserveBlock(agentsMdPath: string): boolean;
|
|
17
|
+
/** CLAUDE.md 是否存在治理块(与 agents-syncer getGovernanceInfo 同判定,旧模型仓豁免) */
|
|
18
|
+
export declare function hasClaudeGovernance(claudeMdPath: string): boolean;
|
|
19
|
+
export declare const governancePresence: ConstraintCheck;
|
|
20
|
+
//# sourceMappingURL=governance-presence.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"governance-presence.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/governance-presence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,mCAAmC;AACnC,eAAO,MAAM,wBAAwB,eAAe,CAAC;AAIrD,8EAA8E;AAC9E,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAcxE;AAED,sEAAsE;AACtE,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAQjE;AAED,eAAO,MAAM,kBAAkB,EAAE,eAuBhC,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* governance_presence:治理契约在场守护(studio #302,ADR 2026-08-21 落点模型)
|
|
4
|
+
*
|
|
5
|
+
* 治理契约正本 = AGENTS.md 手写 `PRESERVE:governance` 段(旧模型仓 = CLAUDE.md
|
|
6
|
+
* Governance Rules / HARNESS_CONSTRAINTS 注入段)。PRESERVE 只保「存在」不保「在场」:
|
|
7
|
+
* 段被删除/掏空后 sync-docs 重新生成会静默丢失,此处补「在场」校验。
|
|
8
|
+
*
|
|
9
|
+
* ADR-0001 存在性探测:项目未采用 harness 治理(无 .harness/config.yml)→ skip。
|
|
10
|
+
* 向后兼容:旧模型仓(CLAUDE.md 有治理块、AGENTS.md 无 PRESERVE:governance)→ pass,
|
|
11
|
+
* 不强制迁移;两处都没有才报违规。
|
|
12
|
+
*/
|
|
13
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
+
exports.governancePresence = exports.GOVERNANCE_PRESERVE_NAME = void 0;
|
|
15
|
+
exports.hasGovernancePreserveBlock = hasGovernancePreserveBlock;
|
|
16
|
+
exports.hasClaudeGovernance = hasClaudeGovernance;
|
|
17
|
+
const fs_1 = require("fs");
|
|
18
|
+
const path_1 = require("path");
|
|
19
|
+
const project_config_loader_1 = require("../../project-config-loader");
|
|
20
|
+
/** 治理契约 PRESERVE 段名(ADR 落点模型约定) */
|
|
21
|
+
exports.GOVERNANCE_PRESERVE_NAME = 'governance';
|
|
22
|
+
const GOVERNANCE_BEGIN_RE = /^<!-- PRESERVE:governance -->\s*$/m;
|
|
23
|
+
/** AGENTS.md 是否存在非空 PRESERVE:governance 块(标记须独占一行,与 preserve-block.ts 同语义) */
|
|
24
|
+
function hasGovernancePreserveBlock(agentsMdPath) {
|
|
25
|
+
let content;
|
|
26
|
+
try {
|
|
27
|
+
content = (0, fs_1.readFileSync)(agentsMdPath, 'utf-8');
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
const beginMatch = GOVERNANCE_BEGIN_RE.exec(content);
|
|
33
|
+
if (!beginMatch)
|
|
34
|
+
return false;
|
|
35
|
+
const rest = content.slice(beginMatch.index + beginMatch[0].length);
|
|
36
|
+
const endIdx = rest.indexOf(`<!-- /PRESERVE:${exports.GOVERNANCE_PRESERVE_NAME} -->`);
|
|
37
|
+
if (endIdx === -1)
|
|
38
|
+
return false;
|
|
39
|
+
// 块体(首尾标记之间)去空白后非空才算「在场」
|
|
40
|
+
return rest.slice(0, endIdx).trim().length > 0;
|
|
41
|
+
}
|
|
42
|
+
/** CLAUDE.md 是否存在治理块(与 agents-syncer getGovernanceInfo 同判定,旧模型仓豁免) */
|
|
43
|
+
function hasClaudeGovernance(claudeMdPath) {
|
|
44
|
+
let content;
|
|
45
|
+
try {
|
|
46
|
+
content = (0, fs_1.readFileSync)(claudeMdPath, 'utf-8');
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
return /^##\s+Governance Rules/m.test(content) || content.includes('HARNESS_CONSTRAINTS_START');
|
|
52
|
+
}
|
|
53
|
+
exports.governancePresence = {
|
|
54
|
+
id: 'governance_presence',
|
|
55
|
+
async evaluate(env) {
|
|
56
|
+
const projectPath = env.projectPath;
|
|
57
|
+
// 存在性探测:无 harness 配置 = 未采用治理约定 → skip(不计 pass/fail)
|
|
58
|
+
let adopted = false;
|
|
59
|
+
try {
|
|
60
|
+
adopted = (0, project_config_loader_1.loadRawProjectConfig)(projectPath) !== undefined;
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
adopted = false;
|
|
64
|
+
}
|
|
65
|
+
if (!adopted)
|
|
66
|
+
return 'skip';
|
|
67
|
+
if (hasGovernancePreserveBlock((0, path_1.join)(projectPath, 'AGENTS.md')))
|
|
68
|
+
return true;
|
|
69
|
+
if (hasClaudeGovernance((0, path_1.join)(projectPath, 'CLAUDE.md')))
|
|
70
|
+
return true;
|
|
71
|
+
console.error('[governance_presence] 治理契约缺失:AGENTS.md 无非空 PRESERVE:governance 段,' +
|
|
72
|
+
'且 CLAUDE.md 无 Governance Rules 块——约束正本静默丢失,请恢复其一');
|
|
73
|
+
return false;
|
|
74
|
+
},
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=governance-presence.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"governance-presence.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/governance-presence.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AAaH,gEAcC;AAGD,kDAQC;AApCD,2BAAkC;AAClC,+BAA4B;AAC5B,uEAAmE;AAGnE,mCAAmC;AACtB,QAAA,wBAAwB,GAAG,YAAY,CAAC;AAErD,MAAM,mBAAmB,GAAG,oCAAoC,CAAC;AAEjE,8EAA8E;AAC9E,SAAgB,0BAA0B,CAAC,YAAoB;IAC7D,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,IAAA,iBAAY,EAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,CAAC,UAAU;QAAE,OAAO,KAAK,CAAC;IAC9B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,kBAAkB,gCAAwB,MAAM,CAAC,CAAC;IAC9E,IAAI,MAAM,KAAK,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAChC,yBAAyB;IACzB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AACjD,CAAC;AAED,sEAAsE;AACtE,SAAgB,mBAAmB,CAAC,YAAoB;IACtD,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,IAAA,iBAAY,EAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,yBAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;AAClG,CAAC;AAEY,QAAA,kBAAkB,GAAoB;IACjD,EAAE,EAAE,qBAAqB;IACzB,KAAK,CAAC,QAAQ,CAAC,GAAG;QAChB,MAAM,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;QAEpC,oDAAoD;QACpD,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC;YACH,OAAO,GAAG,IAAA,4CAAoB,EAAC,WAAW,CAAC,KAAK,SAAS,CAAC;QAC5D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,OAAO,MAAM,CAAC;QAE5B,IAAI,0BAA0B,CAAC,IAAA,WAAI,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5E,IAAI,mBAAmB,CAAC,IAAA,WAAI,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;QAErE,OAAO,CAAC,KAAK,CACX,mEAAmE;YACnE,kDAAkD,CACnD,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;CACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAyD/C;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAE1E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC"}
|
|
@@ -20,6 +20,7 @@ const capability_sync_1 = require("./capability-sync");
|
|
|
20
20
|
const context_doc_sync_1 = require("./context-doc-sync");
|
|
21
21
|
const docs_freshness_1 = require("./docs-freshness");
|
|
22
22
|
const no_hardcoded_credentials_1 = require("./no-hardcoded-credentials");
|
|
23
|
+
const governance_presence_1 = require("./governance-presence");
|
|
23
24
|
const CHECKS = [
|
|
24
25
|
// Iron Laws
|
|
25
26
|
iron_flags_1.noCompletionWithoutVerification,
|
|
@@ -32,6 +33,7 @@ const CHECKS = [
|
|
|
32
33
|
no_bypass_checkpoint_1.noBypassCheckpoint,
|
|
33
34
|
capability_sync_1.capabilitySync,
|
|
34
35
|
context_doc_sync_1.contextDocSync,
|
|
36
|
+
governance_presence_1.governancePresence,
|
|
35
37
|
];
|
|
36
38
|
const registry = new Map(CHECKS.map(c => [c.id, c]));
|
|
37
39
|
// ========================================
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AA+DH,gDAEC;AAKD,oDAEC;AArED,gDAAmD;AAEnD,6CAIsB;AACtB,iEAA4D;AAC5D,qEAAgE;AAChE,uDAAmD;AACnD,yDAAoD;AACpD,qDAAiD;AACjD,yEAAoE;AACpE,+DAA2D;AAE3D,MAAM,MAAM,GAAsB;IAChC,YAAY;IACZ,4CAA+B;IAC/B,gCAAmB;IACnB,+CAAkC;IAClC,6CAAoB;IACpB,8BAAa;IACb,aAAa;IACb,iDAAsB;IACtB,yCAAkB;IAClB,gCAAc;IACd,iCAAc;IACd,wCAAkB;CACnB,CAAC;AAEF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAA0B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9E,2CAA2C;AAC3C,eAAe;AACf,2CAA2C;AAE3C,MAAM,gBAAgB,GAAG,IAAA,+BAAiB,GAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;AAE7E,KAAK,MAAM,CAAC,IAAI,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,2CAA2C,CAAC,CAAC,EAAE,gBAAgB;YAC/D,6CAA6C,CAC9C,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;IACjC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,kCAAkC,EAAE,4BAA4B;YAChE,gCAAgC,CACjC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,EAAU;IAC3C,OAAO,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB;IAClC,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,iCAAwC;AAA/B,sGAAA,aAAa,OAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guidelines.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/definitions/guidelines.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"guidelines.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/definitions/guidelines.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CA8GjD,CAAC"}
|
|
@@ -94,5 +94,26 @@ exports.GUIDELINES = {
|
|
|
94
94
|
- 测试目录(__tests__、test)
|
|
95
95
|
- 生成代码目录(dist、build、generated)`,
|
|
96
96
|
},
|
|
97
|
+
/**
|
|
98
|
+
* 治理契约在场守护(studio #302,ADR 2026-08-21 落点模型)
|
|
99
|
+
* 原因:PRESERVE 只保「存在」不保「在场」——AGENTS.md 治理段被删除/掏空后
|
|
100
|
+
* sync-docs 重新生成会静默丢失约束正本
|
|
101
|
+
*/
|
|
102
|
+
governance_presence: {
|
|
103
|
+
id: 'governance_presence',
|
|
104
|
+
kind: 'check',
|
|
105
|
+
rule: 'GOVERNANCE CONTRACT MUST BE PRESENT (AGENTS.MD PRESERVE:GOVERNANCE BLOCK OR CLAUDE.MD GOVERNANCE RULES)',
|
|
106
|
+
message: '治理契约缺失:AGENTS.md 缺少非空 PRESERVE:governance 段,且 CLAUDE.md 无 Governance Rules 块',
|
|
107
|
+
level: 'guideline',
|
|
108
|
+
trigger: ['file_modification', 'module_creation', 'module_modification', 'doc_update', 'config_change', 'commit'],
|
|
109
|
+
enforcement: 'governance-presence-check',
|
|
110
|
+
description: `治理契约(约束清单正本)必须在场,两处居其一:
|
|
111
|
+
- 新模型:AGENTS.md 手写 \`<!-- PRESERVE:governance -->\` 段(块体非空)
|
|
112
|
+
- 旧模型:CLAUDE.md 的 \`## Governance Rules\` 块 / HARNESS_CONSTRAINTS 注入段
|
|
113
|
+
|
|
114
|
+
PRESERVE 机制只保证「存在的段重新生成时保留」,不保证「段在场」——段被删除或掏空后,
|
|
115
|
+
sync-docs 重新生成会静默丢弃治理契约。本检查在 harness check 时校验在场性,防静默丢失。
|
|
116
|
+
未采用 harness 治理(无 .harness/config.yml)的项目跳过评估(skip)。`,
|
|
117
|
+
},
|
|
97
118
|
};
|
|
98
119
|
//# sourceMappingURL=guidelines.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guidelines.js","sourceRoot":"","sources":["../../../../src/core/constraints/definitions/guidelines.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAIU,QAAA,UAAU,GAA+B;IACpD;;;OAGG;IACH,wBAAwB,EAAE;QACxB,EAAE,EAAE,0BAA0B;QAC9B,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,4EAA4E;QAClF,OAAO,EAAE,sCAAsC;QAC/C,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,CAAC,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,CAAC;QACzE,WAAW,EAAE,iBAAiB;QAC9B,WAAW,EAAE,4KAA4K;QACzL,eAAe,EAAE,sDAAsD;KACxE;IAED;;;OAGG;IACH,oBAAoB,EAAE;QACpB,EAAE,EAAE,sBAAsB;QAC1B,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,mCAAmC;QAChD,eAAe,EAAE,8EAA8E;KAChG;IAED;;;OAGG;IACH,eAAe,EAAE;QACf,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,0CAA0C;QAChD,OAAO,EAAE,6BAA6B;QACtC,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;QAC1F,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;;;;;;;;;;;;;yFAawE;KACtF;IAED;;;OAGG;IACH,gBAAgB,EAAE;QAChB,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,wCAAwC;QAC9C,OAAO,EAAE,oDAAoD;QAC7D,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,eAAe;QAC5B,WAAW,EAAE;;;;;;;;;;;;;+BAac;KAC5B;CACF,CAAC"}
|
|
1
|
+
{"version":3,"file":"guidelines.js","sourceRoot":"","sources":["../../../../src/core/constraints/definitions/guidelines.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAIU,QAAA,UAAU,GAA+B;IACpD;;;OAGG;IACH,wBAAwB,EAAE;QACxB,EAAE,EAAE,0BAA0B;QAC9B,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,4EAA4E;QAClF,OAAO,EAAE,sCAAsC;QAC/C,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,CAAC,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,CAAC;QACzE,WAAW,EAAE,iBAAiB;QAC9B,WAAW,EAAE,4KAA4K;QACzL,eAAe,EAAE,sDAAsD;KACxE;IAED;;;OAGG;IACH,oBAAoB,EAAE;QACpB,EAAE,EAAE,sBAAsB;QAC1B,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,0BAA0B;QAChC,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE,mCAAmC;QAChD,eAAe,EAAE,8EAA8E;KAChG;IAED;;;OAGG;IACH,eAAe,EAAE;QACf,EAAE,EAAE,iBAAiB;QACrB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,0CAA0C;QAChD,OAAO,EAAE,6BAA6B;QACtC,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,CAAC,iBAAiB,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;QAC1F,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;;;;;;;;;;;;;yFAawE;KACtF;IAED;;;OAGG;IACH,gBAAgB,EAAE;QAChB,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,wCAAwC;QAC9C,OAAO,EAAE,oDAAoD;QAC7D,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,eAAe;QAC5B,WAAW,EAAE;;;;;;;;;;;;;+BAac;KAC5B;IAED;;;;OAIG;IACH,mBAAmB,EAAE;QACnB,EAAE,EAAE,qBAAqB;QACzB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,yGAAyG;QAC/G,OAAO,EAAE,8EAA8E;QACvF,KAAK,EAAE,WAAW;QAClB,OAAO,EAAE,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,CAAC;QACjH,WAAW,EAAE,2BAA2B;QACxC,WAAW,EAAE;;;;;;oDAMmC;KACjD;CACF,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* 治理约束注入段漂移校验(ADR-0001 决策 7)
|
|
3
3
|
*
|
|
4
4
|
* 检测三类漂移:
|
|
5
5
|
* 1. 版本漂移:标记段内 `<!-- version: x -->` ≠ 当前 harness 包版本
|
|
@@ -9,15 +9,24 @@
|
|
|
9
9
|
* 3. 重复章节:标记段之外还存在另一个 `## Governance Rules` 标题
|
|
10
10
|
* (init 旧版本在无标记时追加第二个同名章节的历史问题)
|
|
11
11
|
*
|
|
12
|
+
* 落点路由(studio #307,ADR 2026-08-21 落点模型):注入段可能在
|
|
13
|
+
* CLAUDE.md(旧模型仓)或 AGENTS.md `PRESERVE:governance` 段内(新模型仓),
|
|
14
|
+
* 与 init 的 setupGovernanceConstraints 路由一致——CLAUDE.md 有标记优先。
|
|
15
|
+
*
|
|
12
16
|
* 纯检测、只读:不改任何文件。check 仅警告不阻断,详细差异进 report。
|
|
13
|
-
*
|
|
17
|
+
* 两处均无标记段 = 未注入,不算漂移(report 一句话提示,check 不警告)。
|
|
14
18
|
*/
|
|
19
|
+
/** 注入段落点文件名(检测顺序即路由优先级:旧模型仓 CLAUDE.md 豁免优先) */
|
|
20
|
+
declare const INJECTION_FILES: readonly ["CLAUDE.md", "AGENTS.md"];
|
|
21
|
+
export type InjectionFile = (typeof INJECTION_FILES)[number];
|
|
15
22
|
/** 注入漂移检测结果 */
|
|
16
23
|
export interface InjectionDrift {
|
|
17
24
|
/** 是否存在任一漂移(版本/内容/重复章节) */
|
|
18
25
|
hasDrift: boolean;
|
|
19
|
-
/** CLAUDE.md
|
|
26
|
+
/** CLAUDE.md / AGENTS.md 均无约束标记段(未注入,不算漂移) */
|
|
20
27
|
notInjected: boolean;
|
|
28
|
+
/** 注入段落点文件(未注入时 undefined) */
|
|
29
|
+
injectionFile?: InjectionFile;
|
|
21
30
|
/** 版本漂移:注入段版本 ≠ 当前 harness 版本 */
|
|
22
31
|
versionDrift?: {
|
|
23
32
|
expected: string;
|
|
@@ -39,10 +48,26 @@ export interface InjectionDrift {
|
|
|
39
48
|
/** 修复指引(重跑 init 幂等同步注入段) */
|
|
40
49
|
export declare const INJECTION_DRIFT_FIX_HINT = "\u91CD\u8DD1 `npx @dommaker/harness init` \u540C\u6B65\u6CE8\u5165\u6BB5\uFF08\u6F02\u79FB\u4EC5\u8B66\u544A\uFF0C\u4E0D\u963B\u65AD\uFF09";
|
|
41
50
|
/**
|
|
42
|
-
*
|
|
51
|
+
* 解析治理约束注入段落点(studio #307,ADR 2026-08-21 落点模型)
|
|
52
|
+
*
|
|
53
|
+
* 与 init 的 setupGovernanceConstraints 路由一致:CLAUDE.md 含标记段优先
|
|
54
|
+
* (旧模型仓豁免),否则看 AGENTS.md(新模型仓注入段在 PRESERVE:governance 内);
|
|
55
|
+
* 两处均无完整标记段 → null(未注入)。
|
|
56
|
+
*
|
|
57
|
+
* detectInjectionDrift 与 constraints retire 的注入段同步共用本路由。
|
|
58
|
+
*/
|
|
59
|
+
export declare function resolveInjectionTarget(projectRoot: string): {
|
|
60
|
+
file: InjectionFile;
|
|
61
|
+
content: string;
|
|
62
|
+
startIdx: number;
|
|
63
|
+
endIdx: number;
|
|
64
|
+
} | null;
|
|
65
|
+
/**
|
|
66
|
+
* 检测约束注入段漂移
|
|
43
67
|
*
|
|
44
68
|
* @param projectRoot 项目根路径
|
|
45
69
|
* @param currentVersion 当前 harness 版本(缺省读 package.json;测试可显式传入)
|
|
46
70
|
*/
|
|
47
71
|
export declare function detectInjectionDrift(projectRoot: string, currentVersion?: string): InjectionDrift;
|
|
72
|
+
export {};
|
|
48
73
|
//# sourceMappingURL=injection-drift.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injection-drift.d.ts","sourceRoot":"","sources":["../../../src/core/constraints/injection-drift.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"injection-drift.d.ts","sourceRoot":"","sources":["../../../src/core/constraints/injection-drift.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAWH,+CAA+C;AAC/C,QAAA,MAAM,eAAe,qCAAsC,CAAC;AAC5D,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D,eAAe;AACf,MAAM,WAAW,cAAc;IAC7B,2BAA2B;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,8CAA8C;IAC9C,WAAW,EAAE,OAAO,CAAC;IACrB,8BAA8B;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,iCAAiC;IACjC,YAAY,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACpD;;;OAGG;IACH,YAAY,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IACtD,2CAA2C;IAC3C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,4BAA4B;AAC5B,eAAO,MAAM,wBAAwB,+IAAqD,CAAC;AAwC3F;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,GAClB;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAWnF;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,cAAc,GAAE,MAA4B,GAC3C,cAAc,CAkDhB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* 治理约束注入段漂移校验(ADR-0001 决策 7)
|
|
4
4
|
*
|
|
5
5
|
* 检测三类漂移:
|
|
6
6
|
* 1. 版本漂移:标记段内 `<!-- version: x -->` ≠ 当前 harness 包版本
|
|
@@ -10,8 +10,12 @@
|
|
|
10
10
|
* 3. 重复章节:标记段之外还存在另一个 `## Governance Rules` 标题
|
|
11
11
|
* (init 旧版本在无标记时追加第二个同名章节的历史问题)
|
|
12
12
|
*
|
|
13
|
+
* 落点路由(studio #307,ADR 2026-08-21 落点模型):注入段可能在
|
|
14
|
+
* CLAUDE.md(旧模型仓)或 AGENTS.md `PRESERVE:governance` 段内(新模型仓),
|
|
15
|
+
* 与 init 的 setupGovernanceConstraints 路由一致——CLAUDE.md 有标记优先。
|
|
16
|
+
*
|
|
13
17
|
* 纯检测、只读:不改任何文件。check 仅警告不阻断,详细差异进 report。
|
|
14
|
-
*
|
|
18
|
+
* 两处均无标记段 = 未注入,不算漂移(report 一句话提示,check 不警告)。
|
|
15
19
|
*/
|
|
16
20
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
17
21
|
if (k2 === undefined) k2 = k;
|
|
@@ -48,11 +52,14 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
48
52
|
})();
|
|
49
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
50
54
|
exports.INJECTION_DRIFT_FIX_HINT = void 0;
|
|
55
|
+
exports.resolveInjectionTarget = resolveInjectionTarget;
|
|
51
56
|
exports.detectInjectionDrift = detectInjectionDrift;
|
|
52
57
|
const fs = __importStar(require("fs"));
|
|
53
58
|
const path = __importStar(require("path"));
|
|
54
59
|
const effective_constraints_1 = require("../effective-constraints");
|
|
55
60
|
const injection_renderer_1 = require("./injection-renderer");
|
|
61
|
+
/** 注入段落点文件名(检测顺序即路由优先级:旧模型仓 CLAUDE.md 豁免优先) */
|
|
62
|
+
const INJECTION_FILES = ['CLAUDE.md', 'AGENTS.md'];
|
|
56
63
|
/** 修复指引(重跑 init 幂等同步注入段) */
|
|
57
64
|
exports.INJECTION_DRIFT_FIX_HINT = '重跑 `npx @dommaker/harness init` 同步注入段(漂移仅警告,不阻断)';
|
|
58
65
|
const VERSION_LINE_RE = /<!-- version: ([^ ]+) -->/;
|
|
@@ -82,8 +89,39 @@ function significantLines(section) {
|
|
|
82
89
|
.map(l => l.trim())
|
|
83
90
|
.filter(l => ENTRY_LINE_RE.test(l) || GROUP_HEADING_RE.test(l));
|
|
84
91
|
}
|
|
92
|
+
function readIfExists(filePath) {
|
|
93
|
+
try {
|
|
94
|
+
const content = fs.readFileSync(filePath, 'utf-8');
|
|
95
|
+
return typeof content === 'string' ? content : null;
|
|
96
|
+
}
|
|
97
|
+
catch {
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
85
101
|
/**
|
|
86
|
-
*
|
|
102
|
+
* 解析治理约束注入段落点(studio #307,ADR 2026-08-21 落点模型)
|
|
103
|
+
*
|
|
104
|
+
* 与 init 的 setupGovernanceConstraints 路由一致:CLAUDE.md 含标记段优先
|
|
105
|
+
* (旧模型仓豁免),否则看 AGENTS.md(新模型仓注入段在 PRESERVE:governance 内);
|
|
106
|
+
* 两处均无完整标记段 → null(未注入)。
|
|
107
|
+
*
|
|
108
|
+
* detectInjectionDrift 与 constraints retire 的注入段同步共用本路由。
|
|
109
|
+
*/
|
|
110
|
+
function resolveInjectionTarget(projectRoot) {
|
|
111
|
+
for (const file of INJECTION_FILES) {
|
|
112
|
+
const content = readIfExists(path.join(projectRoot, file));
|
|
113
|
+
if (content === null)
|
|
114
|
+
continue;
|
|
115
|
+
const startIdx = content.indexOf(injection_renderer_1.CONSTRAINTS_START_MARKER);
|
|
116
|
+
const endIdx = content.indexOf(injection_renderer_1.CONSTRAINTS_END_MARKER);
|
|
117
|
+
if (startIdx !== -1 && endIdx !== -1 && endIdx > startIdx) {
|
|
118
|
+
return { file, content, startIdx, endIdx };
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* 检测约束注入段漂移
|
|
87
125
|
*
|
|
88
126
|
* @param projectRoot 项目根路径
|
|
89
127
|
* @param currentVersion 当前 harness 版本(缺省读 package.json;测试可显式传入)
|
|
@@ -95,29 +133,23 @@ function detectInjectionDrift(projectRoot, currentVersion = getPackageVersion())
|
|
|
95
133
|
duplicateHeading: false,
|
|
96
134
|
fixHint: exports.INJECTION_DRIFT_FIX_HINT,
|
|
97
135
|
};
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
if (typeof content !== 'string') {
|
|
136
|
+
const target = resolveInjectionTarget(projectRoot);
|
|
137
|
+
if (!target) {
|
|
138
|
+
// 两处均无标记段 = 未注入,不算漂移(check 不警告)。
|
|
139
|
+
// 重复章节仍如实记录供 report 提示:旧落点 CLAUDE.md 优先,其次 AGENTS.md。
|
|
140
|
+
const legacy = readIfExists(path.join(projectRoot, 'CLAUDE.md')) ??
|
|
141
|
+
readIfExists(path.join(projectRoot, 'AGENTS.md'));
|
|
142
|
+
if (legacy !== null) {
|
|
143
|
+
result.duplicateHeading = (legacy.match(GOVERNANCE_HEADING_RE) ?? []).length > 1;
|
|
144
|
+
}
|
|
108
145
|
result.notInjected = true;
|
|
109
146
|
return result;
|
|
110
147
|
}
|
|
148
|
+
result.injectionFile = target.file;
|
|
149
|
+
const { content, startIdx, endIdx } = target;
|
|
111
150
|
// 重复章节:全文统计 `## Governance Rules` 标题数(含标记段所属的合法标题)
|
|
112
151
|
const headingCount = (content.match(GOVERNANCE_HEADING_RE) ?? []).length;
|
|
113
152
|
result.duplicateHeading = headingCount > 1;
|
|
114
|
-
const startIdx = content.indexOf(injection_renderer_1.CONSTRAINTS_START_MARKER);
|
|
115
|
-
const endIdx = content.indexOf(injection_renderer_1.CONSTRAINTS_END_MARKER);
|
|
116
|
-
if (startIdx === -1 || endIdx === -1 || endIdx <= startIdx) {
|
|
117
|
-
// 无标记段 = 未注入,不算漂移(check 不警告;duplicateHeading 仍如实记录供 report 提示)
|
|
118
|
-
result.notInjected = true;
|
|
119
|
-
return result;
|
|
120
|
-
}
|
|
121
153
|
const actualSection = content.slice(startIdx, endIdx + injection_renderer_1.CONSTRAINTS_END_MARKER.length);
|
|
122
154
|
// 1. 版本漂移
|
|
123
155
|
const versionMatch = VERSION_LINE_RE.exec(actualSection);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injection-drift.js","sourceRoot":"","sources":["../../../src/core/constraints/injection-drift.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"injection-drift.js","sourceRoot":"","sources":["../../../src/core/constraints/injection-drift.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* governance_presence checker 测试(studio #302,ADR 2026-08-21 落点模型)
|
|
3
|
+
*
|
|
4
|
+
* 在场守护:PRESERVE 只保「存在」不保「在场」——治理契约段被删除/掏空后
|
|
5
|
+
* sync-docs 重新生成会静默丢失,本 checker 在 harness check 时校验在场性。
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { describe, it, expect, beforeEach, afterEach, jest } from '@jest/globals';
|
|
9
|
+
import * as fs from 'fs';
|
|
10
|
+
import * as path from 'path';
|
|
11
|
+
import {
|
|
12
|
+
governancePresence,
|
|
13
|
+
hasGovernancePreserveBlock,
|
|
14
|
+
hasClaudeGovernance,
|
|
15
|
+
} from '../core/constraints/checkers/governance-presence';
|
|
16
|
+
import type { CheckEnv } from '../core/constraints/checkers';
|
|
17
|
+
|
|
18
|
+
function makeEnv(projectPath: string): CheckEnv {
|
|
19
|
+
return {
|
|
20
|
+
context: { operation: 'commit', projectPath },
|
|
21
|
+
projectPath,
|
|
22
|
+
stagedDiff: async () => '',
|
|
23
|
+
stagedDiffNames: async () => '',
|
|
24
|
+
srcScan: () => [],
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const GOVERNANCE_BLOCK = [
|
|
29
|
+
'<!-- PRESERVE:governance -->',
|
|
30
|
+
'## Governance Rules',
|
|
31
|
+
'',
|
|
32
|
+
'<!-- HARNESS_CONSTRAINTS_START -->',
|
|
33
|
+
'- **law_a**: 描述 a',
|
|
34
|
+
'<!-- HARNESS_CONSTRAINTS_END -->',
|
|
35
|
+
'<!-- /PRESERVE:governance -->',
|
|
36
|
+
].join('\n');
|
|
37
|
+
|
|
38
|
+
describe('governance_presence checker', () => {
|
|
39
|
+
let tempDir: string;
|
|
40
|
+
let errorSpy: jest.SpiedFunction<typeof console.error>;
|
|
41
|
+
|
|
42
|
+
const writeConfig = () => {
|
|
43
|
+
fs.mkdirSync(path.join(tempDir, '.harness'), { recursive: true });
|
|
44
|
+
fs.writeFileSync(path.join(tempDir, '.harness', 'config.yml'), 'preset: standard\n');
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
beforeEach(() => {
|
|
48
|
+
tempDir = fs.mkdtempSync(path.join(process.cwd(), 'temp-test-gov-presence-'));
|
|
49
|
+
errorSpy = jest.spyOn(console, 'error').mockImplementation(() => {});
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
afterEach(() => {
|
|
53
|
+
jest.restoreAllMocks();
|
|
54
|
+
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
55
|
+
});
|
|
56
|
+
|
|
57
|
+
it('未采用 harness 治理(无 .harness/config.yml)→ skip', async () => {
|
|
58
|
+
expect(await governancePresence.evaluate(makeEnv(tempDir))).toBe('skip');
|
|
59
|
+
});
|
|
60
|
+
|
|
61
|
+
it('新模型:AGENTS.md 有非空 PRESERVE:governance 段 → pass', async () => {
|
|
62
|
+
writeConfig();
|
|
63
|
+
fs.writeFileSync(path.join(tempDir, 'AGENTS.md'), `# AGENTS.md\n\n${GOVERNANCE_BLOCK}\n`);
|
|
64
|
+
expect(await governancePresence.evaluate(makeEnv(tempDir))).toBe(true);
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
it('旧模型豁免:CLAUDE.md 有 Governance Rules 块(无 AGENTS.md)→ pass', async () => {
|
|
68
|
+
writeConfig();
|
|
69
|
+
fs.writeFileSync(path.join(tempDir, 'CLAUDE.md'), '# CLAUDE.md\n\n## Governance Rules\n\n条款\n');
|
|
70
|
+
expect(await governancePresence.evaluate(makeEnv(tempDir))).toBe(true);
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
it('旧模型豁免:CLAUDE.md 有 HARNESS_CONSTRAINTS 标记 → pass', async () => {
|
|
74
|
+
writeConfig();
|
|
75
|
+
fs.writeFileSync(path.join(tempDir, 'CLAUDE.md'), '<!-- HARNESS_CONSTRAINTS_START -->\nx\n');
|
|
76
|
+
expect(await governancePresence.evaluate(makeEnv(tempDir))).toBe(true);
|
|
77
|
+
});
|
|
78
|
+
|
|
79
|
+
it('两处都没有治理契约 → fail 并报警(防静默丢失)', async () => {
|
|
80
|
+
writeConfig();
|
|
81
|
+
fs.writeFileSync(path.join(tempDir, 'AGENTS.md'), '# AGENTS.md\n\n只有机器生成内容\n');
|
|
82
|
+
fs.writeFileSync(path.join(tempDir, 'CLAUDE.md'), '# CLAUDE.md\n\n@AGENTS.md\n');
|
|
83
|
+
expect(await governancePresence.evaluate(makeEnv(tempDir))).toBe(false);
|
|
84
|
+
expect(errorSpy).toHaveBeenCalledWith(expect.stringContaining('治理契约缺失'));
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
it('PRESERVE:governance 段为空(被掏空)且 CLAUDE.md 无治理块 → fail', async () => {
|
|
88
|
+
writeConfig();
|
|
89
|
+
fs.writeFileSync(
|
|
90
|
+
path.join(tempDir, 'AGENTS.md'),
|
|
91
|
+
'# AGENTS.md\n\n<!-- PRESERVE:governance -->\n\n<!-- /PRESERVE:governance -->\n'
|
|
92
|
+
);
|
|
93
|
+
expect(await governancePresence.evaluate(makeEnv(tempDir))).toBe(false);
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
it('PRESERVE:governance 标记未闭合视为不在场 → fail', async () => {
|
|
97
|
+
writeConfig();
|
|
98
|
+
fs.writeFileSync(
|
|
99
|
+
path.join(tempDir, 'AGENTS.md'),
|
|
100
|
+
'# AGENTS.md\n\n<!-- PRESERVE:governance -->\n## Governance Rules\n内容\n'
|
|
101
|
+
);
|
|
102
|
+
expect(await governancePresence.evaluate(makeEnv(tempDir))).toBe(false);
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
|
|
106
|
+
describe('hasGovernancePreserveBlock / hasClaudeGovernance 判定函数', () => {
|
|
107
|
+
let tempDir: string;
|
|
108
|
+
|
|
109
|
+
beforeEach(() => {
|
|
110
|
+
tempDir = fs.mkdtempSync(path.join(process.cwd(), 'temp-test-gov-helpers-'));
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
afterEach(() => {
|
|
114
|
+
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
it('文件不存在 → false', () => {
|
|
118
|
+
expect(hasGovernancePreserveBlock(path.join(tempDir, 'AGENTS.md'))).toBe(false);
|
|
119
|
+
expect(hasClaudeGovernance(path.join(tempDir, 'CLAUDE.md'))).toBe(false);
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
it('块体仅空白/注释外无内容 → false;有内容 → true', () => {
|
|
123
|
+
const p = path.join(tempDir, 'AGENTS.md');
|
|
124
|
+
fs.writeFileSync(p, '<!-- PRESERVE:governance -->\n \n<!-- /PRESERVE:governance -->\n');
|
|
125
|
+
expect(hasGovernancePreserveBlock(p)).toBe(false);
|
|
126
|
+
fs.writeFileSync(p, `<!-- PRESERVE:governance -->\n条款一\n<!-- /PRESERVE:governance -->\n`);
|
|
127
|
+
expect(hasGovernancePreserveBlock(p)).toBe(true);
|
|
128
|
+
});
|
|
129
|
+
});
|