@dommaker/harness 0.1.4 → 0.2.0

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.
Files changed (65) hide show
  1. package/dist/cli/commands/check.d.ts +5 -5
  2. package/dist/cli/commands/check.d.ts.map +1 -1
  3. package/dist/cli/commands/check.js +65 -42
  4. package/dist/cli/commands/check.js.map +1 -1
  5. package/dist/core/constraints/checker.d.ts +84 -0
  6. package/dist/core/constraints/checker.d.ts.map +1 -0
  7. package/dist/core/constraints/checker.js +375 -0
  8. package/dist/core/constraints/checker.js.map +1 -0
  9. package/dist/core/constraints/definitions.d.ts +42 -0
  10. package/dist/core/constraints/definitions.d.ts.map +1 -0
  11. package/dist/core/constraints/definitions.js +438 -0
  12. package/dist/core/constraints/definitions.js.map +1 -0
  13. package/dist/core/constraints/index.d.ts +8 -0
  14. package/dist/core/constraints/index.d.ts.map +1 -0
  15. package/dist/core/constraints/index.js +36 -0
  16. package/dist/core/constraints/index.js.map +1 -0
  17. package/dist/core/index.d.ts +1 -1
  18. package/dist/core/index.d.ts.map +1 -1
  19. package/dist/core/index.js +3 -1
  20. package/dist/core/index.js.map +1 -1
  21. package/dist/index.d.ts +15 -5
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +23 -7
  24. package/dist/index.js.map +1 -1
  25. package/dist/presets/index.d.ts +3 -11
  26. package/dist/presets/index.d.ts.map +1 -1
  27. package/dist/presets/index.js +9 -19
  28. package/dist/presets/index.js.map +1 -1
  29. package/dist/presets/standard.d.ts +44 -2
  30. package/dist/presets/standard.d.ts.map +1 -1
  31. package/dist/presets/standard.js +71 -41
  32. package/dist/presets/standard.js.map +1 -1
  33. package/dist/types/constraint.d.ts +184 -0
  34. package/dist/types/constraint.d.ts.map +1 -0
  35. package/dist/types/constraint.js +34 -0
  36. package/dist/types/constraint.js.map +1 -0
  37. package/dist/types/index.d.ts +1 -1
  38. package/dist/types/index.d.ts.map +1 -1
  39. package/dist/types/index.js +2 -1
  40. package/dist/types/index.js.map +1 -1
  41. package/dist/types/iron-law.d.ts +15 -103
  42. package/dist/types/iron-law.d.ts.map +1 -1
  43. package/dist/types/iron-law.js +8 -13
  44. package/dist/types/iron-law.js.map +1 -1
  45. package/package.json +1 -1
  46. package/dist/core/iron-laws/checker.d.ts +0 -61
  47. package/dist/core/iron-laws/checker.d.ts.map +0 -1
  48. package/dist/core/iron-laws/checker.js +0 -175
  49. package/dist/core/iron-laws/checker.js.map +0 -1
  50. package/dist/core/iron-laws/definitions.d.ts +0 -28
  51. package/dist/core/iron-laws/definitions.d.ts.map +0 -1
  52. package/dist/core/iron-laws/definitions.js +0 -189
  53. package/dist/core/iron-laws/definitions.js.map +0 -1
  54. package/dist/core/iron-laws/index.d.ts +0 -6
  55. package/dist/core/iron-laws/index.d.ts.map +0 -1
  56. package/dist/core/iron-laws/index.js +0 -22
  57. package/dist/core/iron-laws/index.js.map +0 -1
  58. package/dist/presets/relaxed.d.ts +0 -8
  59. package/dist/presets/relaxed.d.ts.map +0 -1
  60. package/dist/presets/relaxed.js +0 -24
  61. package/dist/presets/relaxed.js.map +0 -1
  62. package/dist/presets/strict.d.ts +0 -8
  63. package/dist/presets/strict.d.ts.map +0 -1
  64. package/dist/presets/strict.js +0 -51
  65. package/dist/presets/strict.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/presets/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAIjD,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,cAAc,EAAE,CAAC;AAE1D;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,CAErD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/presets/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,aAAa,EACb,eAAe,EACf,cAAc,EACd,SAAS,EAET,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -1,25 +1,15 @@
1
1
  "use strict";
2
2
  /**
3
- * 预设导出
3
+ * 预设模块入口
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.RELAXED_PRESET = exports.STANDARD_PRESET = exports.STRICT_PRESET = exports.PRESETS = void 0;
7
- exports.getPreset = getPreset;
8
- const strict_1 = require("./strict");
9
- Object.defineProperty(exports, "STRICT_PRESET", { enumerable: true, get: function () { return strict_1.STRICT_PRESET; } });
10
- const standard_1 = require("./standard");
6
+ exports.getIronLawPreset = exports.STANDARD_IRON_LAWS_CONFIG = exports.getPreset = exports.RELAXED_PRESET = exports.STANDARD_PRESET = exports.STRICT_PRESET = void 0;
7
+ var standard_1 = require("./standard");
8
+ Object.defineProperty(exports, "STRICT_PRESET", { enumerable: true, get: function () { return standard_1.STRICT_PRESET; } });
11
9
  Object.defineProperty(exports, "STANDARD_PRESET", { enumerable: true, get: function () { return standard_1.STANDARD_PRESET; } });
12
- const relaxed_1 = require("./relaxed");
13
- Object.defineProperty(exports, "RELAXED_PRESET", { enumerable: true, get: function () { return relaxed_1.RELAXED_PRESET; } });
14
- exports.PRESETS = {
15
- strict: strict_1.STRICT_PRESET,
16
- standard: standard_1.STANDARD_PRESET,
17
- relaxed: relaxed_1.RELAXED_PRESET,
18
- };
19
- /**
20
- * 获取预设配置
21
- */
22
- function getPreset(name) {
23
- return exports.PRESETS[name] || standard_1.STANDARD_PRESET;
24
- }
10
+ Object.defineProperty(exports, "RELAXED_PRESET", { enumerable: true, get: function () { return standard_1.RELAXED_PRESET; } });
11
+ Object.defineProperty(exports, "getPreset", { enumerable: true, get: function () { return standard_1.getPreset; } });
12
+ // 向后兼容
13
+ Object.defineProperty(exports, "STANDARD_IRON_LAWS_CONFIG", { enumerable: true, get: function () { return standard_1.STANDARD_IRON_LAWS_CONFIG; } });
14
+ Object.defineProperty(exports, "getIronLawPreset", { enumerable: true, get: function () { return standard_1.getIronLawPreset; } });
25
15
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/presets/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAkBH,8BAEC;AAlBD,qCAAyC;AAWhC,8FAXA,sBAAa,OAWA;AAVtB,yCAA6C;AAUrB,gGAVf,0BAAe,OAUe;AATvC,uCAA2C;AASF,+FAThC,wBAAc,OASgC;AAN1C,QAAA,OAAO,GAAkC;IACpD,MAAM,EAAE,sBAAa;IACrB,QAAQ,EAAE,0BAAe;IACzB,OAAO,EAAE,wBAAc;CACxB,CAAC;AAIF;;GAEG;AACH,SAAgB,SAAS,CAAC,IAAY;IACpC,OAAO,eAAO,CAAC,IAAI,CAAC,IAAI,0BAAe,CAAC;AAC1C,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/presets/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,uCAQoB;AAPlB,yGAAA,aAAa,OAAA;AACb,2GAAA,eAAe,OAAA;AACf,0GAAA,cAAc,OAAA;AACd,qGAAA,SAAS,OAAA;AACT,OAAO;AACP,qHAAA,yBAAyB,OAAA;AACzB,4GAAA,gBAAgB,OAAA"}
@@ -1,8 +1,50 @@
1
+ /**
2
+ * 约束预设
3
+ *
4
+ * 预设定义哪些约束被启用
5
+ */
6
+ /**
7
+ * 预设配置
8
+ */
9
+ export interface PresetConfig {
10
+ /** 预设名称 */
11
+ name: string;
12
+ /** 启用的铁律 ID 列表(null 表示全部启用) */
13
+ ironLaws: string[] | null;
14
+ /** 启用的指导原则 ID 列表(null 表示全部启用) */
15
+ guidelines: string[] | null;
16
+ /** 启用的提示 ID 列表(null 表示全部启用) */
17
+ tips: string[] | null;
18
+ }
19
+ /**
20
+ * 严格预设
21
+ *
22
+ * 所有约束全部启用
23
+ */
24
+ export declare const STRICT_PRESET: PresetConfig;
1
25
  /**
2
26
  * 标准预设
3
27
  *
4
- * 核心 error 级别铁律启用,warning 可跳过
28
+ * 铁律全部启用,指导原则和提示选择性启用
5
29
  */
30
+ export declare const STANDARD_PRESET: PresetConfig;
31
+ /**
32
+ * 宽松预设
33
+ *
34
+ * 仅启用核心铁律,禁用提示
35
+ */
36
+ export declare const RELAXED_PRESET: PresetConfig;
37
+ /**
38
+ * 获取预设
39
+ */
40
+ export declare function getPreset(name: string): PresetConfig;
6
41
  import type { IronLawConfig } from '../types/iron-law';
7
- export declare const STANDARD_PRESET: IronLawConfig;
42
+ /**
43
+ * @deprecated 使用 PresetConfig 代替
44
+ */
45
+ export { STANDARD_PRESET as STANDARD_IRON_LAWS_CONFIG };
46
+ /**
47
+ * @deprecated 使用 getPreset 代替
48
+ */
49
+ export declare function getIronLawPreset(preset: string): IronLawConfig;
8
50
  //# sourceMappingURL=standard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"standard.d.ts","sourceRoot":"","sources":["../../src/presets/standard.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAW,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEhE,eAAO,MAAM,eAAe,EAAE,aAyC7B,CAAC"}
1
+ {"version":3,"file":"standard.d.ts","sourceRoot":"","sources":["../../src/presets/standard.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IAEb,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAE1B,iCAAiC;IACjC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAE5B,+BAA+B;IAC/B,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CACvB;AAED;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,YAK3B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,EAAE,YAK7B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,YAY5B,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAWpD;AAMD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAGvD;;GAEG;AACH,OAAO,EAAE,eAAe,IAAI,yBAAyB,EAAE,CAAC;AAExD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAS9D"}
@@ -1,51 +1,81 @@
1
1
  "use strict";
2
2
  /**
3
- * 标准预设
3
+ * 约束预设
4
4
  *
5
- * 核心 error 级别铁律启用,warning 可跳过
5
+ * 预设定义哪些约束被启用
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.STANDARD_PRESET = void 0;
8
+ exports.STANDARD_IRON_LAWS_CONFIG = exports.RELAXED_PRESET = exports.STANDARD_PRESET = exports.STRICT_PRESET = void 0;
9
+ exports.getPreset = getPreset;
10
+ exports.getIronLawPreset = getIronLawPreset;
11
+ /**
12
+ * 严格预设
13
+ *
14
+ * 所有约束全部启用
15
+ */
16
+ exports.STRICT_PRESET = {
17
+ name: 'strict',
18
+ ironLaws: null, // 全部启用
19
+ guidelines: null, // 全部启用
20
+ tips: null, // 全部启用
21
+ };
22
+ /**
23
+ * 标准预设
24
+ *
25
+ * 铁律全部启用,指导原则和提示选择性启用
26
+ */
9
27
  exports.STANDARD_PRESET = {
10
- preset: 'standard',
11
- enabled: true,
28
+ name: 'standard',
29
+ ironLaws: null, // 全部启用
30
+ guidelines: null, // 全部启用
31
+ tips: null, // 全部启用
32
+ };
33
+ exports.STANDARD_IRON_LAWS_CONFIG = exports.STANDARD_PRESET;
34
+ /**
35
+ * 宽松预设
36
+ *
37
+ * 仅启用核心铁律,禁用提示
38
+ */
39
+ exports.RELAXED_PRESET = {
40
+ name: 'relaxed',
12
41
  ironLaws: [
13
- {
14
- id: 'no_fix_without_root_cause',
15
- rule: 'NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST',
16
- message: '在修复问题之前,必须先进行根本原因调查',
17
- trigger: 'bug_fix_attempt',
18
- enforcement: 'debug-systematic',
19
- severity: 'error',
20
- enabled: true,
21
- },
22
- {
23
- id: 'no_completion_without_verification',
24
- rule: 'NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE',
25
- message: '在声明任务完成之前,必须运行验证命令',
26
- trigger: 'task_completion_claim',
27
- enforcement: 'verify-completion',
28
- severity: 'error',
29
- enabled: true,
30
- },
31
- {
32
- id: 'capability_sync',
33
- rule: 'CODE CHANGES MUST UPDATE CAPABILITIES.MD',
34
- message: '核心模块变更后必须同步更新功能清单',
35
- trigger: 'module_modification',
36
- enforcement: 'update-capabilities',
37
- severity: 'warning',
38
- enabled: true,
39
- },
40
- {
41
- id: 'readme_required',
42
- rule: 'NEW MODULES MUST HAVE README',
43
- message: '新模块必须创建 README 文档',
44
- trigger: 'module_creation',
45
- enforcement: 'create-readme',
46
- severity: 'info',
47
- enabled: true,
48
- },
42
+ 'no_bypass_checkpoint',
43
+ 'no_self_approval',
44
+ 'no_completion_without_verification',
45
+ ],
46
+ guidelines: [
47
+ 'no_fix_without_root_cause',
48
+ 'no_code_without_test',
49
49
  ],
50
+ tips: [], // 禁用提示
50
51
  };
52
+ /**
53
+ * 获取预设
54
+ */
55
+ function getPreset(name) {
56
+ switch (name) {
57
+ case 'strict':
58
+ return exports.STRICT_PRESET;
59
+ case 'standard':
60
+ return exports.STANDARD_PRESET;
61
+ case 'relaxed':
62
+ return exports.RELAXED_PRESET;
63
+ default:
64
+ return exports.STANDARD_PRESET;
65
+ }
66
+ }
67
+ const definitions_1 = require("../core/constraints/definitions");
68
+ /**
69
+ * @deprecated 使用 getPreset 代替
70
+ */
71
+ function getIronLawPreset(preset) {
72
+ const config = getPreset(preset);
73
+ return {
74
+ preset: preset,
75
+ enabled: true,
76
+ ironLaws: config.ironLaws
77
+ ? Object.values(definitions_1.IRON_LAWS).filter(c => config.ironLaws.includes(c.id))
78
+ : Object.values(definitions_1.IRON_LAWS),
79
+ };
80
+ }
51
81
  //# sourceMappingURL=standard.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"standard.js","sourceRoot":"","sources":["../../src/presets/standard.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIU,QAAA,eAAe,GAAkB;IAC5C,MAAM,EAAE,UAAU;IAClB,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE;QACR;YACE,EAAE,EAAE,2BAA2B;YAC/B,IAAI,EAAE,iDAAiD;YACvD,OAAO,EAAE,qBAAqB;YAC9B,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,kBAAkB;YAC/B,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,IAAI;SACd;QACD;YACE,EAAE,EAAE,oCAAoC;YACxC,IAAI,EAAE,0DAA0D;YAChE,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE,uBAAuB;YAChC,WAAW,EAAE,mBAAmB;YAChC,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,IAAI;SACd;QACD;YACE,EAAE,EAAE,iBAAiB;YACrB,IAAI,EAAE,0CAA0C;YAChD,OAAO,EAAE,mBAAmB;YAC5B,OAAO,EAAE,qBAAqB;YAC9B,WAAW,EAAE,qBAAqB;YAClC,QAAQ,EAAE,SAAS;YACnB,OAAO,EAAE,IAAI;SACd;QACD;YACE,EAAE,EAAE,iBAAiB;YACrB,IAAI,EAAE,8BAA8B;YACpC,OAAO,EAAE,mBAAmB;YAC5B,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,eAAe;YAC5B,QAAQ,EAAE,MAAM;YAChB,OAAO,EAAE,IAAI;SACd;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"standard.js","sourceRoot":"","sources":["../../src/presets/standard.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAmEH,8BAWC;AAiBD,4CASC;AAnFD;;;;GAIG;AACU,QAAA,aAAa,GAAiB;IACzC,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,IAAI,EAAK,OAAO;IAC1B,UAAU,EAAE,IAAI,EAAG,OAAO;IAC1B,IAAI,EAAE,IAAI,EAAS,OAAO;CAC3B,CAAC;AAEF;;;;GAIG;AACU,QAAA,eAAe,GAAiB;IAC3C,IAAI,EAAE,UAAU;IAChB,QAAQ,EAAE,IAAI,EAAK,OAAO;IAC1B,UAAU,EAAE,IAAI,EAAG,OAAO;IAC1B,IAAI,EAAE,IAAI,EAAS,OAAO;CAC3B,CAAC;AA+C0B,oCApDf,uBAAe,CAoDyB;AA7CrD;;;;GAIG;AACU,QAAA,cAAc,GAAiB;IAC1C,IAAI,EAAE,SAAS;IACf,QAAQ,EAAE;QACR,sBAAsB;QACtB,kBAAkB;QAClB,oCAAoC;KACrC;IACD,UAAU,EAAE;QACV,2BAA2B;QAC3B,sBAAsB;KACvB;IACD,IAAI,EAAE,EAAE,EAAG,OAAO;CACnB,CAAC;AAEF;;GAEG;AACH,SAAgB,SAAS,CAAC,IAAY;IACpC,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,QAAQ;YACX,OAAO,qBAAa,CAAC;QACvB,KAAK,UAAU;YACb,OAAO,uBAAe,CAAC;QACzB,KAAK,SAAS;YACZ,OAAO,sBAAc,CAAC;QACxB;YACE,OAAO,uBAAe,CAAC;IAC3B,CAAC;AACH,CAAC;AAOD,iEAA4D;AAO5D;;GAEG;AACH,SAAgB,gBAAgB,CAAC,MAAc;IAC7C,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;IACjC,OAAO;QACL,MAAM,EAAE,MAA2C;QACnD,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACvB,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,uBAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACvE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,uBAAS,CAAC;KAC7B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,184 @@
1
+ /**
2
+ * 约束类型定义
3
+ *
4
+ * 三层约束体系:
5
+ * - Iron Laws:绝对禁止,无例外,违背即阻止执行
6
+ * - Guidelines:优先建议,有例外,违背发警告但不阻止
7
+ * - Tips:信息性提示,可忽略
8
+ */
9
+ /**
10
+ * 约束 ID
11
+ */
12
+ export type ConstraintId = string;
13
+ /**
14
+ * 约束层级
15
+ */
16
+ export type ConstraintLevel = 'iron_law' | 'guideline' | 'tip';
17
+ /**
18
+ * 约束触发条件
19
+ */
20
+ export type ConstraintTrigger = 'bug_fix_attempt' | 'task_completion_claim' | 'skill_creation' | 'code_implementation' | 'test_creation' | 'workflow_execution' | 'step_execution' | 'step_creation' | 'tool_creation' | 'workflow_creation' | 'module_creation' | 'module_modification' | 'module_deletion' | 'module_extension' | 'feature_development' | 'api_change' | 'export_change' | 'file_creation' | 'file_modification' | 'file_deletion' | 'commit' | 'push' | 'merge';
21
+ /**
22
+ * 约束定义
23
+ */
24
+ export interface Constraint {
25
+ /** 约束 ID */
26
+ id: ConstraintId;
27
+ /** 约束规则(英文) */
28
+ rule: string;
29
+ /** 约束消息(中文) */
30
+ message: string;
31
+ /** 约束层级 */
32
+ level: ConstraintLevel;
33
+ /** 触发条件(支持多个 trigger) */
34
+ trigger: ConstraintTrigger | ConstraintTrigger[];
35
+ /** 强制执行的技能/步骤 */
36
+ enforcement: string;
37
+ /** 约束描述 */
38
+ description?: string;
39
+ /** 是否启用 */
40
+ enabled?: boolean;
41
+ /** 例外条件(仅 Guidelines 有效) */
42
+ exceptions?: string[];
43
+ }
44
+ /**
45
+ * @deprecated 使用 ConstraintId 代替
46
+ */
47
+ export type IronLawId = ConstraintId;
48
+ /**
49
+ * @deprecated 使用 ConstraintLevel 代替
50
+ */
51
+ export type IronLawSeverity = 'error' | 'warning' | 'info';
52
+ /**
53
+ * @deprecated 使用 ConstraintTrigger 代替
54
+ */
55
+ export type IronLawTrigger = ConstraintTrigger;
56
+ /**
57
+ * @deprecated 使用 Constraint 代替
58
+ */
59
+ export interface IronLaw extends Constraint {
60
+ /** @deprecated 使用 level 代替 */
61
+ severity?: IronLawSeverity;
62
+ }
63
+ /**
64
+ * 约束检查结果
65
+ */
66
+ export interface ConstraintResult {
67
+ /** 约束 ID */
68
+ id: ConstraintId;
69
+ /** 约束层级 */
70
+ level: ConstraintLevel;
71
+ /** 是否满足 */
72
+ satisfied: boolean;
73
+ /** 约束定义 */
74
+ constraint?: Constraint;
75
+ /** 消息 */
76
+ message?: string;
77
+ /** 建议操作 */
78
+ requiredAction?: string;
79
+ /** 检查时间 */
80
+ checkedAt: Date;
81
+ }
82
+ /**
83
+ * @deprecated 使用 ConstraintResult 代替
84
+ */
85
+ export interface IronLawResult extends ConstraintResult {
86
+ /** @deprecated */
87
+ law?: Constraint;
88
+ }
89
+ /**
90
+ * 约束检查上下文
91
+ */
92
+ export interface ConstraintContext {
93
+ /** 当前操作类型 */
94
+ operation: ConstraintTrigger;
95
+ /** 工作流 ID */
96
+ workflowId?: string;
97
+ /** 步骤 ID */
98
+ stepId?: string;
99
+ /** 任务描述 */
100
+ taskDescription?: string;
101
+ /** 项目路径 */
102
+ projectPath?: string;
103
+ /** 变更的文件列表 */
104
+ changedFiles?: string[];
105
+ /** 提交信息 */
106
+ commitMessage?: string;
107
+ /** 分支名称 */
108
+ branch?: string;
109
+ /** 是否有根本原因调查 */
110
+ hasRootCauseInvestigation?: boolean;
111
+ /** 是否有验证证据 */
112
+ hasVerificationEvidence?: boolean;
113
+ /** 是否有测试 */
114
+ hasTest?: boolean;
115
+ /** 是否有失败的测试 */
116
+ hasFailingTest?: boolean;
117
+ /** 是否已进行复用检查 */
118
+ hasReuseCheck?: boolean;
119
+ /** 复用检查结果 */
120
+ reuseCheckResult?: {
121
+ existingCapabilities: string[];
122
+ canReuse: boolean;
123
+ reuseRecommendation: string;
124
+ };
125
+ scalabilityRequired?: boolean;
126
+ securityRequired?: boolean;
127
+ performanceRequired?: boolean;
128
+ reliabilityRequired?: boolean;
129
+ isSimpleTypo?: boolean;
130
+ isConfigValueError?: boolean;
131
+ isMissingConfig?: boolean;
132
+ isConfigFile?: boolean;
133
+ isTypeDefinition?: boolean;
134
+ isSimpleAccessor?: boolean;
135
+ isPureDisplayComponent?: boolean;
136
+ isJsonParseResult?: boolean;
137
+ isThirdPartyNoTypes?: boolean;
138
+ isLegacyMigration?: boolean;
139
+ isInternalRefactor?: boolean;
140
+ isBugFixOnly?: boolean;
141
+ isPerformanceOptimization?: boolean;
142
+ isRedundantCodeCleanup?: boolean;
143
+ isSameEffectRefactor?: boolean;
144
+ isUnusedCodeRemoval?: boolean;
145
+ /** 例外理由说明 */
146
+ exceptionReason?: string;
147
+ /** 执行上下文 */
148
+ executionContext?: any;
149
+ }
150
+ /**
151
+ * @deprecated 使用 ConstraintContext 代替
152
+ */
153
+ export type IronLawContext = ConstraintContext;
154
+ /**
155
+ * 约束违规错误
156
+ */
157
+ export declare class ConstraintViolationError extends Error {
158
+ readonly result: ConstraintResult;
159
+ constructor(result: ConstraintResult);
160
+ }
161
+ /**
162
+ * @deprecated 使用 ConstraintViolationError 代替
163
+ */
164
+ export declare class IronLawViolationError extends ConstraintViolationError {
165
+ constructor(result: ConstraintResult);
166
+ }
167
+ /**
168
+ * 三层约束检查结果
169
+ */
170
+ export interface ConstraintCheckResult {
171
+ /** 铁律检查结果(必须全部通过) */
172
+ ironLaws: ConstraintResult[];
173
+ /** 指导原则检查结果(警告,不阻止) */
174
+ guidelines: ConstraintResult[];
175
+ /** 提示检查结果(仅提示) */
176
+ tips: ConstraintResult[];
177
+ /** 是否通过(铁律全部通过) */
178
+ passed: boolean;
179
+ /** 警告数量 */
180
+ warningCount: number;
181
+ /** 提示数量 */
182
+ tipCount: number;
183
+ }
184
+ //# sourceMappingURL=constraint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constraint.d.ts","sourceRoot":"","sources":["../../src/types/constraint.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ /**
3
+ * 约束类型定义
4
+ *
5
+ * 三层约束体系:
6
+ * - Iron Laws:绝对禁止,无例外,违背即阻止执行
7
+ * - Guidelines:优先建议,有例外,违背发警告但不阻止
8
+ * - Tips:信息性提示,可忽略
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.IronLawViolationError = exports.ConstraintViolationError = void 0;
12
+ /**
13
+ * 约束违规错误
14
+ */
15
+ class ConstraintViolationError extends Error {
16
+ result;
17
+ constructor(result) {
18
+ super(result.message || 'Constraint violation');
19
+ this.name = 'ConstraintViolationError';
20
+ this.result = result;
21
+ }
22
+ }
23
+ exports.ConstraintViolationError = ConstraintViolationError;
24
+ /**
25
+ * @deprecated 使用 ConstraintViolationError 代替
26
+ */
27
+ class IronLawViolationError extends ConstraintViolationError {
28
+ constructor(result) {
29
+ super(result);
30
+ this.name = 'IronLawViolationError';
31
+ }
32
+ }
33
+ exports.IronLawViolationError = IronLawViolationError;
34
+ //# sourceMappingURL=constraint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constraint.js","sourceRoot":"","sources":["../../src/types/constraint.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AA2OH;;GAEG;AACH,MAAa,wBAAyB,SAAQ,KAAK;IACjC,MAAM,CAAmB;IAEzC,YAAY,MAAwB;QAClC,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,sBAAsB,CAAC,CAAC;QAChD,IAAI,CAAC,IAAI,GAAG,0BAA0B,CAAC;QACvC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF;AARD,4DAQC;AAED;;GAEG;AACH,MAAa,qBAAsB,SAAQ,wBAAwB;IACjE,YAAY,MAAwB;QAClC,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAC;IACtC,CAAC;CACF;AALD,sDAKC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * 类型导出
3
3
  */
4
- export * from './iron-law';
4
+ export * from './constraint';
5
5
  export * from './checkpoint';
6
6
  export * from './passes-gate';
7
7
  export * from './cso';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AAGtB,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,cAAc,EACd,WAAW,GACZ,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,WAAW,IAAI,mBAAmB,EAAE,cAAc,IAAI,sBAAsB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,cAAc,CAAC;AAE7B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,OAAO,CAAC;AAGtB,OAAO,EACL,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,WAAW,EACX,YAAY,EACZ,cAAc,EACd,WAAW,GACZ,MAAM,WAAW,CAAC;AAGnB,OAAO,EAAE,WAAW,IAAI,mBAAmB,EAAE,cAAc,IAAI,sBAAsB,EAAE,MAAM,WAAW,CAAC"}
@@ -17,7 +17,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
17
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- __exportStar(require("./iron-law"), exports);
20
+ // 约束类型(三层体系)
21
+ __exportStar(require("./constraint"), exports);
21
22
  __exportStar(require("./checkpoint"), exports);
22
23
  __exportStar(require("./passes-gate"), exports);
23
24
  __exportStar(require("./cso"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,6CAA2B;AAC3B,+CAA6B;AAC7B,gDAA8B;AAC9B,wCAAsB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;AAEH,aAAa;AACb,+CAA6B;AAE7B,+CAA6B;AAC7B,gDAA8B;AAC9B,wCAAsB"}
@@ -1,113 +1,25 @@
1
1
  /**
2
2
  * 铁律类型定义
3
3
  *
4
- * 铁律是工程约束框架中的强制规则,必须在执行关键操作前检查
5
- */
6
- /**
7
- * 铁律 ID
8
- */
9
- export type IronLawId = string;
10
- /**
11
- * 铁律严重性
12
- */
4
+ * @deprecated 请使用 './constraint' 代替
5
+ *
6
+ * 此模块保留用于向后兼容。
7
+ * 新代码应使用三层约束类型:
8
+ * - Constraint
9
+ * - ConstraintLevel ('iron_law' | 'guideline' | 'tip')
10
+ */
11
+ import type { Constraint } from './constraint';
12
+ export type { ConstraintId as IronLawId, ConstraintLevel, ConstraintTrigger as IronLawTrigger, Constraint as IronLaw, ConstraintResult as IronLawResult, ConstraintContext as IronLawContext, } from './constraint';
13
+ export { ConstraintViolationError as IronLawViolationError, } from './constraint';
13
14
  export type IronLawSeverity = 'error' | 'warning' | 'info';
14
- /**
15
- * 铁律触发条件
16
- */
17
- export type IronLawTrigger = 'bug_fix_attempt' | 'task_completion_claim' | 'skill_creation' | 'code_implementation' | 'test_creation' | 'workflow_execution' | 'step_execution' | 'step_creation' | 'tool_creation' | 'workflow_creation' | 'module_creation' | 'module_modification' | 'module_deletion' | 'api_change' | 'export_change' | 'file_creation' | 'file_modification' | 'file_deletion' | 'commit' | 'push' | 'merge';
18
- /**
19
- * 铁律定义
20
- */
21
- export interface IronLaw {
22
- /** 铁律 ID */
23
- id: IronLawId;
24
- /** 铁律规则(英文) */
25
- rule: string;
26
- /** 铁律消息(中文) */
27
- message: string;
28
- /** 触发条件 */
29
- trigger: IronLawTrigger;
30
- /** 强制执行的技能/步骤 */
31
- enforcement: string;
32
- /** 铁律严重级别 */
33
- severity: IronLawSeverity;
34
- /** 铁律描述 */
35
- description?: string;
36
- /** 是否启用 */
37
- enabled?: boolean;
38
- }
39
- /**
40
- * 铁律检查结果
41
- */
42
- export interface IronLawResult {
43
- /** 是否满足铁律 */
44
- satisfied: boolean;
45
- /** 铁律定义 */
46
- law?: IronLaw;
47
- /** 错误消息 */
48
- message?: string;
49
- /** 建议操作 */
50
- requiredAction?: string;
51
- /** 检查时间 */
52
- checkedAt: Date;
53
- }
54
- /**
55
- * 铁律检查上下文
56
- */
57
- export interface IronLawContext {
58
- /** 当前操作类型 */
59
- operation: IronLawTrigger;
60
- /** 工作流 ID */
61
- workflowId?: string;
62
- /** 步骤 ID */
63
- stepId?: string;
64
- /** 任务描述 */
65
- taskDescription?: string;
66
- /** 项目路径 */
67
- projectPath?: string;
68
- /** 变更的文件列表 */
69
- changedFiles?: string[];
70
- /** 提交信息 */
71
- commitMessage?: string;
72
- /** 分支名称 */
73
- branch?: string;
74
- /** 是否有根本原因调查 */
75
- hasRootCauseInvestigation?: boolean;
76
- /** 是否有验证证据 */
77
- hasVerificationEvidence?: boolean;
78
- /** 是否有测试 */
79
- hasTest?: boolean;
80
- /** 是否有失败的测试 */
81
- hasFailingTest?: boolean;
82
- /** 是否已进行复用检查 */
83
- hasReuseCheck?: boolean;
84
- /** 复用检查结果 */
85
- reuseCheckResult?: {
86
- existingCapabilities: string[];
87
- canReuse: boolean;
88
- reuseRecommendation: string;
89
- };
90
- /** 执行上下文 */
91
- executionContext?: any;
92
- }
93
- /**
94
- * 铁律违规错误
95
- */
96
- export declare class IronLawViolationError extends Error {
97
- readonly result: IronLawResult;
98
- constructor(result: IronLawResult);
99
- }
100
- /**
101
- * 铁律配置
102
- */
103
15
  export interface IronLawConfig {
104
- /** 铁律列表 */
105
- ironLaws: IronLaw[];
106
- /** 预设名称 */
16
+ /** @deprecated */
17
+ ironLaws: Constraint[];
18
+ /** @deprecated */
107
19
  preset?: 'strict' | 'standard' | 'relaxed';
108
- /** 是否启用 */
20
+ /** @deprecated */
109
21
  enabled?: boolean;
110
- /** 配置文件路径 */
22
+ /** @deprecated */
111
23
  configPath?: string;
112
24
  }
113
25
  //# sourceMappingURL=iron-law.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"iron-law.d.ts","sourceRoot":"","sources":["../../src/types/iron-law.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAC;AAE/B;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAE3D;;GAEG;AACH,MAAM,MAAM,cAAc,GACtB,iBAAiB,GACjB,uBAAuB,GACvB,gBAAgB,GAChB,qBAAqB,GACrB,eAAe,GACf,oBAAoB,GACpB,gBAAgB,GAChB,eAAe,GACf,eAAe,GACf,mBAAmB,GACnB,iBAAiB,GACjB,qBAAqB,GACrB,iBAAiB,GACjB,YAAY,GACZ,eAAe,GACf,eAAe,GACf,mBAAmB,GACnB,eAAe,GACf,QAAQ,GACR,MAAM,GACN,OAAO,CAAC;AAEZ;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,YAAY;IACZ,EAAE,EAAE,SAAS,CAAC;IAEd,eAAe;IACf,IAAI,EAAE,MAAM,CAAC;IAEb,eAAe;IACf,OAAO,EAAE,MAAM,CAAC;IAEhB,WAAW;IACX,OAAO,EAAE,cAAc,CAAC;IAExB,iBAAiB;IACjB,WAAW,EAAE,MAAM,CAAC;IAEpB,aAAa;IACb,QAAQ,EAAE,eAAe,CAAC;IAE1B,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,WAAW;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,aAAa;IACb,SAAS,EAAE,OAAO,CAAC;IAEnB,WAAW;IACX,GAAG,CAAC,EAAE,OAAO,CAAC;IAEd,WAAW;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,WAAW;IACX,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,WAAW;IACX,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,aAAa;IACb,SAAS,EAAE,cAAc,CAAC;IAE1B,aAAa;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,YAAY;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,WAAW;IACX,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,WAAW;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,cAAc;IACd,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAExB,WAAW;IACX,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,WAAW;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,gBAAgB;IAChB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAEpC,cAAc;IACd,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC,YAAY;IACZ,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,eAAe;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,gBAAgB;IAChB,aAAa,CAAC,EAAE,OAAO,CAAC;IAExB,aAAa;IACb,gBAAgB,CAAC,EAAE;QACjB,oBAAoB,EAAE,MAAM,EAAE,CAAC;QAC/B,QAAQ,EAAE,OAAO,CAAC;QAClB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IAEF,YAAY;IACZ,gBAAgB,CAAC,EAAE,GAAG,CAAC;CACxB;AAED;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,SAAgB,MAAM,EAAE,aAAa,CAAC;gBAE1B,MAAM,EAAE,aAAa;CAKlC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,WAAW;IACX,QAAQ,EAAE,OAAO,EAAE,CAAC;IAEpB,WAAW;IACX,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAE3C,WAAW;IACX,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,aAAa;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
1
+ {"version":3,"file":"iron-law.d.ts","sourceRoot":"","sources":["../../src/types/iron-law.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAIV,UAAU,EAGX,MAAM,cAAc,CAAC;AAKtB,YAAY,EACV,YAAY,IAAI,SAAS,EACzB,eAAe,EACf,iBAAiB,IAAI,cAAc,EACnC,UAAU,IAAI,OAAO,EACrB,gBAAgB,IAAI,aAAa,EACjC,iBAAiB,IAAI,cAAc,GACpC,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,wBAAwB,IAAI,qBAAqB,GAClD,MAAM,cAAc,CAAC;AAGtB,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAG3D,MAAM,WAAW,aAAa;IAC5B,kBAAkB;IAClB,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,kBAAkB;IAClB,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC3C,kBAAkB;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}