@dommaker/harness 1.1.1 → 1.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.
- package/CHANGELOG.md +10 -0
- package/README.md +2 -4
- package/bin/harness.js +12 -37
- package/dist/cli/commands/check.d.ts +2 -2
- package/dist/cli/commands/check.d.ts.map +1 -1
- package/dist/cli/commands/check.js +7 -32
- package/dist/cli/commands/check.js.map +1 -1
- package/dist/cli/commands/definitions.d.ts +2 -0
- package/dist/cli/commands/definitions.d.ts.map +1 -1
- package/dist/cli/commands/definitions.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +6 -37
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/knowledge.d.ts.map +1 -1
- package/dist/cli/commands/knowledge.js +1 -12
- package/dist/cli/commands/knowledge.js.map +1 -1
- package/dist/cli/commands/report.d.ts.map +1 -1
- package/dist/cli/commands/report.js +0 -2
- package/dist/cli/commands/report.js.map +1 -1
- package/dist/cli/commands/status.js +2 -2
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/context/index.d.ts +9 -6
- package/dist/context/index.d.ts.map +1 -1
- package/dist/context/index.js +18 -20
- package/dist/context/index.js.map +1 -1
- package/dist/core/constraints/capabilities-parser.d.ts +3 -2
- package/dist/core/constraints/capabilities-parser.d.ts.map +1 -1
- package/dist/core/constraints/capabilities-parser.js +25 -47
- package/dist/core/constraints/capabilities-parser.js.map +1 -1
- package/dist/core/constraints/checker.d.ts +29 -32
- package/dist/core/constraints/checker.d.ts.map +1 -1
- package/dist/core/constraints/checker.js +34 -126
- package/dist/core/constraints/checker.js.map +1 -1
- package/dist/core/constraints/checkers/index.d.ts +2 -1
- package/dist/core/constraints/checkers/index.d.ts.map +1 -1
- package/dist/core/constraints/checkers/index.js +3 -0
- package/dist/core/constraints/checkers/index.js.map +1 -1
- package/dist/core/constraints/checkers/types.d.ts +25 -0
- package/dist/core/constraints/checkers/types.d.ts.map +1 -1
- package/dist/core/constraints/checkers/types.js +24 -0
- package/dist/core/constraints/checkers/types.js.map +1 -1
- package/dist/core/constraints/definitions/guidelines.d.ts.map +1 -1
- package/dist/core/constraints/definitions/guidelines.js +0 -2
- package/dist/core/constraints/definitions/guidelines.js.map +1 -1
- package/dist/core/constraints/definitions/prompts.d.ts.map +1 -1
- package/dist/core/constraints/definitions/prompts.js +0 -5
- package/dist/core/constraints/definitions/prompts.js.map +1 -1
- package/dist/core/constraints/index.d.ts +1 -2
- package/dist/core/constraints/index.d.ts.map +1 -1
- package/dist/core/constraints/index.js +1 -7
- package/dist/core/constraints/index.js.map +1 -1
- package/dist/core/constraints/usage-report.d.ts +1 -2
- package/dist/core/constraints/usage-report.d.ts.map +1 -1
- package/dist/core/constraints/usage-report.js +2 -5
- package/dist/core/constraints/usage-report.js.map +1 -1
- package/dist/core/effective-constraints.d.ts +24 -4
- package/dist/core/effective-constraints.d.ts.map +1 -1
- package/dist/core/effective-constraints.js +28 -7
- package/dist/core/effective-constraints.js.map +1 -1
- package/dist/core/effective-set.d.ts +30 -0
- package/dist/core/effective-set.d.ts.map +1 -0
- package/dist/core/effective-set.js +35 -0
- package/dist/core/effective-set.js.map +1 -0
- package/dist/core/index.d.ts +13 -6
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +44 -21
- package/dist/core/index.js.map +1 -1
- package/dist/core/project-config-loader.d.ts +3 -6
- package/dist/core/project-config-loader.d.ts.map +1 -1
- package/dist/core/project-config-loader.js +47 -61
- package/dist/core/project-config-loader.js.map +1 -1
- package/dist/failure/constraint-handler.d.ts +1 -1
- package/dist/failure/constraint-handler.js +1 -1
- package/dist/gates/checker-gate.d.ts +1 -4
- package/dist/gates/checker-gate.d.ts.map +1 -1
- package/dist/gates/checker-gate.js +3 -11
- package/dist/gates/checker-gate.js.map +1 -1
- package/dist/gates/definitions.d.ts +9 -38
- package/dist/gates/definitions.d.ts.map +1 -1
- package/dist/gates/definitions.js +24 -13
- package/dist/gates/definitions.js.map +1 -1
- package/dist/gates/effective-gates.d.ts.map +1 -1
- package/dist/gates/effective-gates.js +14 -18
- package/dist/gates/effective-gates.js.map +1 -1
- package/dist/gates/index.d.ts +1 -1
- package/dist/gates/index.d.ts.map +1 -1
- package/dist/gates/index.js.map +1 -1
- package/dist/hooks/bootstrap.d.ts.map +1 -1
- package/dist/hooks/bootstrap.js +0 -3
- package/dist/hooks/bootstrap.js.map +1 -1
- package/dist/index.d.ts +43 -60
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +180 -143
- package/dist/index.js.map +1 -1
- package/dist/knowledge/query.d.ts +15 -0
- package/dist/knowledge/query.d.ts.map +1 -1
- package/dist/knowledge/query.js +23 -0
- package/dist/knowledge/query.js.map +1 -1
- package/dist/monitoring/analyzer-base.d.ts +0 -4
- package/dist/monitoring/analyzer-base.d.ts.map +1 -1
- package/dist/monitoring/analyzer-base.js +0 -21
- package/dist/monitoring/analyzer-base.js.map +1 -1
- package/dist/monitoring/index.d.ts +6 -12
- package/dist/monitoring/index.d.ts.map +1 -1
- package/dist/monitoring/index.js +13 -29
- package/dist/monitoring/index.js.map +1 -1
- package/dist/monitoring/trace-analyzer.d.ts.map +1 -1
- package/dist/monitoring/trace-analyzer.js +2 -68
- package/dist/monitoring/trace-analyzer.js.map +1 -1
- package/dist/monitoring/traces.d.ts +0 -4
- package/dist/monitoring/traces.d.ts.map +1 -1
- package/dist/monitoring/traces.js +0 -14
- package/dist/monitoring/traces.js.map +1 -1
- package/dist/presets/index.d.ts +2 -2
- package/dist/presets/index.d.ts.map +1 -1
- package/dist/presets/index.js +3 -4
- package/dist/presets/index.js.map +1 -1
- package/dist/presets/standard.d.ts +10 -22
- package/dist/presets/standard.d.ts.map +1 -1
- package/dist/presets/standard.js +15 -75
- package/dist/presets/standard.js.map +1 -1
- package/dist/types/constraint.d.ts +1 -29
- package/dist/types/constraint.d.ts.map +1 -1
- package/dist/types/constraint.js +1 -1
- package/dist/types/constraint.js.map +1 -1
- package/dist/types/index.d.ts +0 -3
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +0 -4
- package/dist/types/index.js.map +1 -1
- package/dist/types/project-config.d.ts +4 -8
- package/dist/types/project-config.d.ts.map +1 -1
- package/dist/types/trace.d.ts +5 -18
- package/dist/types/trace.d.ts.map +1 -1
- package/package.json +2 -2
- package/src/CONTEXT.md +4 -5
- package/src/__tests__/checker-extra.test.ts +33 -139
- package/src/__tests__/checker.test.ts +0 -376
- package/src/__tests__/project-config-loader-extra.test.ts +42 -29
- package/src/__tests__/public-exports.test.ts +138 -0
- package/src/__tests__/trace-analyzer-extra.test.ts +6 -86
- package/src/__tests__/trace-analyzer.test.ts +4 -5
- package/src/__tests__/trace-collector.test.ts +0 -11
- package/src/__tests__/traces.test.ts +3 -22
- package/src/cli/commands/CONTEXT.md +2 -2
- package/src/cli/commands/__tests__/check-skip-output.test.ts +10 -7
- package/src/cli/commands/__tests__/check.test.ts +29 -69
- package/src/cli/commands/__tests__/constraints-report.test.ts +1 -1
- package/src/cli/commands/__tests__/knowledge.test.ts +90 -1
- package/src/cli/commands/__tests__/registry.test.ts +8 -6
- package/src/cli/commands/__tests__/status-extra.test.ts +6 -6
- package/src/cli/commands/__tests__/status.test.ts +6 -6
- package/src/cli/commands/check.ts +8 -34
- package/src/cli/commands/definitions.ts +2 -0
- package/src/cli/commands/init.ts +6 -37
- package/src/cli/commands/knowledge.ts +1 -16
- package/src/cli/commands/report.ts +0 -2
- package/src/cli/commands/status.ts +2 -2
- package/src/context/index.ts +29 -6
- package/src/core/CONTEXT.md +4 -3
- package/src/core/__tests__/effective-set.test.ts +80 -0
- package/src/core/constraints/capabilities-parser.ts +43 -49
- package/src/core/constraints/checker.ts +51 -145
- package/src/core/constraints/checkers/index.ts +2 -1
- package/src/core/constraints/checkers/types.ts +42 -0
- package/src/core/constraints/definitions/guidelines.ts +0 -2
- package/src/core/constraints/definitions/prompts.ts +0 -5
- package/src/core/constraints/index.ts +2 -17
- package/src/core/constraints/usage-report.ts +5 -8
- package/src/core/effective-constraints.ts +35 -7
- package/src/core/effective-set.ts +56 -0
- package/src/core/index.ts +80 -6
- package/src/core/project-config-loader.ts +53 -68
- package/src/failure/CONTEXT.md +1 -1
- package/src/failure/constraint-handler.ts +1 -1
- package/src/gates/CONTEXT.md +3 -3
- package/src/gates/checker-gate.ts +4 -12
- package/src/gates/definitions.ts +27 -50
- package/src/gates/effective-gates.ts +14 -21
- package/src/gates/index.ts +1 -1
- package/src/hooks/bootstrap.ts +0 -3
- package/src/index.ts +384 -148
- package/src/knowledge/CONTEXT.md +2 -2
- package/src/knowledge/__tests__/query.test.ts +64 -0
- package/src/knowledge/query.ts +28 -0
- package/src/monitoring/CONTEXT.md +7 -13
- package/src/monitoring/__tests__/traces.test.ts +0 -10
- package/src/monitoring/analyzer-base.ts +0 -22
- package/src/monitoring/index.ts +6 -12
- package/src/monitoring/trace-analyzer.ts +2 -73
- package/src/monitoring/traces.ts +0 -20
- package/src/presets/__tests__/standard.test.ts +48 -69
- package/src/presets/index.ts +3 -5
- package/src/presets/standard.ts +14 -79
- package/src/spec/CONTEXT.md +5 -13
- package/src/types/constraint.ts +1 -51
- package/src/types/index.ts +0 -12
- package/src/types/project-config.ts +4 -10
- package/src/types/trace.ts +5 -30
- package/dist/core/constraints/interceptor.d.ts +0 -39
- package/dist/core/constraints/interceptor.d.ts.map +0 -1
- package/dist/core/constraints/interceptor.js +0 -166
- package/dist/core/constraints/interceptor.js.map +0 -1
- package/dist/dashboard/data.d.ts +0 -31
- package/dist/dashboard/data.d.ts.map +0 -1
- package/dist/dashboard/data.js +0 -81
- package/dist/dashboard/data.js.map +0 -1
- package/dist/dashboard/index.d.ts +0 -4
- package/dist/dashboard/index.d.ts.map +0 -1
- package/dist/dashboard/index.js +0 -20
- package/dist/dashboard/index.js.map +0 -1
- package/dist/dashboard/stats.d.ts +0 -20
- package/dist/dashboard/stats.d.ts.map +0 -1
- package/dist/dashboard/stats.js +0 -115
- package/dist/dashboard/stats.js.map +0 -1
- package/dist/dashboard/types.d.ts +0 -110
- package/dist/dashboard/types.d.ts.map +0 -1
- package/dist/dashboard/types.js +0 -8
- package/dist/dashboard/types.js.map +0 -1
- package/dist/monitoring/constraint-doctor.d.ts +0 -76
- package/dist/monitoring/constraint-doctor.d.ts.map +0 -1
- package/dist/monitoring/constraint-doctor.js +0 -189
- package/dist/monitoring/constraint-doctor.js.map +0 -1
- package/dist/monitoring/diagnosis-rules.d.ts +0 -18
- package/dist/monitoring/diagnosis-rules.d.ts.map +0 -1
- package/dist/monitoring/diagnosis-rules.js +0 -119
- package/dist/monitoring/diagnosis-rules.js.map +0 -1
- package/dist/monitoring/knowledge-doctor.d.ts +0 -78
- package/dist/monitoring/knowledge-doctor.d.ts.map +0 -1
- package/dist/monitoring/knowledge-doctor.js +0 -266
- package/dist/monitoring/knowledge-doctor.js.map +0 -1
- package/dist/monitoring/knowledge-evolver.d.ts +0 -72
- package/dist/monitoring/knowledge-evolver.d.ts.map +0 -1
- package/dist/monitoring/knowledge-evolver.js +0 -205
- package/dist/monitoring/knowledge-evolver.js.map +0 -1
- package/dist/monitoring/performance-analyzer.d.ts +0 -92
- package/dist/monitoring/performance-analyzer.d.ts.map +0 -1
- package/dist/monitoring/performance-analyzer.js +0 -343
- package/dist/monitoring/performance-analyzer.js.map +0 -1
- package/dist/monitoring/performance-collector.d.ts +0 -103
- package/dist/monitoring/performance-collector.d.ts.map +0 -1
- package/dist/monitoring/performance-collector.js +0 -298
- package/dist/monitoring/performance-collector.js.map +0 -1
- package/dist/safety/index.d.ts +0 -6
- package/dist/safety/index.d.ts.map +0 -1
- package/dist/safety/index.js +0 -22
- package/dist/safety/index.js.map +0 -1
- package/dist/safety/input-guardrail.d.ts +0 -36
- package/dist/safety/input-guardrail.d.ts.map +0 -1
- package/dist/safety/input-guardrail.js +0 -118
- package/dist/safety/input-guardrail.js.map +0 -1
- package/dist/safety/output-guardrail.d.ts +0 -39
- package/dist/safety/output-guardrail.d.ts.map +0 -1
- package/dist/safety/output-guardrail.js +0 -147
- package/dist/safety/output-guardrail.js.map +0 -1
- package/dist/safety/sandbox.d.ts +0 -45
- package/dist/safety/sandbox.d.ts.map +0 -1
- package/dist/safety/sandbox.js +0 -134
- package/dist/safety/sandbox.js.map +0 -1
- package/dist/safety/tool-guardrail.d.ts +0 -51
- package/dist/safety/tool-guardrail.d.ts.map +0 -1
- package/dist/safety/tool-guardrail.js +0 -147
- package/dist/safety/tool-guardrail.js.map +0 -1
- package/dist/safety/types.d.ts +0 -104
- package/dist/safety/types.d.ts.map +0 -1
- package/dist/safety/types.js +0 -6
- package/dist/safety/types.js.map +0 -1
- package/dist/spec/annotation-checker.d.ts +0 -47
- package/dist/spec/annotation-checker.d.ts.map +0 -1
- package/dist/spec/annotation-checker.js +0 -279
- package/dist/spec/annotation-checker.js.map +0 -1
- package/dist/types/enforcement.d.ts +0 -42
- package/dist/types/enforcement.d.ts.map +0 -1
- package/dist/types/enforcement.js +0 -6
- package/dist/types/enforcement.js.map +0 -1
- package/dist/types/monitoring-types.d.ts +0 -53
- package/dist/types/monitoring-types.d.ts.map +0 -1
- package/dist/types/monitoring-types.js +0 -10
- package/dist/types/monitoring-types.js.map +0 -1
- package/dist/types/performance.d.ts +0 -204
- package/dist/types/performance.d.ts.map +0 -1
- package/dist/types/performance.js +0 -12
- package/dist/types/performance.js.map +0 -1
- package/dist/verification/index.d.ts +0 -4
- package/dist/verification/index.d.ts.map +0 -1
- package/dist/verification/index.js +0 -20
- package/dist/verification/index.js.map +0 -1
- package/dist/verification/loop.d.ts +0 -30
- package/dist/verification/loop.d.ts.map +0 -1
- package/dist/verification/loop.js +0 -114
- package/dist/verification/loop.js.map +0 -1
- package/dist/verification/rules-based.d.ts +0 -40
- package/dist/verification/rules-based.d.ts.map +0 -1
- package/dist/verification/rules-based.js +0 -130
- package/dist/verification/rules-based.js.map +0 -1
- package/dist/verification/types.d.ts +0 -69
- package/dist/verification/types.d.ts.map +0 -1
- package/dist/verification/types.js +0 -6
- package/dist/verification/types.js.map +0 -1
- package/src/__tests__/annotation-checker.test.ts +0 -183
- package/src/__tests__/constraint-doctor.test.ts +0 -271
- package/src/__tests__/doctor-extra.test.ts +0 -155
- package/src/__tests__/extend-exceptions.test.ts +0 -149
- package/src/__tests__/interceptor.test.ts +0 -89
- package/src/__tests__/performance-analyzer.test.ts +0 -499
- package/src/__tests__/performance-collector.test.ts +0 -276
- package/src/__tests__/presets.test.ts +0 -65
- package/src/core/constraints/__tests__/interceptor.test.ts +0 -267
- package/src/core/constraints/interceptor.ts +0 -217
- package/src/dashboard/CONTEXT.md +0 -21
- package/src/dashboard/__tests__/data.test.ts +0 -111
- package/src/dashboard/__tests__/stats.test.ts +0 -159
- package/src/dashboard/data.ts +0 -103
- package/src/dashboard/index.ts +0 -3
- package/src/dashboard/stats.ts +0 -127
- package/src/dashboard/types.ts +0 -130
- package/src/monitoring/__tests__/knowledge-doctor.test.ts +0 -278
- package/src/monitoring/__tests__/knowledge-evolver.test.ts +0 -368
- package/src/monitoring/__tests__/performance-analyzer.test.ts +0 -137
- package/src/monitoring/__tests__/performance-collector.test.ts +0 -331
- package/src/monitoring/constraint-doctor.ts +0 -228
- package/src/monitoring/diagnosis-rules.ts +0 -132
- package/src/monitoring/knowledge-doctor.ts +0 -322
- package/src/monitoring/knowledge-evolver.ts +0 -289
- package/src/monitoring/performance-analyzer.ts +0 -400
- package/src/monitoring/performance-collector.ts +0 -326
- package/src/safety/CONTEXT.md +0 -23
- package/src/safety/__tests__/input-guardrail.test.ts +0 -105
- package/src/safety/__tests__/output-guardrail.test.ts +0 -108
- package/src/safety/__tests__/sandbox.test.ts +0 -158
- package/src/safety/__tests__/tool-guardrail.test.ts +0 -127
- package/src/safety/index.ts +0 -5
- package/src/safety/input-guardrail.ts +0 -133
- package/src/safety/output-guardrail.ts +0 -170
- package/src/safety/sandbox.ts +0 -148
- package/src/safety/tool-guardrail.ts +0 -176
- package/src/safety/types.ts +0 -124
- package/src/spec/__tests__/annotation-checker.test.ts +0 -294
- package/src/spec/annotation-checker.ts +0 -320
- package/src/types/enforcement.ts +0 -48
- package/src/types/monitoring-types.ts +0 -68
- package/src/types/performance.ts +0 -295
- package/src/verification/CONTEXT.md +0 -23
- package/src/verification/__tests__/loop.test.ts +0 -303
- package/src/verification/__tests__/rules-based.test.ts +0 -240
- package/src/verification/index.ts +0 -3
- package/src/verification/loop.ts +0 -137
- package/src/verification/rules-based.ts +0 -152
- package/src/verification/types.ts +0 -81
|
@@ -11,9 +11,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
11
11
|
exports.constraintChecker = exports.ConstraintChecker = void 0;
|
|
12
12
|
exports.checkConstraint = checkConstraint;
|
|
13
13
|
exports.checkConstraints = checkConstraints;
|
|
14
|
-
exports.checkConstraintsSafe = checkConstraintsSafe;
|
|
15
14
|
exports.checkBeforeExecution = checkBeforeExecution;
|
|
16
15
|
const constraint_1 = require("../../types/constraint");
|
|
16
|
+
const traces_1 = require("../../monitoring/traces");
|
|
17
17
|
const definitions_1 = require("./definitions");
|
|
18
18
|
const exec_1 = require("../../utils/exec");
|
|
19
19
|
const exec_2 = require("../../utils/exec");
|
|
@@ -21,36 +21,6 @@ const path_1 = require("path");
|
|
|
21
21
|
const check_cache_1 = require("./check-cache");
|
|
22
22
|
const file_walk_1 = require("../../utils/file-walk");
|
|
23
23
|
const checkers_1 = require("./checkers");
|
|
24
|
-
/**
|
|
25
|
-
* 例外名称 → ConstraintContext 中布尔字段的映射
|
|
26
|
-
*/
|
|
27
|
-
const EXCEPTION_FIELD_MAP = {
|
|
28
|
-
scalability_required: 'scalabilityRequired',
|
|
29
|
-
security_required: 'securityRequired',
|
|
30
|
-
performance_required: 'performanceRequired',
|
|
31
|
-
reliability_required: 'reliabilityRequired',
|
|
32
|
-
simple_typo: 'isSimpleTypo',
|
|
33
|
-
config_value_error: 'isConfigValueError',
|
|
34
|
-
missing_config: 'isMissingConfig',
|
|
35
|
-
config_file: 'isConfigFile',
|
|
36
|
-
type_definition: 'isTypeDefinition',
|
|
37
|
-
simple_accessor: 'isSimpleAccessor',
|
|
38
|
-
pure_display_component: 'isPureDisplayComponent',
|
|
39
|
-
json_parse_result: 'isJsonParseResult',
|
|
40
|
-
third_party_no_types: 'isThirdPartyNoTypes',
|
|
41
|
-
legacy_migration: 'isLegacyMigration',
|
|
42
|
-
internal_refactor: 'isInternalRefactor',
|
|
43
|
-
bug_fix_only: 'isBugFixOnly',
|
|
44
|
-
performance_optimization: 'isPerformanceOptimization',
|
|
45
|
-
redundant_code_cleanup: 'isRedundantCodeCleanup',
|
|
46
|
-
same_effect_refactor: 'isSameEffectRefactor',
|
|
47
|
-
unused_code_removal: 'isUnusedCodeRemoval',
|
|
48
|
-
external_dependency: 'isExternalDependency',
|
|
49
|
-
explicit_instruction: 'isExplicitInstruction',
|
|
50
|
-
emergency_fix: 'isEmergencyFix',
|
|
51
|
-
existing_design: 'isExistingDesign',
|
|
52
|
-
};
|
|
53
|
-
const NOOP_TRACE_RECORDER = { record: () => undefined };
|
|
54
24
|
/**
|
|
55
25
|
* 约束检查器
|
|
56
26
|
*/
|
|
@@ -59,13 +29,22 @@ class ConstraintChecker {
|
|
|
59
29
|
/** 检查结果缓存(S7:src 扫描等重复 I/O,TTL=1s 防跨测试污染) */
|
|
60
30
|
cache = new check_cache_1.CheckCache({ ttlMs: 1000 });
|
|
61
31
|
/**
|
|
62
|
-
* run 级 memo(工单 18):一次 checkConstraints
|
|
32
|
+
* run 级 memo(工单 18):一次 checkConstraints 内
|
|
63
33
|
* git diff 等命令只执行一次;run 外直接调用私有检查方法时不 memo(恒新鲜)。
|
|
64
34
|
*/
|
|
65
35
|
runCache = null;
|
|
66
|
-
/** trace
|
|
67
|
-
traceRecorder =
|
|
36
|
+
/** trace 记录器(注入式;null = 未显式注入,首次记录时惰性接线全局收集器) */
|
|
37
|
+
traceRecorder = null;
|
|
68
38
|
constructor() { }
|
|
39
|
+
/**
|
|
40
|
+
* 取 trace 记录器:未显式注入时惰性接线全局收集器(幂等,ADR-0003 副作用收敛)
|
|
41
|
+
*/
|
|
42
|
+
getRecorder() {
|
|
43
|
+
if (!this.traceRecorder) {
|
|
44
|
+
this.traceRecorder = (0, traces_1.getTraceCollector)();
|
|
45
|
+
}
|
|
46
|
+
return this.traceRecorder;
|
|
47
|
+
}
|
|
69
48
|
/**
|
|
70
49
|
* run 内 memoize;无活动 run 时直接执行(工单 18)
|
|
71
50
|
*/
|
|
@@ -101,7 +80,7 @@ class ConstraintChecker {
|
|
|
101
80
|
return ConstraintChecker.instance;
|
|
102
81
|
}
|
|
103
82
|
/**
|
|
104
|
-
* 注入 trace
|
|
83
|
+
* 注入 trace 记录器(测试/定制场景;不调用则首次记录时惰性接线全局收集器)
|
|
105
84
|
*/
|
|
106
85
|
setTraceRecorder(recorder) {
|
|
107
86
|
this.traceRecorder = recorder;
|
|
@@ -109,6 +88,9 @@ class ConstraintChecker {
|
|
|
109
88
|
/**
|
|
110
89
|
* 获取当前的约束集合(内置 + 自定义)
|
|
111
90
|
*
|
|
91
|
+
* 纯查询,无副作用(ADR-0006:原 `.check` 装配已随唯一消费者
|
|
92
|
+
* interceptor 的删除一并移除,ADR-0004)。
|
|
93
|
+
*
|
|
112
94
|
* @param customConfig 可选,per-request 自定义配置;不传则返回内置约束集
|
|
113
95
|
*/
|
|
114
96
|
getConstraints(customConfig) {
|
|
@@ -116,17 +98,10 @@ class ConstraintChecker {
|
|
|
116
98
|
const source = config
|
|
117
99
|
? { ironLaws: config.ironLaws, guidelines: config.guidelines, prompts: config.prompts ?? definitions_1.PROMPTS }
|
|
118
100
|
: { ironLaws: definitions_1.IRON_LAWS, guidelines: definitions_1.GUIDELINES, prompts: definitions_1.PROMPTS };
|
|
119
|
-
// Wire unified check() method on every constraint
|
|
120
|
-
const wire = (constraints) => {
|
|
121
|
-
for (const c of Object.values(constraints)) {
|
|
122
|
-
c.check = (ctx) => this.check(c, ctx);
|
|
123
|
-
}
|
|
124
|
-
return constraints;
|
|
125
|
-
};
|
|
126
101
|
return {
|
|
127
|
-
ironLaws:
|
|
128
|
-
guidelines:
|
|
129
|
-
prompts:
|
|
102
|
+
ironLaws: source.ironLaws,
|
|
103
|
+
guidelines: source.guidelines,
|
|
104
|
+
prompts: source.prompts,
|
|
130
105
|
};
|
|
131
106
|
}
|
|
132
107
|
/**
|
|
@@ -143,19 +118,6 @@ class ConstraintChecker {
|
|
|
143
118
|
checkedAt: new Date(),
|
|
144
119
|
};
|
|
145
120
|
}
|
|
146
|
-
// 检查例外条件(仅 Guidelines 有效)
|
|
147
|
-
if (constraint.level === 'guideline' && constraint.exceptions) {
|
|
148
|
-
if (this.checkException(constraint, context)) {
|
|
149
|
-
return {
|
|
150
|
-
id: constraint.id,
|
|
151
|
-
level: constraint.level,
|
|
152
|
-
satisfied: true,
|
|
153
|
-
constraint,
|
|
154
|
-
message: `指导原则 ${constraint.id} 因例外条件被豁免`,
|
|
155
|
-
checkedAt: new Date(),
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
121
|
// 检查前置条件('skip' = 约定未采用/证据未接线:satisfied 置 true 但不计 pass/fail)
|
|
160
122
|
const outcome = await this.checkPrecondition(constraint, context);
|
|
161
123
|
if (outcome === 'skip') {
|
|
@@ -180,14 +142,6 @@ class ConstraintChecker {
|
|
|
180
142
|
checkedAt: new Date(),
|
|
181
143
|
};
|
|
182
144
|
}
|
|
183
|
-
/**
|
|
184
|
-
* 检查例外条件
|
|
185
|
-
*/
|
|
186
|
-
checkException(constraint, context) {
|
|
187
|
-
if (!constraint.exceptions)
|
|
188
|
-
return false;
|
|
189
|
-
return constraint.exceptions.some((ex) => context[EXCEPTION_FIELD_MAP[ex]] === true);
|
|
190
|
-
}
|
|
191
145
|
/**
|
|
192
146
|
* 根据约束层级获取严重性
|
|
193
147
|
*/
|
|
@@ -225,9 +179,6 @@ class ConstraintChecker {
|
|
|
225
179
|
result: checkResult.skipped ? 'skip' : checkResult.satisfied ? 'pass' : 'fail',
|
|
226
180
|
operation: context.operation,
|
|
227
181
|
severity: this.getSeverity(constraint.level),
|
|
228
|
-
exceptionApplied: checkResult.message?.includes('豁免')
|
|
229
|
-
? constraint.exceptions?.[0]
|
|
230
|
-
: undefined,
|
|
231
182
|
projectPath: context.projectPath,
|
|
232
183
|
sessionId: context.sessionId,
|
|
233
184
|
});
|
|
@@ -245,13 +196,11 @@ class ConstraintChecker {
|
|
|
245
196
|
`请在 checkers/ 注册实现,或将约束改为 kind='prompt'。`);
|
|
246
197
|
}
|
|
247
198
|
const projectPath = context.projectPath || process.cwd();
|
|
248
|
-
const env = {
|
|
249
|
-
context,
|
|
250
|
-
projectPath,
|
|
199
|
+
const env = (0, checkers_1.buildCheckEnv)(context, {
|
|
251
200
|
stagedDiff: () => this.getStagedDiff(projectPath),
|
|
252
201
|
stagedDiffNames: () => this.getStagedDiffNames(projectPath),
|
|
253
202
|
srcScan: (root) => this.cache.getSync(`src_scan_${root}`, projectPath, () => (0, file_walk_1.findTsSourceFiles)((0, path_1.join)(projectPath, root), { skipIndex: true }).map((f) => (0, path_1.relative)(projectPath, f))),
|
|
254
|
-
};
|
|
203
|
+
});
|
|
255
204
|
return await impl.evaluate(env);
|
|
256
205
|
}
|
|
257
206
|
/**
|
|
@@ -297,7 +246,7 @@ class ConstraintChecker {
|
|
|
297
246
|
passed: true,
|
|
298
247
|
warningCount: 0,
|
|
299
248
|
};
|
|
300
|
-
const traceCollector = this.
|
|
249
|
+
const traceCollector = this.getRecorder();
|
|
301
250
|
const constraints = this.getConstraints(customConfig);
|
|
302
251
|
// 1. Iron Laws: 必须全部通过
|
|
303
252
|
for (const constraint of Object.values(constraints.ironLaws)) {
|
|
@@ -328,49 +277,6 @@ class ConstraintChecker {
|
|
|
328
277
|
this.runCache = null;
|
|
329
278
|
}
|
|
330
279
|
}
|
|
331
|
-
/**
|
|
332
|
-
* S11: 安全全量检查 — 全部约束检查,不抛异常
|
|
333
|
-
*
|
|
334
|
-
* 区别 checkConstraints(): Iron Law 违规收集在结果中而不是抛异常。
|
|
335
|
-
* 调用方通过 result.passed + result.warningCount 判断状态。
|
|
336
|
-
*/
|
|
337
|
-
async checkConstraintsSafe(context, customConfig) {
|
|
338
|
-
// run 起始:重置 run 级缓存(工单 18)
|
|
339
|
-
this.cache.invalidate();
|
|
340
|
-
this.runCache = new Map();
|
|
341
|
-
try {
|
|
342
|
-
const result = {
|
|
343
|
-
ironLaws: [],
|
|
344
|
-
guidelines: [],
|
|
345
|
-
passed: true,
|
|
346
|
-
warningCount: 0,
|
|
347
|
-
};
|
|
348
|
-
const traceCollector = this.traceRecorder;
|
|
349
|
-
const constraints = this.getConstraints(customConfig);
|
|
350
|
-
for (const constraint of Object.values(constraints.ironLaws)) {
|
|
351
|
-
if (!this.matchesTrigger(constraint, context))
|
|
352
|
-
continue;
|
|
353
|
-
const checkResult = await this.check(constraint, context);
|
|
354
|
-
result.ironLaws.push(checkResult);
|
|
355
|
-
this.recordTrace(traceCollector, constraint, checkResult, context);
|
|
356
|
-
if (!checkResult.satisfied)
|
|
357
|
-
result.passed = false;
|
|
358
|
-
}
|
|
359
|
-
for (const constraint of Object.values(constraints.guidelines)) {
|
|
360
|
-
if (!this.matchesTrigger(constraint, context))
|
|
361
|
-
continue;
|
|
362
|
-
const checkResult = await this.check(constraint, context);
|
|
363
|
-
result.guidelines.push(checkResult);
|
|
364
|
-
this.recordTrace(traceCollector, constraint, checkResult, context);
|
|
365
|
-
if (!checkResult.satisfied)
|
|
366
|
-
result.warningCount++;
|
|
367
|
-
}
|
|
368
|
-
return result;
|
|
369
|
-
}
|
|
370
|
-
finally {
|
|
371
|
-
this.runCache = null;
|
|
372
|
-
}
|
|
373
|
-
}
|
|
374
280
|
/**
|
|
375
281
|
* 执行前检查(仅检查 Iron Laws)
|
|
376
282
|
*
|
|
@@ -421,16 +327,18 @@ async function checkConstraint(constraintId, context, customConfig) {
|
|
|
421
327
|
* 快捷函数:执行三层检查
|
|
422
328
|
*
|
|
423
329
|
* @param context 约束上下文
|
|
424
|
-
* @param
|
|
330
|
+
* @param options.onTrace 每条约束检查后的回调(用于记录 trace 到外部存储)
|
|
331
|
+
* @param options.customConfig 可选,per-request 自定义约束配置;不传则用内置约束集
|
|
425
332
|
*/
|
|
426
|
-
async function checkConstraints(context,
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
333
|
+
async function checkConstraints(context, options) {
|
|
334
|
+
const result = await ConstraintChecker.getInstance().checkConstraints(context, options?.customConfig ?? null);
|
|
335
|
+
if (options?.onTrace) {
|
|
336
|
+
for (const r of result.ironLaws)
|
|
337
|
+
options.onTrace(r);
|
|
338
|
+
for (const r of result.guidelines)
|
|
339
|
+
options.onTrace(r);
|
|
340
|
+
}
|
|
341
|
+
return result;
|
|
434
342
|
}
|
|
435
343
|
/**
|
|
436
344
|
* 快捷函数:执行前检查
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checker.js","sourceRoot":"","sources":["../../../src/core/constraints/checker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"checker.js","sourceRoot":"","sources":["../../../src/core/constraints/checker.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,5 +17,6 @@ export declare function getConstraintCheck(id: string): ConstraintCheck | undefi
|
|
|
17
17
|
* 已注册的检查实现数量(诊断/测试用)
|
|
18
18
|
*/
|
|
19
19
|
export declare function registeredCheckCount(): number;
|
|
20
|
-
export
|
|
20
|
+
export { buildCheckEnv } from './types';
|
|
21
|
+
export type { ConstraintCheck, CheckEnv, CheckOutcome, EvidenceProviders } from './types';
|
|
21
22
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -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;AAuD/C;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAE1E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,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;AAuD/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"}
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* 任一不满足即抛错(加载期失败,不许静默 pass)。
|
|
10
10
|
*/
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.buildCheckEnv = void 0;
|
|
12
13
|
exports.getConstraintCheck = getConstraintCheck;
|
|
13
14
|
exports.registeredCheckCount = registeredCheckCount;
|
|
14
15
|
const definitions_1 = require("../definitions");
|
|
@@ -62,4 +63,6 @@ function getConstraintCheck(id) {
|
|
|
62
63
|
function registeredCheckCount() {
|
|
63
64
|
return registry.size;
|
|
64
65
|
}
|
|
66
|
+
var types_1 = require("./types");
|
|
67
|
+
Object.defineProperty(exports, "buildCheckEnv", { enumerable: true, get: function () { return types_1.buildCheckEnv; } });
|
|
65
68
|
//# sourceMappingURL=index.js.map
|
|
@@ -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;;;AA6DH,gDAEC;AAKD,oDAEC;AAnED,gDAAmD;AAEnD,6CAIsB;AACtB,iEAA4D;AAC5D,qEAAgE;AAChE,uDAAmD;AACnD,yDAAoD;AACpD,qDAAiD;AACjD,yEAAoE;AAEpE,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;CACf,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"}
|
|
@@ -23,6 +23,31 @@ export interface CheckEnv {
|
|
|
23
23
|
/** 源码根相对路径文件列表(run 内 cached) */
|
|
24
24
|
srcScan(root: string): string[];
|
|
25
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* 证据提供者组:git diff / 源码扫描的 memoized I/O
|
|
28
|
+
*
|
|
29
|
+
* 由调用方绑定后传入 buildCheckEnv(如 ConstraintChecker 绑实例级
|
|
30
|
+
* run 缓存的方法);工厂本身不做 memoization。
|
|
31
|
+
*/
|
|
32
|
+
export interface EvidenceProviders {
|
|
33
|
+
/** staged 全量 diff */
|
|
34
|
+
stagedDiff(): Promise<string>;
|
|
35
|
+
/** staged 变更文件名列表 */
|
|
36
|
+
stagedDiffNames(): Promise<string>;
|
|
37
|
+
/** 源码根相对路径文件列表 */
|
|
38
|
+
srcScan(root: string): string[];
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* 构造 CheckEnv:生产侧唯一构造点
|
|
42
|
+
*
|
|
43
|
+
* - providers 传入 = 证据接线,checker 正常评估
|
|
44
|
+
* - 'none' = 显式不接证据:证据函数返回空;evidence flag 未接线的
|
|
45
|
+
* checker 按契约返回 'skip'(见 contextEvidenceFlag),直接读空
|
|
46
|
+
* 证据的 checker 在自然输入下判定
|
|
47
|
+
*
|
|
48
|
+
* studio 侧若需 git 证据(#129),传真实 providers 即可。
|
|
49
|
+
*/
|
|
50
|
+
export declare function buildCheckEnv(context: ConstraintContext, evidence: EvidenceProviders | 'none'): CheckEnv;
|
|
26
51
|
/**
|
|
27
52
|
* 检查结果三态(ADR-0001 存在性探测 / flag 未接线):
|
|
28
53
|
* - true = 满足(pass)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,2CAA2C;IAC3C,OAAO,EAAE,iBAAiB,CAAC;IAC3B,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,qCAAqC;IACrC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,gCAAgC;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACjC;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,6CAA6C;IAC7C,QAAQ,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;CAC/D;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,GACjD,eAAe,CAEjB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,GAAG,SAAS,GACxD,eAAe,CASjB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,2CAA2C;IAC3C,OAAO,EAAE,iBAAiB,CAAC;IAC3B,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,qCAAqC;IACrC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,gCAAgC;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACjC;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,qBAAqB;IACrB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,qBAAqB;IACrB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,kBAAkB;IAClB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,iBAAiB,GAAG,MAAM,GACnC,QAAQ,CAYV;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,6CAA6C;IAC7C,QAAQ,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;CAC/D;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,GACjD,eAAe,CAEjB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,GAAG,SAAS,GACxD,eAAe,CASjB"}
|
|
@@ -6,8 +6,32 @@
|
|
|
6
6
|
* 通过 ConstraintCheck 接口 + CheckEnv 环境与编排层解耦。
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.buildCheckEnv = buildCheckEnv;
|
|
9
10
|
exports.contextFlag = contextFlag;
|
|
10
11
|
exports.contextEvidenceFlag = contextEvidenceFlag;
|
|
12
|
+
/**
|
|
13
|
+
* 构造 CheckEnv:生产侧唯一构造点
|
|
14
|
+
*
|
|
15
|
+
* - providers 传入 = 证据接线,checker 正常评估
|
|
16
|
+
* - 'none' = 显式不接证据:证据函数返回空;evidence flag 未接线的
|
|
17
|
+
* checker 按契约返回 'skip'(见 contextEvidenceFlag),直接读空
|
|
18
|
+
* 证据的 checker 在自然输入下判定
|
|
19
|
+
*
|
|
20
|
+
* studio 侧若需 git 证据(#129),传真实 providers 即可。
|
|
21
|
+
*/
|
|
22
|
+
function buildCheckEnv(context, evidence) {
|
|
23
|
+
const projectPath = context.projectPath || process.cwd();
|
|
24
|
+
if (evidence === 'none') {
|
|
25
|
+
return {
|
|
26
|
+
context,
|
|
27
|
+
projectPath,
|
|
28
|
+
stagedDiff: async () => '',
|
|
29
|
+
stagedDiffNames: async () => '',
|
|
30
|
+
srcScan: () => [],
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
return { context, projectPath, ...evidence };
|
|
34
|
+
}
|
|
11
35
|
/**
|
|
12
36
|
* 构造纯上下文标志检查(无 I/O 的轻量约束)
|
|
13
37
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAgDH,sCAeC;AAuBD,kCAKC;AASD,kDAYC;AA1ED;;;;;;;;;GASG;AACH,SAAgB,aAAa,CAC3B,OAA0B,EAC1B,QAAoC;IAEpC,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QACxB,OAAO;YACL,OAAO;YACP,WAAW;YACX,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE;YAC1B,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE;YAC/B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;SAClB,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,QAAQ,EAAE,CAAC;AAC/C,CAAC;AAoBD;;GAEG;AACH,SAAgB,WAAW,CACzB,EAAU,EACV,SAAkD;IAElD,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,mBAAmB,CACjC,EAAU,EACV,IAAyD;IAEzD,OAAO;QACL,EAAE;QACF,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;YAChB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAChC,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,MAAM,CAAC;YACvC,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -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,CAwFjD,CAAC"}
|
|
@@ -66,7 +66,6 @@ exports.GUIDELINES = {
|
|
|
66
66
|
- 性能优化不改变接口
|
|
67
67
|
|
|
68
68
|
支持模块级目录条目登记:governance.capabilities.mode=module 时按目录覆盖判定(如 src/core/ 一条目录条目覆盖该目录下所有源文件)。`,
|
|
69
|
-
exceptions: ['internal_refactor', 'bug_fix_only', 'performance_optimization'],
|
|
70
69
|
},
|
|
71
70
|
/**
|
|
72
71
|
* 关键目录需要 CONTEXT.md
|
|
@@ -94,7 +93,6 @@ exports.GUIDELINES = {
|
|
|
94
93
|
- 临时目录(tmp、temp)
|
|
95
94
|
- 测试目录(__tests__、test)
|
|
96
95
|
- 生成代码目录(dist、build、generated)`,
|
|
97
|
-
exceptions: ['temp_dir', 'test_dir', 'generated_code'],
|
|
98
96
|
},
|
|
99
97
|
};
|
|
100
98
|
//# 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;
|
|
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/definitions/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/definitions/prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,eAAO,MAAM,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAiZ9C,CAAC"}
|
|
@@ -75,7 +75,6 @@ exports.PROMPTS = {
|
|
|
75
75
|
- 用 fallback/兜底值掩盖上游数据异常而不追根因
|
|
76
76
|
- Read 定位后直接 Edit,不对照设计原型确认意图
|
|
77
77
|
- 从"数字异常"直接跳到根因结论,不验证假设的含义与量纲`,
|
|
78
|
-
exceptions: ['simple_typo', 'config_value_error', 'missing_config'],
|
|
79
78
|
promptInjection: '修复问题前必须先诊断根因——不止"哪里出错",而是"为什么设计成这样":用 Read/Grep 定位后禁止直接 Edit,先对照设计原型(CLAUDE.md、类型定义、commit message)确认原设计意图,呈现确认的根因+方案草案后才能动手。遇到空值/异常/不完整数据,禁止用 fallback/兜底/try-catch 掩盖——先追上游:数据谁产生的?为什么是空的?选择防御性兜底时必须在注释中说明根因;同一位置连续兜底 2+ 次是上游 bug 信号,停止修下游、追踪源头。从数据到结论必须先验证关键假设:数字的含义(累积/单次?量纲?)、正常范围、同类场景对比与反例,禁止"数字异常→直接定根因→直接改"的跳级推理。不绕过问题、不遮掩症状、不用临时方案代替根本修复。',
|
|
80
79
|
},
|
|
81
80
|
/**
|
|
@@ -105,7 +104,6 @@ exports.PROMPTS = {
|
|
|
105
104
|
- reliability_required: 需要持久化/高可用
|
|
106
105
|
|
|
107
106
|
YAGNI:不为"未来可能需要"添加抽象层、接口、配置项或插件系统;一个抽象只有一个实现者时删除该抽象。`,
|
|
108
|
-
exceptions: ['scalability_required', 'security_required', 'performance_required', 'reliability_required'],
|
|
109
107
|
promptInjection: '最简方案优先:用最少代码解决当前问题,不添加"以防万一"的冗余功能,不为仅用一次的代码强行设计抽象。创建新模块/文件/能力前,先查现有能力索引确认无可复用——优先级:直接复用 > 扩展现有 > 组合现有 > 新建。遵循 YAGNI:不为"未来可能需要"添加抽象层、接口、配置项或插件系统;一个 interface/abstract class 只有一个实现者时,删除这个抽象。自检:资深工程师是否会认为此实现过度复杂?若是,立即简化。',
|
|
110
108
|
injectPrompt: true,
|
|
111
109
|
},
|
|
@@ -134,7 +132,6 @@ YAGNI:不为"未来可能需要"添加抽象层、接口、配置项或插件
|
|
|
134
132
|
- 类型定义文件(.d.ts、interface)
|
|
135
133
|
- 简单 getter/setter
|
|
136
134
|
- 纯展示 UI 组件(无交互逻辑)`,
|
|
137
|
-
exceptions: ['config_file', 'type_definition', 'simple_accessor', 'pure_display_component'],
|
|
138
135
|
promptInjection: '新代码必须同时编写测试。实现功能前先写测试用例(RED),然后实现让测试通过(GREEN)。不得提交无测试覆盖的实现代码。',
|
|
139
136
|
},
|
|
140
137
|
/**
|
|
@@ -160,7 +157,6 @@ YAGNI:不为"未来可能需要"添加抽象层、接口、配置项或插件
|
|
|
160
157
|
- 发现冗余代码后的重构优化
|
|
161
158
|
- 用更简洁的实现达到相同效果
|
|
162
159
|
- 删除不再使用的遗留代码`,
|
|
163
|
-
exceptions: ['redundant_code_cleanup', 'same_effect_refactor', 'unused_code_removal'],
|
|
164
160
|
promptInjection: '不得擅自简化或删除测试、lint 规则、类型检查或约束。如需降低检查标准,必须先提案并获明确批准。',
|
|
165
161
|
},
|
|
166
162
|
/**
|
|
@@ -264,7 +260,6 @@ YAGNI:不为"未来可能需要"添加抽象层、接口、配置项或插件
|
|
|
264
260
|
- 用户明确说"直接做"、"不用问"
|
|
265
261
|
- 紧急修复
|
|
266
262
|
- 已有明确设计文档`,
|
|
267
|
-
exceptions: ['explicit_instruction', 'emergency_fix', 'existing_design'],
|
|
268
263
|
promptInjection: '涉及架构变更、新增依赖、API 设计等重大决策时,必须先提出讨论获得确认,再开始实现。不要凭单方面判断做架构决策。',
|
|
269
264
|
},
|
|
270
265
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../../src/core/constraints/definitions/prompts.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAIU,QAAA,OAAO,GAA+B;IACjD;;;OAGG;IACH,yBAAyB,EAAE;QACzB,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,0DAA0D;QAChE,OAAO,EAAE,oBAAoB;QAC7B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,eAAe,EAAE,qBAAqB,CAAC;QACnH,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;sCAkBqB;QAClC,eAAe,EAAE,kSAAkS;KACpT;IAED;;;OAGG;IACH,yBAAyB,EAAE;QACzB,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,iDAAiD;QACvD,OAAO,EAAE,kBAAkB;QAC3B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,WAAW,CAAC;QAC3G,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE;;;;;;;;;;;;;;;;;;8BAkBa;QAC1B,
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../../../src/core/constraints/definitions/prompts.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAIU,QAAA,OAAO,GAA+B;IACjD;;;OAGG;IACH,yBAAyB,EAAE;QACzB,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,0DAA0D;QAChE,OAAO,EAAE,oBAAoB;QAC7B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,eAAe,EAAE,qBAAqB,CAAC;QACnH,WAAW,EAAE,aAAa;QAC1B,WAAW,EAAE;;;;;;;;;;;;;;;;;;sCAkBqB;QAClC,eAAe,EAAE,kSAAkS;KACpT;IAED;;;OAGG;IACH,yBAAyB,EAAE;QACzB,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,iDAAiD;QACvD,OAAO,EAAE,kBAAkB;QAC3B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,WAAW,CAAC;QAC3G,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE;;;;;;;;;;;;;;;;;;8BAkBa;QAC1B,eAAe,EAAE,qVAAqV;KACvW;IAED;;;OAGG;IACH,uBAAuB,EAAE;QACvB,EAAE,EAAE,yBAAyB;QAC7B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,kDAAkD;QACxD,OAAO,EAAE,YAAY;QACrB,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;QACzF,WAAW,EAAE,mBAAmB;QAChC,WAAW,EAAE;;;;;;;;;;;;;;qDAcoC;QACjD,eAAe,EAAE,2NAA2N;QAC5O,YAAY,EAAE,IAAI;KACnB;IAED;;;OAGG;IACH,oBAAoB,EAAE;QACpB,EAAE,EAAE,sBAAsB;QAC1B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,6CAA6C;QACnD,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,WAAW;QACxB,WAAW,EAAE;;;;;;;;;;;;mBAYE;QACf,eAAe,EAAE,+DAA+D;KACjF;IAED;;;OAGG;IACH,kCAAkC,EAAE;QAClC,EAAE,EAAE,oCAAoC;QACxC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,4CAA4C;QAClD,OAAO,EAAE,cAAc;QACvB,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,qBAAqB;QAC9B,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;;;;;;;;;;cAUH;QACV,eAAe,EAAE,mDAAmD;KACrE;IAED;;;OAGG;IACH,4BAA4B,EAAE;QAC5B,EAAE,EAAE,8BAA8B;QAClC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,8DAA8D;QACpE,OAAO,EAAE,mBAAmB;QAC5B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,CAAC;QAC5E,WAAW,EAAE,iBAAiB;QAC9B,WAAW,EAAE,2FAA2F;QACxG,eAAe,EAAE,kDAAkD;QACnE,YAAY,EAAE,IAAI;KACnB;IAED;;;OAGG;IACH,0BAA0B,EAAE;QAC1B,EAAE,EAAE,4BAA4B;QAChC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,kDAAkD;QACxD,OAAO,EAAE,aAAa;QACtB,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,YAAY;QACrB,WAAW,EAAE,yBAAyB;QACtC,WAAW,EAAE;;;;;;;;;;;;;;;;;;mCAkBkB;QAC/B,eAAe,EAAE,qFAAqF;KACvG;IAED;;;OAGG;IACH,yBAAyB,EAAE;QACzB,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,4CAA4C;QAClD,OAAO,EAAE,qBAAqB;QAC9B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,eAAe,EAAE,iBAAiB,CAAC;QAC7C,WAAW,EAAE,eAAe;QAC5B,WAAW,EAAE;;;;;sBAKK;QAClB,eAAe,EAAE,0FAA0F;KAC5G;IAED;;;OAGG;IACH,mCAAmC,EAAE;QACnC,EAAE,EAAE,qCAAqC;QACzC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,0DAA0D;QAChE,OAAO,EAAE,kBAAkB;QAC3B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,qBAAqB,CAAC;QACzE,WAAW,EAAE,oBAAoB;QACjC,WAAW,EAAE;;;;;;;;;;;;;;;;;;;WAmBN;QACP,eAAe,EAAE,2DAA2D;KAC7E;IAED;;;OAGG;IACH,qBAAqB,EAAE;QACrB,EAAE,EAAE,uBAAuB;QAC3B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,0CAA0C;QAChD,OAAO,EAAE,oBAAoB;QAC7B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,mBAAmB,CAAC;QACrD,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,uDAAuD;QACpE,eAAe,EAAE,kDAAkD;QACnE,YAAY,EAAE,IAAI;KACnB;IAED;;;OAGG;IACH,kBAAkB,EAAE;QAClB,EAAE,EAAE,oBAAoB;QACxB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,kDAAkD;QACxD,OAAO,EAAE,2BAA2B;QACpC,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;QACpD,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE,oIAAoI;QACjJ,eAAe,EAAE,mEAAmE;QACpF,YAAY,EAAE,IAAI;KACnB;IAED;;;OAGG;IACH,sBAAsB,EAAE;QACtB,EAAE,EAAE,wBAAwB;QAC5B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,uDAAuD;QAC7D,OAAO,EAAE,kCAAkC;QAC3C,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,qBAAqB,EAAE,mBAAmB,CAAC;QAC5E,WAAW,EAAE,iBAAiB;QAC9B,WAAW,EAAE,yEAAyE;QACtF,eAAe,EAAE,oEAAoE;QACrF,YAAY,EAAE,IAAI;KACnB;IAED;;;OAGG;IACH,oBAAoB,EAAE;QACpB,EAAE,EAAE,sBAAsB;QAC1B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,sCAAsC;QAC5C,OAAO,EAAE,qBAAqB;QAC9B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,CAAC;QACpD,WAAW,EAAE,gBAAgB;QAC7B,WAAW,EAAE,iFAAiF;QAC9F,eAAe,EAAE,gDAAgD;QACjE,YAAY,EAAE,IAAI;KACnB;IAED;;;;OAIG;IACH,yBAAyB,EAAE;QACzB,EAAE,EAAE,2BAA2B;QAC/B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,4CAA4C;QAClD,OAAO,EAAE,kBAAkB;QAC3B,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,gBAAgB,CAAC;QAC3B,WAAW,EAAE,oBAAoB;QACjC,WAAW,EAAE;;;;;;;;;;;cAWH;QACV,eAAe,EAAE,uFAAuF;KACzG;IAED;;;OAGG;IACH,qBAAqB,EAAE;QACrB,EAAE,EAAE,uBAAuB;QAC3B,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,uCAAuC;QAC7C,OAAO,EAAE,gBAAgB;QACzB,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,iBAAiB;QAC1B,WAAW,EAAE,qBAAqB;QAClC,SAAS,EAAE,CAAC,aAAa,CAAC;QAC1B,WAAW,EAAE;;;;;;;;;;OAUV;QACH,eAAe,EAAE,8CAA8C;KAChE;IAED;;;OAGG;IACH,0BAA0B,EAAE;QAC1B,EAAE,EAAE,4BAA4B;QAChC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,4DAA4D;QAClE,OAAO,EAAE,2BAA2B;QACpC,KAAK,EAAE,QAAQ;QACf,OAAO,EAAE,CAAC,qBAAqB,CAAC;QAChC,WAAW,EAAE,qBAAqB;QAClC,SAAS,EAAE,CAAC,SAAS,CAAC;QACtB,WAAW,EAAE,qFAAqF;QAClG,eAAe,EAAE,sDAAsD;QACvE,YAAY,EAAE,IAAI;KACnB;CACF,CAAC"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export { IRON_LAWS, GUIDELINES, PROMPTS, getAllConstraints, findConstraintsByTrigger, getConstraint, } from './definitions';
|
|
5
5
|
export { ConstraintChecker, checkConstraint, checkConstraints, checkBeforeExecution, constraintChecker, } from './checker';
|
|
6
|
+
export type { CheckConstraintsOptions, TraceRecorder } from './checker';
|
|
6
7
|
export { CONSTRAINTS_START_MARKER, CONSTRAINTS_END_MARKER, renderConstraintsSection, } from './injection-renderer';
|
|
7
8
|
export { CheckCache } from './check-cache';
|
|
8
9
|
export type { CheckCacheConfig, CheckSamplingConfig } from './check-cache';
|
|
@@ -10,6 +11,4 @@ export { renderConstraintsByTrigger, } from './agent-prompt-renderer';
|
|
|
10
11
|
export type { RenderConstraintsByTriggerOptions } from './agent-prompt-renderer';
|
|
11
12
|
export type { ConstraintId, ConstraintKind, ConstraintLevel, ConstraintTrigger, Constraint, ConstraintResult, ConstraintContext, ConstraintCheckResult, IronLawContext, } from '../../types/constraint';
|
|
12
13
|
export { ConstraintViolationError } from '../../types/constraint';
|
|
13
|
-
export { ConstraintInterceptor, constraintInterceptor, interceptOperation, claimOperation, } from './interceptor';
|
|
14
|
-
export type { EnforcementId, EnforcementExecutor, EnforcementContext, EnforcementResult, InterceptionResult, } from '../../types/enforcement';
|
|
15
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/constraints/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,SAAS,EACT,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,wBAAwB,EACxB,aAAa,GACd,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/constraints/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EACL,SAAS,EACT,UAAU,EACV,OAAO,EACP,iBAAiB,EACjB,wBAAwB,EACxB,aAAa,GACd,MAAM,eAAe,CAAC;AAGvB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAGxE,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAG3E,OAAO,EACL,0BAA0B,GAC3B,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,iCAAiC,EAAE,MAAM,yBAAyB,CAAC;AAGjF,YAAY,EACV,YAAY,EACZ,cAAc,EACd,eAAe,EACf,iBAAiB,EACjB,UAAU,EACV,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,GACf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* 约束模块入口
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.ConstraintViolationError = exports.renderConstraintsByTrigger = exports.CheckCache = exports.renderConstraintsSection = exports.CONSTRAINTS_END_MARKER = exports.CONSTRAINTS_START_MARKER = exports.constraintChecker = exports.checkBeforeExecution = exports.checkConstraints = exports.checkConstraint = exports.ConstraintChecker = exports.getConstraint = exports.findConstraintsByTrigger = exports.getAllConstraints = exports.PROMPTS = exports.GUIDELINES = exports.IRON_LAWS = void 0;
|
|
7
7
|
// 约束定义(kind 二元:check 层 + prompt 层)
|
|
8
8
|
var definitions_1 = require("./definitions");
|
|
9
9
|
Object.defineProperty(exports, "IRON_LAWS", { enumerable: true, get: function () { return definitions_1.IRON_LAWS; } });
|
|
@@ -32,10 +32,4 @@ var agent_prompt_renderer_1 = require("./agent-prompt-renderer");
|
|
|
32
32
|
Object.defineProperty(exports, "renderConstraintsByTrigger", { enumerable: true, get: function () { return agent_prompt_renderer_1.renderConstraintsByTrigger; } });
|
|
33
33
|
var constraint_1 = require("../../types/constraint");
|
|
34
34
|
Object.defineProperty(exports, "ConstraintViolationError", { enumerable: true, get: function () { return constraint_1.ConstraintViolationError; } });
|
|
35
|
-
// 约束拦截器
|
|
36
|
-
var interceptor_1 = require("./interceptor");
|
|
37
|
-
Object.defineProperty(exports, "ConstraintInterceptor", { enumerable: true, get: function () { return interceptor_1.ConstraintInterceptor; } });
|
|
38
|
-
Object.defineProperty(exports, "constraintInterceptor", { enumerable: true, get: function () { return interceptor_1.constraintInterceptor; } });
|
|
39
|
-
Object.defineProperty(exports, "interceptOperation", { enumerable: true, get: function () { return interceptor_1.interceptOperation; } });
|
|
40
|
-
Object.defineProperty(exports, "claimOperation", { enumerable: true, get: function () { return interceptor_1.claimOperation; } });
|
|
41
35
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/constraints/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,mCAAmC;AACnC,6CAOuB;AANrB,wGAAA,SAAS,OAAA;AACT,yGAAA,UAAU,OAAA;AACV,sGAAA,OAAO,OAAA;AACP,gHAAA,iBAAiB,OAAA;AACjB,uHAAA,wBAAwB,OAAA;AACxB,4GAAA,aAAa,OAAA;AAGf,QAAQ;AACR,qCAMmB;AALjB,4GAAA,iBAAiB,OAAA;AACjB,0GAAA,eAAe,OAAA;AACf,2GAAA,gBAAgB,OAAA;AAChB,+GAAA,oBAAoB,OAAA;AACpB,4GAAA,iBAAiB,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/constraints/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,mCAAmC;AACnC,6CAOuB;AANrB,wGAAA,SAAS,OAAA;AACT,yGAAA,UAAU,OAAA;AACV,sGAAA,OAAO,OAAA;AACP,gHAAA,iBAAiB,OAAA;AACjB,uHAAA,wBAAwB,OAAA;AACxB,4GAAA,aAAa,OAAA;AAGf,QAAQ;AACR,qCAMmB;AALjB,4GAAA,iBAAiB,OAAA;AACjB,0GAAA,eAAe,OAAA;AACf,2GAAA,gBAAgB,OAAA;AAChB,+GAAA,oBAAoB,OAAA;AACpB,4GAAA,iBAAiB,OAAA;AAInB,wCAAwC;AACxC,2DAI8B;AAH5B,8HAAA,wBAAwB,OAAA;AACxB,4HAAA,sBAAsB,OAAA;AACtB,8HAAA,wBAAwB,OAAA;AAG1B,mCAAmC;AACnC,6CAA2C;AAAlC,yGAAA,UAAU,OAAA;AAGnB,4DAA4D;AAC5D,iEAEiC;AAD/B,mIAAA,0BAA0B,OAAA;AAiB5B,qDAAkE;AAAzD,sHAAA,wBAAwB,OAAA"}
|
|
@@ -21,12 +21,11 @@ export declare const FLAG_EVIDENCE_CONSTRAINT_IDS: ReadonlySet<string>;
|
|
|
21
21
|
export interface ConstraintUsageStats {
|
|
22
22
|
id: string;
|
|
23
23
|
level: Constraint['level'];
|
|
24
|
-
/** trace 总行数(含 skip
|
|
24
|
+
/** trace 总行数(含 skip) */
|
|
25
25
|
total: number;
|
|
26
26
|
pass: number;
|
|
27
27
|
fail: number;
|
|
28
28
|
skip: number;
|
|
29
|
-
bypassed: number;
|
|
30
29
|
/** 实际评估次数(total - skip;skip 未评估不计入,与 TraceAnalyzer 一致) */
|
|
31
30
|
evaluated: number;
|
|
32
31
|
/** 失败率(fail / evaluated;evaluated=0 时为 0) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usage-report.d.ts","sourceRoot":"","sources":["../../../src/core/constraints/usage-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,4BAA4B,EAAE,WAAW,CAAC,MAAM,CAI3D,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAE3B,
|
|
1
|
+
{"version":3,"file":"usage-report.d.ts","sourceRoot":"","sources":["../../../src/core/constraints/usage-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,4BAA4B,EAAE,WAAW,CAAC,MAAM,CAI3D,CAAC;AAEH;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAE3B,wBAAwB;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IAEb,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC;IAElB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IAEjB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAC3B,cAAc,GACd,aAAa,GACb,YAAY,GACZ,gBAAgB,CAAC;AAErB,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,oBAAoB,CAAC;IAC5B,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,0BAA0B;IAC1B,yBAAyB,EAAE,MAAM,CAAC;IAClC,kCAAkC;IAClC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,yBAAyB;IACzB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,eAAO,MAAM,2BAA2B,EAAE,kBAIzC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,gDAAgD;IAChD,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,4EAA4E;IAC5E,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,+BAA+B;IAC/B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,2BAA2B;IAC3B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,mBAAmB;IACnB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,cAAc,EAAE,CAgBvE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,cAAc,EAAE,GACvB,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,GAAG,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC,CAAC,CAgBpF;AAmBD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,oBAAoB,EAAE,EAC7B,UAAU,GAAE,OAAO,CAAC,kBAAkB,CAAM,GAC3C,eAAe,EAAE,CAiDnB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,WAAW,GAAE,MAAsB,EACnC,UAAU,GAAE,OAAO,CAAC,kBAAkB,CAAM,GAC3C,sBAAsB,CAoBxB"}
|