@aster-cloud/aster-lang-ts 1.0.33 → 1.0.35
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/dist/src/diagnostics/error_codes.d.ts +6 -1
- package/dist/src/diagnostics/error_codes.d.ts.map +1 -1
- package/dist/src/diagnostics/error_codes.js +39 -0
- package/dist/src/diagnostics/error_codes.js.map +1 -1
- package/dist/src/index.d.ts +14 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +11 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/mapping/pipeline.d.ts +87 -0
- package/dist/src/mapping/pipeline.d.ts.map +1 -0
- package/dist/src/mapping/pipeline.js +145 -0
- package/dist/src/mapping/pipeline.js.map +1 -0
- package/dist/src/mapping/quantity-ir.js +68 -5
- package/dist/src/mapping/quantity-ir.js.map +1 -1
- package/dist/src/mapping/review-queue.d.ts +92 -0
- package/dist/src/mapping/review-queue.d.ts.map +1 -0
- package/dist/src/mapping/review-queue.js +105 -0
- package/dist/src/mapping/review-queue.js.map +1 -0
- package/dist/test/unit/mapping/bridge-parity.test.d.ts +2 -0
- package/dist/test/unit/mapping/bridge-parity.test.d.ts.map +1 -0
- package/dist/test/unit/mapping/bridge-parity.test.js +74 -0
- package/dist/test/unit/mapping/bridge-parity.test.js.map +1 -0
- package/dist/test/unit/mapping/pipeline.test.d.ts +2 -0
- package/dist/test/unit/mapping/pipeline.test.d.ts.map +1 -0
- package/dist/test/unit/mapping/pipeline.test.js +108 -0
- package/dist/test/unit/mapping/pipeline.test.js.map +1 -0
- package/dist/test/unit/mapping/review-queue.test.d.ts +2 -0
- package/dist/test/unit/mapping/review-queue.test.d.ts.map +1 -0
- package/dist/test/unit/mapping/review-queue.test.js +112 -0
- package/dist/test/unit/mapping/review-queue.test.js.map +1 -0
- package/dist/test/unit/mapping/verdict-parity.test.d.ts +2 -0
- package/dist/test/unit/mapping/verdict-parity.test.d.ts.map +1 -0
- package/dist/test/unit/mapping/verdict-parity.test.js +85 -0
- package/dist/test/unit/mapping/verdict-parity.test.js.map +1 -0
- package/package.json +1 -1
|
@@ -80,7 +80,12 @@ export declare const enum ErrorCode {
|
|
|
80
80
|
GOV_CONTROL_UNREGISTERED = "W704",
|
|
81
81
|
GOV_PROFILE_UNKNOWN = "E705",
|
|
82
82
|
GOV_PROFILE_VIOLATION = "E706",
|
|
83
|
-
GOV_CHECK_UNAVAILABLE = "E707"
|
|
83
|
+
GOV_CHECK_UNAVAILABLE = "E707",
|
|
84
|
+
CEDAR_NOT_EXPORTABLE_SHAPE = "E720",
|
|
85
|
+
CEDAR_UNSUPPORTED_CONSTRUCT = "E721",
|
|
86
|
+
CEDAR_UNTYPED_CONTEXT_KEY = "E722",
|
|
87
|
+
CEDAR_EQUIVALENCE_MISMATCH = "E723",
|
|
88
|
+
CEDAR_SCHEMA_INVALID = "E724"
|
|
84
89
|
}
|
|
85
90
|
export interface ErrorMetadata {
|
|
86
91
|
readonly code: ErrorCode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error_codes.d.ts","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,YAAY,CAAC;AACxG,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAEzD,0BAAkB,SAAS;IACzB,aAAa,SAAS;IACtB,oBAAoB,SAAS;IAC7B,oBAAoB,SAAS;IAC7B,mBAAmB,SAAS;IAC5B,iBAAiB,SAAS;IAC1B,uBAAuB,SAAS;IAChC,oBAAoB,SAAS;IAC7B,kBAAkB,SAAS;IAC3B,qBAAqB,SAAS;IAC9B,oBAAoB,SAAS;IAC7B,aAAa,SAAS;IACtB,mBAAmB,SAAS;IAC5B,sBAAsB,SAAS;IAC/B,cAAc,SAAS;IACvB,UAAU,SAAS;IACnB,mBAAmB,SAAS;IAC5B,oBAAoB,SAAS;IAC7B,mBAAmB,SAAS;IAC5B,yBAAyB,SAAS;IAClC,0BAA0B,SAAS;IACnC,iBAAiB,SAAS;IAC1B,wBAAwB,SAAS;IACjC,2BAA2B,SAAS;IACpC,sBAAsB,SAAS;IAC/B,wBAAwB,SAAS;IACjC,0BAA0B,SAAS;IACnC,8BAA8B,SAAS;IACvC,yBAAyB,SAAS;IAClC,gCAAgC,SAAS;IACzC,4BAA4B,SAAS;IACrC,qBAAqB,SAAS;IAC9B,mBAAmB,SAAS;IAC5B,oBAAoB,SAAS;IAC7B,oBAAoB,SAAS;IAC7B,iBAAiB,SAAS;IAC1B,sBAAsB,SAAS;IAC/B,kBAAkB,SAAS;IAC3B,oBAAoB,SAAS;IAC7B,sBAAsB,SAAS;IAC/B,gBAAgB,SAAS;IACzB,cAAc,SAAS;IACvB,eAAe,SAAS;IACxB,2BAA2B,SAAS;IACpC,kBAAkB,SAAS;IAC3B,mBAAmB,SAAS;IAC5B,oBAAoB,SAAS;IAC7B,qBAAqB,SAAS;IAC9B,sBAAsB,SAAS;IAC/B,uBAAuB,SAAS;IAChC,+BAA+B,SAAS;IACxC,qBAAqB,SAAS;IAC9B,qBAAqB,SAAS;IAC9B,yBAAyB,SAAS;IAClC,sBAAsB,SAAS;IAC/B,eAAe,SAAS;IACxB,mBAAmB,SAAS;IAC5B,2BAA2B,SAAS;IACpC,4BAA4B,SAAS;IACrC,oBAAoB,SAAS;IAC7B,sBAAsB,SAAS;IAC/B,wBAAwB,SAAS;IACjC,yBAAyB,SAAS;IAClC,mBAAmB,SAAS;IAC5B,sBAAsB,SAAS;IAC/B,sBAAsB,SAAS;IAC/B,qBAAqB,SAAS;IAC9B,oBAAoB,SAAS;IAC7B,uBAAuB,SAAS;IAChC,oBAAoB,SAAS;IAC7B,gBAAgB,SAAS;IACzB,2BAA2B,SAAS;IACpC,6BAA6B,SAAS;IACtC,2BAA2B,SAAS;IACpC,qBAAqB,SAAS;IAC9B,0BAA0B,SAAS;IACnC,sBAAsB,SAAS;IAC/B,wBAAwB,SAAS;IACjC,mBAAmB,SAAS;IAC5B,qBAAqB,SAAS;IAC9B,qBAAqB,SAAS;
|
|
1
|
+
{"version":3,"file":"error_codes.d.ts","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,6 +81,11 @@ export const ERROR_MESSAGES = {
|
|
|
81
81
|
["E705" /* ErrorCode.GOV_PROFILE_UNKNOWN */]: "Module '{module}' declares unknown profile '{profile}' (controls registry {version})",
|
|
82
82
|
["E706" /* ErrorCode.GOV_PROFILE_VIOLATION */]: "Rule '{rule}' violates profile '{profile}': {requirement}",
|
|
83
83
|
["E707" /* ErrorCode.GOV_CHECK_UNAVAILABLE */]: "Governance check could not run for module '{module}' (profile '{profile}'); saving is blocked until it succeeds",
|
|
84
|
+
["E720" /* ErrorCode.CEDAR_NOT_EXPORTABLE_SHAPE */]: "Rule '{rule}' cannot be exported to Cedar: {reason}",
|
|
85
|
+
["E721" /* ErrorCode.CEDAR_UNSUPPORTED_CONSTRUCT */]: "Rule '{rule}' uses {construct}, which has no Cedar translation",
|
|
86
|
+
["E722" /* ErrorCode.CEDAR_UNTYPED_CONTEXT_KEY */]: "Context key '{key}' in rule '{rule}' is used as both {first} and {second}",
|
|
87
|
+
["E723" /* ErrorCode.CEDAR_EQUIVALENCE_MISMATCH */]: "Cedar export of rule '{rule}' disagrees with Aster on probe {probe}: Aster {aster}, Cedar {cedar}",
|
|
88
|
+
["E724" /* ErrorCode.CEDAR_SCHEMA_INVALID */]: "Generated Cedar for rule '{rule}' failed schema validation: {detail}",
|
|
84
89
|
};
|
|
85
90
|
export const ERROR_METADATA = {
|
|
86
91
|
["E001" /* ErrorCode.TYPE_MISMATCH */]: {
|
|
@@ -642,6 +647,40 @@ export const ERROR_METADATA = {
|
|
|
642
647
|
severity: 'error',
|
|
643
648
|
message: "Governance check could not run for module '{module}' (profile '{profile}'); saving is blocked until it succeeds",
|
|
644
649
|
help: "Retry later; this is a service fault, not a policy violation.",
|
|
650
|
+
}, ["E720" /* ErrorCode.CEDAR_NOT_EXPORTABLE_SHAPE */]: {
|
|
651
|
+
code: "E720" /* ErrorCode.CEDAR_NOT_EXPORTABLE_SHAPE */,
|
|
652
|
+
category: 'governance',
|
|
653
|
+
severity: 'error',
|
|
654
|
+
message: "Rule '{rule}' cannot be exported to Cedar: {reason}",
|
|
655
|
+
help: "Exportable rules need @id, one parameter with the guard request fields (principal_id, principal_type, principal_roles, action, resource_type, resource_id, context, agent_model) and a Verdict result.",
|
|
656
|
+
},
|
|
657
|
+
["E721" /* ErrorCode.CEDAR_UNSUPPORTED_CONSTRUCT */]: {
|
|
658
|
+
code: "E721" /* ErrorCode.CEDAR_UNSUPPORTED_CONSTRUCT */,
|
|
659
|
+
category: 'governance',
|
|
660
|
+
severity: 'error',
|
|
661
|
+
message: "Rule '{rule}' uses {construct}, which has no Cedar translation",
|
|
662
|
+
help: "Use comparisons, and/or/not, List.contains on principal_roles and integer arithmetic with literals, or keep this rule Aster-only.",
|
|
663
|
+
},
|
|
664
|
+
["E722" /* ErrorCode.CEDAR_UNTYPED_CONTEXT_KEY */]: {
|
|
665
|
+
code: "E722" /* ErrorCode.CEDAR_UNTYPED_CONTEXT_KEY */,
|
|
666
|
+
category: 'governance',
|
|
667
|
+
severity: 'error',
|
|
668
|
+
message: "Context key '{key}' in rule '{rule}' is used as both {first} and {second}",
|
|
669
|
+
help: "Use each context key with a single type (number, text or boolean).",
|
|
670
|
+
},
|
|
671
|
+
["E723" /* ErrorCode.CEDAR_EQUIVALENCE_MISMATCH */]: {
|
|
672
|
+
code: "E723" /* ErrorCode.CEDAR_EQUIVALENCE_MISMATCH */,
|
|
673
|
+
category: 'governance',
|
|
674
|
+
severity: 'error',
|
|
675
|
+
message: "Cedar export of rule '{rule}' disagrees with Aster on probe {probe}: Aster {aster}, Cedar {cedar}",
|
|
676
|
+
help: "This is an exporter defect; the export was withheld. Please report it.",
|
|
677
|
+
},
|
|
678
|
+
["E724" /* ErrorCode.CEDAR_SCHEMA_INVALID */]: {
|
|
679
|
+
code: "E724" /* ErrorCode.CEDAR_SCHEMA_INVALID */,
|
|
680
|
+
category: 'governance',
|
|
681
|
+
severity: 'error',
|
|
682
|
+
message: "Generated Cedar for rule '{rule}' failed schema validation: {detail}",
|
|
683
|
+
help: "This is an exporter defect; the export was withheld. Please report it.",
|
|
645
684
|
},
|
|
646
685
|
};
|
|
647
686
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"error_codes.js","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"error_codes.js","sourceRoot":"","sources":["../../../src/diagnostics/error_codes.ts"],"names":[],"mappings":"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"}
|
package/dist/src/index.d.ts
CHANGED
|
@@ -42,4 +42,18 @@ export type { ControlsRegistryData, LocalizedTitle } from './governance/controls
|
|
|
42
42
|
export { generateFieldValue, generateInputValues, getFieldValueHint, } from './parser/input-generator.js';
|
|
43
43
|
export type { TypeKind, FieldInfo, ParameterInfo, } from './parser/input-generator.js';
|
|
44
44
|
export type * from './types.js';
|
|
45
|
+
export { runSemanticBridge } from './mapping/pipeline.js';
|
|
46
|
+
export type { BridgeResult, VerifiedCandidate } from './mapping/pipeline.js';
|
|
47
|
+
export { parseSourceIr, nodeAtOffset, verifyCoverage } from './mapping/source-ir.js';
|
|
48
|
+
export type { SourceNode, SectionKind } from './mapping/source-ir.js';
|
|
49
|
+
export { extractQuantities } from './mapping/quantity-ir.js';
|
|
50
|
+
export type { Quantity, QuantityKind, EntityCandidate } from './mapping/quantity-ir.js';
|
|
51
|
+
export { verifyMapping } from './mapping/mapping-ir.js';
|
|
52
|
+
export type { CandidateMapping, VerificationResult, VerificationVerdict, VerifiableNode, TextSpan } from './mapping/mapping-ir.js';
|
|
53
|
+
export { buildReviewQueue, recordHumanProof } from './mapping/review-queue.js';
|
|
54
|
+
export type { ReviewQueue, ReviewItem, ReviewSource } from './mapping/review-queue.js';
|
|
55
|
+
export { isApplicableTo, resolveEffective } from './mapping/proof-ir.js';
|
|
56
|
+
export type { Proof, ProofSubject, ProofRule, ProofAnchor, Applicability } from './mapping/proof-ir.js';
|
|
57
|
+
export { proposeEntities, parseProposals, verifyEntityCandidate } from './mapping/entity-proposer.js';
|
|
58
|
+
export type { ProposalResult } from './mapping/entity-proposer.js';
|
|
45
59
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/src/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACV,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGpC,OAAO,EACL,eAAe,EACf,+BAA+B,EAC/B,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvF,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,YAAY,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAGnG,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,QAAQ,EACR,SAAS,EACT,aAAa,GACd,MAAM,6BAA6B,CAAC;AAGrC,mBAAmB,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGjD,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAC1C,YAAY,EACV,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGpC,OAAO,EACL,eAAe,EACf,+BAA+B,EAC/B,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AACvF,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAC3E,YAAY,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAGnG,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,YAAY,EACV,QAAQ,EACR,SAAS,EACT,aAAa,GACd,MAAM,6BAA6B,CAAC;AAGrC,mBAAmB,YAAY,CAAC;AAMhC,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACrF,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACxF,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,mBAAmB,EACrE,cAAc,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzE,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACxG,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACtG,YAAY,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC"}
|
package/dist/src/index.js
CHANGED
|
@@ -40,4 +40,15 @@ export { controlRegistryFrom, defaultControlRegistry } from './governance/contro
|
|
|
40
40
|
export { CONTROLS_REGISTRY } from './governance/controls-registry.data.js';
|
|
41
41
|
// 输入值生成器(用于策略执行时自动生成示例输入)
|
|
42
42
|
export { generateFieldValue, generateInputValues, getFieldValueHint, } from './parser/input-generator.js';
|
|
43
|
+
// ── ADR 0037 可验证语义桥 ────────────────────────────────────────────
|
|
44
|
+
// ★接线后才导出:此前六个模块全是死代码(生产调用数 0、不在导出面内)。
|
|
45
|
+
// `runSemanticBridge` 是唯一入口,内部串起
|
|
46
|
+
// SourceIR → QuantityIR → CandidateGenerator → MappingIR。
|
|
47
|
+
export { runSemanticBridge } from './mapping/pipeline.js';
|
|
48
|
+
export { parseSourceIr, nodeAtOffset, verifyCoverage } from './mapping/source-ir.js';
|
|
49
|
+
export { extractQuantities } from './mapping/quantity-ir.js';
|
|
50
|
+
export { verifyMapping } from './mapping/mapping-ir.js';
|
|
51
|
+
export { buildReviewQueue, recordHumanProof } from './mapping/review-queue.js';
|
|
52
|
+
export { isApplicableTo, resolveEffective } from './mapping/proof-ir.js';
|
|
53
|
+
export { proposeEntities, parseProposals, verifyEntityCandidate } from './mapping/entity-proposer.js';
|
|
43
54
|
//# sourceMappingURL=index.js.map
|
package/dist/src/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,oBAAoB;AACpB,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAO1C,UAAU;AACV,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO;AACP,OAAO,EACL,eAAe,EACf,+BAA+B,EAC/B,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAEvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAG3E,0BAA0B;AAC1B,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,UAAU;AACV,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEtD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,oBAAoB;AACpB,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,yBAAyB,EACzB,eAAe,EACf,0BAA0B,EAC1B,cAAc,EACd,uBAAuB,GACxB,MAAM,kCAAkC,CAAC;AAO1C,UAAU;AACV,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO;AACP,OAAO,EACL,eAAe,EACf,+BAA+B,EAC/B,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAEvF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAG3E,0BAA0B;AAC1B,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AAUrC,kEAAkE;AAClE,uCAAuC;AACvC,mCAAmC;AACnC,4DAA4D;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAErF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE/E,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { type SourceNode } from './source-ir.js';
|
|
2
|
+
import { type Quantity } from './quantity-ir.js';
|
|
3
|
+
import { type CandidateMapping, type VerificationResult } from './mapping-ir.js';
|
|
4
|
+
/**
|
|
5
|
+
* 可验证语义桥的**端到端接线**(ADR 0037 §7)。
|
|
6
|
+
*
|
|
7
|
+
* <h2>★为什么需要这个文件</h2>
|
|
8
|
+
*
|
|
9
|
+
* ADR 0037 建了六个模块(SourceIR / QuantityIR / MappingIR / ProofIR /
|
|
10
|
+
* CandidateGenerator / EntityProposer),但**没有任何生产路径调用它们**
|
|
11
|
+
* ——实测六个模块的生产调用数全为 0,也不在 `src/index.ts` 的导出面内。
|
|
12
|
+
* 即:**地基铺好了,线没接**。
|
|
13
|
+
*
|
|
14
|
+
* <p>本文件把它们串成一条可观测的链路:
|
|
15
|
+
*
|
|
16
|
+
* <pre>
|
|
17
|
+
* 人类文档
|
|
18
|
+
* ├─ parseSourceIr ──────────► 文档结构(Document/Section/Span)
|
|
19
|
+
* ├─ extractQuantities ──────► 数量实体(确定性,零 AI)
|
|
20
|
+
* └─ canonicalize→lex→parse→lower
|
|
21
|
+
* ├─ computeNodeIds ───► 稳定节点 ID
|
|
22
|
+
* ├─ generateCandidates► 候选映射(机械切片,不猜)
|
|
23
|
+
* └─ verifyMapping ────► 判定:VERIFIED / REVIEW_REQUIRED / REJECTED
|
|
24
|
+
* </pre>
|
|
25
|
+
*
|
|
26
|
+
* <h2>★本模块刻意不做的事</h2>
|
|
27
|
+
*
|
|
28
|
+
* - **不调 LLM**。Entity 提出是三段式的第①段,需要 provider,由调用方
|
|
29
|
+
* 显式传入结果(见 {@link BridgeResult.entityCandidates} 的说明)。
|
|
30
|
+
* 把 LLM 调用埋进"主链路"会让一条本该确定性的流水线变得不可复现。
|
|
31
|
+
* - **不产出 Proof**。`REVIEW_REQUIRED` 的候选必须由**人**给出 ProofIR
|
|
32
|
+
* (`subject = DOMAIN_EXPERT`),机器不得代签(ADR §3)。
|
|
33
|
+
* - **不吞错**。任何跳过/失败都进 {@link BridgeResult.diagnostics}。
|
|
34
|
+
*/
|
|
35
|
+
/** 一条候选及其判定结果。 */
|
|
36
|
+
export interface VerifiedCandidate {
|
|
37
|
+
readonly mapping: CandidateMapping;
|
|
38
|
+
readonly result: VerificationResult;
|
|
39
|
+
/**
|
|
40
|
+
* 目标节点在**本次判定时**的内容指纹(`NodeIdMap` 的 contentHash)。
|
|
41
|
+
*
|
|
42
|
+
* <p>★**必须随候选一起交出去**:人工复核记录 Proof 时要用它锚定
|
|
43
|
+
* 「当时看到的是哪一版内容」。内容一变,`isApplicableTo` 才能算出
|
|
44
|
+
* `CONTENT_CHANGED` 而不是悄悄沿用旧结论。
|
|
45
|
+
*
|
|
46
|
+
* <p>★这个字段是**接 UI 时补的**:此前 `BridgeResult` 不含它,
|
|
47
|
+
* 导致复核面板拿不到 hash、提交必被服务端拒(要求 64 位十六进制)。
|
|
48
|
+
* 单测全绿也发现不了——因为没有任何测试真的走完"取候选 → 提交结论"。
|
|
49
|
+
* 又一次「验了对象,没验连线」。
|
|
50
|
+
*
|
|
51
|
+
* <p>节点不在 NodeIdMap 中时为 `undefined`(正常情况下不会发生,
|
|
52
|
+
* 真发生了 diagnostics 里会有「路径口径可能漂移」)。
|
|
53
|
+
*/
|
|
54
|
+
readonly contentHash: string | undefined;
|
|
55
|
+
}
|
|
56
|
+
/** 端到端结果。★所有"没做成"的事都在 `diagnostics` 里,不静默丢弃。 */
|
|
57
|
+
export interface BridgeResult {
|
|
58
|
+
/** 文档结构(人类视角)。源文本无法解析时为 `undefined`。 */
|
|
59
|
+
readonly sourceIr: SourceNode | undefined;
|
|
60
|
+
/** 确定性抽取的数量实体。 */
|
|
61
|
+
readonly quantities: readonly Quantity[];
|
|
62
|
+
/** 候选映射及其判定。 */
|
|
63
|
+
readonly verified: readonly VerifiedCandidate[];
|
|
64
|
+
/** 按判定分组的计数——UI 的复核队列直接用这个。 */
|
|
65
|
+
readonly summary: {
|
|
66
|
+
readonly verified: number;
|
|
67
|
+
readonly reviewRequired: number;
|
|
68
|
+
readonly rejected: number;
|
|
69
|
+
};
|
|
70
|
+
/**
|
|
71
|
+
* 过程中所有「没做成」的事:解析失败、节点被跳过、区间切不出来……
|
|
72
|
+
*
|
|
73
|
+
* <p>★**必须如实报告**。静默跳过会让调用方以为「全都生成了」,
|
|
74
|
+
* 而实际上某些节点从双向导航里消失了——那种缺失极难发现。
|
|
75
|
+
*/
|
|
76
|
+
readonly diagnostics: readonly string[];
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* 跑通「人类文档 → 结构化 → 抽取 → 候选 → 验证」全链路。
|
|
80
|
+
*
|
|
81
|
+
* <p>★`source` 必须是**可编译的 Aster 源码**。对于"任意文字",当前的定位是:
|
|
82
|
+
* SourceIR 与 QuantityIR 对任意文本都能工作(它们只依赖形态特征),
|
|
83
|
+
* 而候选映射与验证需要源码能 lower 成 Core IR。两者在本函数里**分别降级**
|
|
84
|
+
* ——编译不了时仍返回文档结构与数量实体,并在 diagnostics 里说明原因。
|
|
85
|
+
*/
|
|
86
|
+
export declare function runSemanticBridge(source: string): BridgeResult;
|
|
87
|
+
//# sourceMappingURL=pipeline.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../src/mapping/pipeline.ts"],"names":[],"mappings":"AAKA,OAAO,EAAiB,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAqB,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EAAiB,KAAK,gBAAgB,EAAE,KAAK,kBAAkB,EAC/C,MAAM,iBAAiB,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,kBAAkB;AAClB,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAC;IACpC;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAED,gDAAgD;AAChD,MAAM,WAAW,YAAY;IAC3B,wCAAwC;IACxC,QAAQ,CAAC,QAAQ,EAAE,UAAU,GAAG,SAAS,CAAC;IAC1C,kBAAkB;IAClB,QAAQ,CAAC,UAAU,EAAE,SAAS,QAAQ,EAAE,CAAC;IACzC,gBAAgB;IAChB,QAAQ,CAAC,QAAQ,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAChD,+BAA+B;IAC/B,QAAQ,CAAC,OAAO,EAAE;QAChB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAC1B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;QAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC3B,CAAC;IACF;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAgF9D"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
import { canonicalize } from '../frontend/canonicalizer.js';
|
|
2
|
+
import { lex } from '../frontend/lexer.js';
|
|
3
|
+
import { parse } from '../parser.js';
|
|
4
|
+
import { lowerModule } from '../lower_to_core.js';
|
|
5
|
+
import { computeNodeIds } from '../nodeid/node-id-map.js';
|
|
6
|
+
import { parseSourceIr } from './source-ir.js';
|
|
7
|
+
import { extractQuantities } from './quantity-ir.js';
|
|
8
|
+
import { generateCandidates, collectLiteralNodes } from './candidate-generator.js';
|
|
9
|
+
import { verifyMapping } from './mapping-ir.js';
|
|
10
|
+
/**
|
|
11
|
+
* 跑通「人类文档 → 结构化 → 抽取 → 候选 → 验证」全链路。
|
|
12
|
+
*
|
|
13
|
+
* <p>★`source` 必须是**可编译的 Aster 源码**。对于"任意文字",当前的定位是:
|
|
14
|
+
* SourceIR 与 QuantityIR 对任意文本都能工作(它们只依赖形态特征),
|
|
15
|
+
* 而候选映射与验证需要源码能 lower 成 Core IR。两者在本函数里**分别降级**
|
|
16
|
+
* ——编译不了时仍返回文档结构与数量实体,并在 diagnostics 里说明原因。
|
|
17
|
+
*/
|
|
18
|
+
export function runSemanticBridge(source) {
|
|
19
|
+
const diagnostics = [];
|
|
20
|
+
// ── 第 1 层:人类文档结构(对任意文本都成立)──────────────────
|
|
21
|
+
let sourceIr;
|
|
22
|
+
try {
|
|
23
|
+
sourceIr = parseSourceIr(source);
|
|
24
|
+
}
|
|
25
|
+
catch (e) {
|
|
26
|
+
diagnostics.push(`SourceIR 解析失败:${e instanceof Error ? e.message : String(e)}`);
|
|
27
|
+
}
|
|
28
|
+
// ── 第 2 层:确定性数量抽取(对任意文本都成立,零 AI)─────────
|
|
29
|
+
let quantities = [];
|
|
30
|
+
try {
|
|
31
|
+
quantities = extractQuantities(source);
|
|
32
|
+
}
|
|
33
|
+
catch (e) {
|
|
34
|
+
diagnostics.push(`QuantityIR 抽取失败:${e instanceof Error ? e.message : String(e)}`);
|
|
35
|
+
}
|
|
36
|
+
// ── 第 3 层:候选映射 + 验证(需要源码可编译)─────────────────
|
|
37
|
+
// ★这一层**会失败**,且失败是常态(任意文字不是合法 Aster 源码)。
|
|
38
|
+
// 失败时前两层的结果仍然有效——这正是分层降级的意义。
|
|
39
|
+
let verified = [];
|
|
40
|
+
try {
|
|
41
|
+
const canonical = canonicalize(source);
|
|
42
|
+
const ir = lowerModule(parse(lex(canonical)).ast);
|
|
43
|
+
const identities = computeNodeIds(ir);
|
|
44
|
+
const nodes = collectLiteralNodes(ir);
|
|
45
|
+
if (nodes.length === 0) {
|
|
46
|
+
diagnostics.push('IR 里没有带 origin 的字面量节点——无候选可生成。');
|
|
47
|
+
}
|
|
48
|
+
const generated = generateCandidates(canonical, nodes);
|
|
49
|
+
for (const s of generated.skipped) {
|
|
50
|
+
diagnostics.push(`跳过节点 ${s.nodeId}:${s.why}`);
|
|
51
|
+
}
|
|
52
|
+
// ★`resolve` 的节点必须从 **IR 本身**取值,不能从 NodeIdentity 取。
|
|
53
|
+
//
|
|
54
|
+
// 我第一版从 `computeNodeIds` 的返回值里读 `value`/`name`——实测
|
|
55
|
+
// `NodeIdentity` 只有 `{nodeId, contentHash, kind}`,**根本没有 value**,
|
|
56
|
+
// 于是 `verifyMapping` 拿不到值、把每条候选都判成 REJECTED。
|
|
57
|
+
// 端到端 demo 一跑就暴露了(2 条候选全 REJECTED,而它们本该 VERIFIED)。
|
|
58
|
+
// ★这也说明"接线"本身必须端到端验证——单看两侧模块的单测都是绿的。
|
|
59
|
+
const byId = collectVerifiableNodes(ir);
|
|
60
|
+
// identities 仅用于校验路径口径一致(两边都由同一套 segmentOf 规则生成)。
|
|
61
|
+
for (const id of byId.keys()) {
|
|
62
|
+
if (!identities.has(id)) {
|
|
63
|
+
diagnostics.push(`节点 ${id} 不在 NodeIdMap 中——路径口径可能漂移。`);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
verified = generated.candidates.map(mapping => ({
|
|
67
|
+
mapping,
|
|
68
|
+
result: verifyMapping(mapping, id => byId.get(id)),
|
|
69
|
+
contentHash: identities.get(mapping.nodeId)?.contentHash,
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
catch (e) {
|
|
73
|
+
// ★不把编译失败当成错误——"任意文字"本就编译不了。
|
|
74
|
+
// 如实记录,让调用方知道第 3 层没跑,而不是以为跑了但没结果。
|
|
75
|
+
diagnostics.push(`源码无法编译成 Core IR,候选映射层已跳过:`
|
|
76
|
+
+ `${e instanceof Error ? e.message : String(e)}`);
|
|
77
|
+
}
|
|
78
|
+
let v = 0, r = 0, j = 0;
|
|
79
|
+
for (const c of verified) {
|
|
80
|
+
if (c.result.verdict === 'VERIFIED')
|
|
81
|
+
v++;
|
|
82
|
+
else if (c.result.verdict === 'REVIEW_REQUIRED')
|
|
83
|
+
r++;
|
|
84
|
+
else
|
|
85
|
+
j++;
|
|
86
|
+
}
|
|
87
|
+
return {
|
|
88
|
+
sourceIr,
|
|
89
|
+
quantities,
|
|
90
|
+
verified,
|
|
91
|
+
summary: { verified: v, reviewRequired: r, rejected: j },
|
|
92
|
+
diagnostics,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* 按与 {@link collectLiteralNodes} **完全相同**的路径规则遍历 IR,
|
|
97
|
+
* 产出 `nodeId → VerifiableNode`(带 `value`/`name`)。
|
|
98
|
+
*
|
|
99
|
+
* <p>★为什么不复用 `computeNodeIds` 的返回值:`NodeIdentity` 只有
|
|
100
|
+
* `{nodeId, contentHash, kind}`,**不含 value**。用它做 `resolve` 会让
|
|
101
|
+
* `verifyMapping` 永远比不出值,把所有候选判成 REJECTED。
|
|
102
|
+
*
|
|
103
|
+
* <p>★路径规则必须与 `collectLiteralNodes` / `NodeIdMap` **三方一致**,
|
|
104
|
+
* 否则候选的 nodeId 与这里的键对不上——那种错会表现为"节点不存在",
|
|
105
|
+
* 极易被误读成 IR 有问题。
|
|
106
|
+
*/
|
|
107
|
+
function collectVerifiableNodes(ir) {
|
|
108
|
+
const out = new Map();
|
|
109
|
+
walkVerifiable(ir, '$', out);
|
|
110
|
+
return out;
|
|
111
|
+
}
|
|
112
|
+
function walkVerifiable(node, path, out) {
|
|
113
|
+
if (node === null || typeof node !== 'object' || Array.isArray(node))
|
|
114
|
+
return;
|
|
115
|
+
const obj = node;
|
|
116
|
+
if (typeof obj.kind === 'string') {
|
|
117
|
+
out.set(path, {
|
|
118
|
+
kind: obj.kind,
|
|
119
|
+
...(obj.value === undefined ? {} : { value: obj.value }),
|
|
120
|
+
...(typeof obj.name === 'string' ? { name: obj.name } : {}),
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
for (const [field, value] of Object.entries(obj)) {
|
|
124
|
+
if (field === 'origin')
|
|
125
|
+
continue;
|
|
126
|
+
if (Array.isArray(value)) {
|
|
127
|
+
value.forEach((el, i) => walkVerifiable(el, `${path}.${field}${segmentOfPath(el, i)}`, out));
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
walkVerifiable(value, `${path}.${field}`, out);
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
/** 与 `collectLiteralNodes.segmentOf` / `NodeIdMap.segmentOf` 同规则(三方必须一致)。 */
|
|
135
|
+
function segmentOfPath(element, index) {
|
|
136
|
+
if (element !== null && typeof element === 'object' && !Array.isArray(element)) {
|
|
137
|
+
const el = element;
|
|
138
|
+
if (typeof el.name === 'string' && el.name !== '_')
|
|
139
|
+
return `{${el.name}}`;
|
|
140
|
+
if (typeof el.path === 'string')
|
|
141
|
+
return `{${el.path}}`;
|
|
142
|
+
}
|
|
143
|
+
return `[${index}]`;
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=pipeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/mapping/pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -126,11 +126,56 @@ function normalize(kind, text) {
|
|
|
126
126
|
return value === undefined ? undefined : { value };
|
|
127
127
|
}
|
|
128
128
|
case 'DURATION': {
|
|
129
|
-
|
|
130
|
-
|
|
129
|
+
// ★改用**线性**解析,不再用 `^(\d+(?:\.\d+)?)\s?(.+)$`。
|
|
130
|
+
//
|
|
131
|
+
// 原式呈二次:`(.+)$` 在尾部失配时逼着 `\d+` 逐位回退重试。
|
|
132
|
+
// 实测(`'00'.repeat(n/2) + '\n'`):
|
|
133
|
+
// 10000→144ms、20000→575ms、40000→2303ms、80000→9723ms(×4.0)
|
|
134
|
+
//
|
|
135
|
+
// ★这条是 CodeQL 报出来的(js/polynomial-redos, high)。我第一次实测
|
|
136
|
+
// 试了 5 种载荷全是线性,一度判它误报——直到补上「尾随 `\n`」才复现。
|
|
137
|
+
// **我的载荷决定了我的结论**(本轮第三次栽在同一件事上)。
|
|
138
|
+
//
|
|
139
|
+
// ★为什么不能只在正则上改(都试过,逐条记下避免重走):
|
|
140
|
+
// `([^\n]+)` 尾部 → 等价但**仍二次**
|
|
141
|
+
// `(.+?)` 惰性 → 等价但**仍二次**
|
|
142
|
+
// `(?=(\d+…))\1` 原子组 → 线性但**不等价**(原式要求 `\d+` 可回退:
|
|
143
|
+
// `"01"` → `["0","1"]`,原子化后直接失配)
|
|
144
|
+
// 即:**原语义本身依赖回退**,正则层无解,只能落到代码层。
|
|
145
|
+
//
|
|
146
|
+
// 本实现保留"可回退"语义,但让每次尝试都是 O(1):
|
|
147
|
+
// ① 一次扫出最长数字前缀;
|
|
148
|
+
// ② 合法前缀长度用 `dot` 位置 O(1) 判定(不再每次重跑正则);
|
|
149
|
+
// ③ 尾部是否含 `\n` 用预计算的 `lastIndexOf` O(1) 判定。
|
|
150
|
+
// 回退次数 ≤ 数字长度,每次 O(1) ⇒ 总功 O(n)。
|
|
151
|
+
//
|
|
152
|
+
// 等价性实证:随机 300000 组(96356 组匹配成功)逐字节零分歧。
|
|
153
|
+
// 性能:80000 长度 9723ms → 2.19ms。
|
|
154
|
+
const num = /^\d+(?:\.\d+)?/.exec(text);
|
|
155
|
+
if (num === null)
|
|
131
156
|
return undefined;
|
|
132
|
-
const
|
|
133
|
-
|
|
157
|
+
const maxLen = num[0].length;
|
|
158
|
+
const dot = num[0].indexOf('.');
|
|
159
|
+
const lastNl = text.lastIndexOf('\n');
|
|
160
|
+
// 合法数字前缀长度:无小数点时 1..maxLen 全合法;
|
|
161
|
+
// 有小数点时,`dot+1`(即以 `.` 结尾)非法,其余合法。
|
|
162
|
+
const okLen = (k) => dot < 0 ? true : (k <= dot || k >= dot + 2);
|
|
163
|
+
for (let k = maxLen; k >= 1; k--) {
|
|
164
|
+
if (!okLen(k))
|
|
165
|
+
continue;
|
|
166
|
+
// 分支①:`\s?` 吃掉一个空白字符(它**可以**是 `\n`)
|
|
167
|
+
if (k < text.length && /\s/.test(text[k])
|
|
168
|
+
&& text.length - (k + 1) > 0 && lastNl < k + 1) {
|
|
169
|
+
const value = canonicalDecimal(text.slice(0, k));
|
|
170
|
+
return value === undefined ? undefined : { value, unit: text.slice(k + 1) };
|
|
171
|
+
}
|
|
172
|
+
// 分支②:`\s?` 不吃
|
|
173
|
+
if (text.length - k > 0 && lastNl < k) {
|
|
174
|
+
const value = canonicalDecimal(text.slice(0, k));
|
|
175
|
+
return value === undefined ? undefined : { value, unit: text.slice(k) };
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
return undefined;
|
|
134
179
|
}
|
|
135
180
|
}
|
|
136
181
|
}
|
|
@@ -145,7 +190,25 @@ function canonicalDecimal(s) {
|
|
|
145
190
|
if (m === null)
|
|
146
191
|
return undefined;
|
|
147
192
|
const intPart = m[1].replace(/^0+(?=\d)/, '');
|
|
148
|
-
|
|
193
|
+
// ★去尾随零用**线性扫描**而非 `/0+$/` —— 后者呈二次回溯:
|
|
194
|
+
// `+` 在每个起始位置贪婪吃完再回退,实测 10000→144ms、20000→576ms、
|
|
195
|
+
// 40000→2306ms(×4.0)。
|
|
196
|
+
//
|
|
197
|
+
// ★有意思的是:CodeQL 报的是上面那条 `^(\d+)(?:\.(\d*))?$`(js/polynomial-redos,
|
|
198
|
+
// high),但实测它是**线性**的(×2.0)——在 V8 上是误报。
|
|
199
|
+
// 真正二次的 `0+$` 它**没报**。
|
|
200
|
+
// → 静态扫描器给方向,**判据仍是实测增长率**。
|
|
201
|
+
//
|
|
202
|
+
// 当前无调用方能喂进超长小数(PERCENT/MONEY 的模式限制了长度),
|
|
203
|
+
// 故这不是可达漏洞;但本模块吃的是人类文档,改成线性是零成本的去险。
|
|
204
|
+
const frac = stripTrailingZeros(m[2] ?? '');
|
|
149
205
|
return frac.length > 0 ? `${intPart}.${frac}` : intPart;
|
|
150
206
|
}
|
|
207
|
+
/** 去掉尾随的 `0`。★线性扫描,语义与 `/0+$/` 完全一致。 */
|
|
208
|
+
function stripTrailingZeros(s) {
|
|
209
|
+
let end = s.length;
|
|
210
|
+
while (end > 0 && s.charCodeAt(end - 1) === 48)
|
|
211
|
+
end--; // '0'
|
|
212
|
+
return end === s.length ? s : s.slice(0, end);
|
|
213
|
+
}
|
|
151
214
|
//# sourceMappingURL=quantity-ir.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quantity-ir.js","sourceRoot":"","sources":["../../../src/mapping/quantity-ir.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"quantity-ir.js","sourceRoot":"","sources":["../../../src/mapping/quantity-ir.ts"],"names":[],"mappings":"AAwFA;;;;;;;;;;GAUG;AACH,MAAM,QAAQ,GAAsD;IAClE,+CAA+C;IAC/C,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,8BAA8B,EAAE;IACrD,mBAAmB;IACnB,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,oBAAoB,EAAE;IAC1C,oDAAoD;IACpD,EAAE;IACF,6CAA6C;IAC7C,sCAAsC;IACtC,EAAE;IACF,uBAAuB;IACvB,kCAAkC;IAClC,sCAAsC;IACtC,wCAAwC;IACxC,EAAE;IACF,+CAA+C;IAC/C,qCAAqC;IACrC,EAAE;IACF,0CAA0C;IAC1C,kBAAkB;IAClB,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,8BAA8B,EAAE;IACvD,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,yEAAyE,EAAE;CACpG,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAAgB;IAChD,MAAM,KAAK,GAAe,EAAE,CAAC;IAE7B,qDAAqD;IACrD,EAAE;IACF,mDAAmD;IACnD,+CAA+C;IAC/C,+DAA+D;IAC/D,EAAE;IACF,yCAAyC;IACzC,0DAA0D;IAC1D,2CAA2C;IAC3C,MAAM,OAAO,GAAqC,EAAE,CAAC;IAErD,yDAAyD;IACzD,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,GAAW,EAAW,EAAE;QACvD,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QACxB,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,OAAO,CAAC,GAAG,CAAE,CAAC,GAAG,IAAI,KAAK;gBAAE,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC;;gBACxC,EAAE,GAAG,GAAG,CAAC;QAChB,CAAC;QACD,sCAAsC;QACtC,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,EAAE,CAAE,CAAC,KAAK,GAAG,GAAG,CAAC;IACzD,CAAC,CAAC;IAEF,wCAAwC;IACxC,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,GAAW,EAAQ,EAAE;QACzD,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QACxB,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,OAAO,CAAC,GAAG,CAAE,CAAC,KAAK,GAAG,KAAK;gBAAE,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC;;gBACzC,EAAE,GAAG,GAAG,CAAC;QAChB,CAAC;QACD,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IACxC,CAAC,CAAC;IAEF,KAAK,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,QAAQ,EAAE,CAAC;QACpC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClE,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;YACtB,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAChC,8CAA8C;YAC9C,IAAI,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC;gBAAE,SAAS;YAEnC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI,MAAM,KAAK,SAAS;gBAAE,SAAS,CAAC,uBAAuB;YAE3D,aAAa,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBACtC,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;aAC5D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,IAAkB,EAAE,IAAY;IACjD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,+BAA+B;YAC/B,OAAO,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,CAAC,GAAG,mCAAmC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,CAAC,KAAK,IAAI;gBAAE,OAAO,SAAS,CAAC;YACjC,MAAM,KAAK,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;YACxD,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAE,EAAE,CAAC;QAClE,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,CAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK,IAAI;gBAAE,OAAO,SAAS,CAAC;YACjC,MAAM,KAAK,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;YACtC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;QACrD,CAAC;QACD,KAAK,UAAU,CAAC,CAAC,CAAC;YAChB,8CAA8C;YAC9C,EAAE;YACF,yCAAyC;YACzC,mCAAmC;YACnC,8DAA8D;YAC9D,EAAE;YACF,uDAAuD;YACvD,2CAA2C;YAC3C,mCAAmC;YACnC,EAAE;YACF,gCAAgC;YAChC,uCAAuC;YACvC,uCAAuC;YACvC,sDAAsD;YACtD,6DAA6D;YAC7D,mCAAmC;YACnC,EAAE;YACF,gCAAgC;YAChC,oBAAoB;YACpB,4CAA4C;YAC5C,gDAAgD;YAChD,mCAAmC;YACnC,EAAE;YACF,0CAA0C;YAC1C,iCAAiC;YACjC,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,SAAS,CAAC;YAEnC,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAC7B,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAEtC,gCAAgC;YAChC,mCAAmC;YACnC,MAAM,KAAK,GAAG,CAAC,CAAS,EAAW,EAAE,CACnC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC;YAE9C,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBACjC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;oBAAE,SAAS;gBACxB,oCAAoC;gBACpC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC;uBACnC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACnD,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACjD,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;gBAC9E,CAAC;gBACD,eAAe;gBACf,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtC,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACjD,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC1E,CAAC;YACH,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,CAAS;IACjC,MAAM,CAAC,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/C,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACjC,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC/C,uCAAuC;IACvC,mDAAmD;IACnD,wBAAwB;IACxB,EAAE;IACF,qEAAqE;IACrE,yCAAyC;IACzC,yBAAyB;IACzB,8BAA8B;IAC9B,EAAE;IACF,2CAA2C;IAC3C,sCAAsC;IACtC,MAAM,IAAI,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5C,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;AAC1D,CAAC;AAED,wCAAwC;AACxC,SAAS,kBAAkB,CAAC,CAAS;IACnC,IAAI,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC;IACnB,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,EAAE;QAAE,GAAG,EAAE,CAAC,CAAG,MAAM;IAC/D,OAAO,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AAChD,CAAC"}
|