@kernlang/core 3.5.9-canary.220.1.c398cd95 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/dist/capability-matrix.js +8 -6
  2. package/dist/capability-matrix.js.map +1 -1
  3. package/dist/closure-eligibility.d.ts +104 -0
  4. package/dist/closure-eligibility.js +443 -0
  5. package/dist/closure-eligibility.js.map +1 -0
  6. package/dist/closure-python-lowering.d.ts +26 -0
  7. package/dist/closure-python-lowering.js +132 -22
  8. package/dist/closure-python-lowering.js.map +1 -1
  9. package/dist/codegen/body-ts.js +13 -0
  10. package/dist/codegen/body-ts.js.map +1 -1
  11. package/dist/codegen/type-system.js +50 -3
  12. package/dist/codegen/type-system.js.map +1 -1
  13. package/dist/codegen-core.js +29 -0
  14. package/dist/codegen-core.js.map +1 -1
  15. package/dist/codegen-expression.js +7 -0
  16. package/dist/codegen-expression.js.map +1 -1
  17. package/dist/constructor-super.d.ts +34 -0
  18. package/dist/constructor-super.js +122 -0
  19. package/dist/constructor-super.js.map +1 -0
  20. package/dist/core-contracts/boolean.d.ts +147 -0
  21. package/dist/core-contracts/boolean.js +110 -0
  22. package/dist/core-contracts/boolean.js.map +1 -0
  23. package/dist/core-contracts/function.d.ts +6 -0
  24. package/dist/core-contracts/function.js +7 -0
  25. package/dist/core-contracts/function.js.map +1 -0
  26. package/dist/core-contracts/index.d.ts +1032 -0
  27. package/dist/core-contracts/index.js +30 -0
  28. package/dist/core-contracts/index.js.map +1 -0
  29. package/dist/core-contracts/list.d.ts +87 -0
  30. package/dist/core-contracts/list.js +54 -0
  31. package/dist/core-contracts/list.js.map +1 -0
  32. package/dist/core-contracts/nullish.d.ts +12 -0
  33. package/dist/core-contracts/nullish.js +13 -0
  34. package/dist/core-contracts/nullish.js.map +1 -0
  35. package/dist/core-contracts/number.d.ts +291 -0
  36. package/dist/core-contracts/number.js +214 -0
  37. package/dist/core-contracts/number.js.map +1 -0
  38. package/dist/core-contracts/record.d.ts +60 -0
  39. package/dist/core-contracts/record.js +32 -0
  40. package/dist/core-contracts/record.js.map +1 -0
  41. package/dist/core-contracts/schema.d.ts +71 -0
  42. package/dist/core-contracts/schema.js +98 -0
  43. package/dist/core-contracts/schema.js.map +1 -0
  44. package/dist/core-contracts/semantics.d.ts +7 -0
  45. package/dist/core-contracts/semantics.js +221 -0
  46. package/dist/core-contracts/semantics.js.map +1 -0
  47. package/dist/core-contracts/string.d.ts +414 -0
  48. package/dist/core-contracts/string.js +335 -0
  49. package/dist/core-contracts/string.js.map +1 -0
  50. package/dist/core-runtime/contract-adapter.d.ts +8 -0
  51. package/dist/core-runtime/contract-adapter.js +73 -0
  52. package/dist/core-runtime/contract-adapter.js.map +1 -0
  53. package/dist/core-runtime/index.d.ts +109 -0
  54. package/dist/core-runtime/index.js +1946 -0
  55. package/dist/core-runtime/index.js.map +1 -0
  56. package/dist/core-runtime/shape-validator.d.ts +61 -0
  57. package/dist/core-runtime/shape-validator.js +564 -0
  58. package/dist/core-runtime/shape-validator.js.map +1 -0
  59. package/dist/core-runtime/value-brand.d.ts +2 -0
  60. package/dist/core-runtime/value-brand.js +6 -0
  61. package/dist/core-runtime/value-brand.js.map +1 -0
  62. package/dist/decompiler.js +46 -0
  63. package/dist/decompiler.js.map +1 -1
  64. package/dist/eligibility-taxonomy.d.ts +58 -0
  65. package/dist/eligibility-taxonomy.generated.d.ts +472 -0
  66. package/dist/eligibility-taxonomy.generated.js +566 -0
  67. package/dist/eligibility-taxonomy.generated.js.map +1 -0
  68. package/dist/eligibility-taxonomy.js +55 -0
  69. package/dist/eligibility-taxonomy.js.map +1 -0
  70. package/dist/index.d.ts +19 -2
  71. package/dist/index.js +17 -1
  72. package/dist/index.js.map +1 -1
  73. package/dist/instanceof-rhs.d.ts +53 -0
  74. package/dist/instanceof-rhs.js +74 -0
  75. package/dist/instanceof-rhs.js.map +1 -0
  76. package/dist/ir/semantics/lambda.js +9 -1
  77. package/dist/ir/semantics/lambda.js.map +1 -1
  78. package/dist/native-eligibility-ast.d.ts +5 -0
  79. package/dist/native-eligibility-ast.js +242 -63
  80. package/dist/native-eligibility-ast.js.map +1 -1
  81. package/dist/parser-expression.d.ts +1 -1
  82. package/dist/parser-expression.js +90 -1
  83. package/dist/parser-expression.js.map +1 -1
  84. package/dist/rag-assertions.d.ts +3 -0
  85. package/dist/rag-assertions.js +15 -0
  86. package/dist/rag-assertions.js.map +1 -0
  87. package/dist/rag-runtime.d.ts +169 -0
  88. package/dist/rag-runtime.js +823 -0
  89. package/dist/rag-runtime.js.map +1 -0
  90. package/dist/schema.d.ts +1 -0
  91. package/dist/schema.js +197 -2
  92. package/dist/schema.js.map +1 -1
  93. package/dist/semantic-substrate.d.ts +108 -0
  94. package/dist/semantic-substrate.js +263 -0
  95. package/dist/semantic-substrate.js.map +1 -0
  96. package/dist/semantic-validator.d.ts +332 -0
  97. package/dist/semantic-validator.js +3387 -0
  98. package/dist/semantic-validator.js.map +1 -1
  99. package/dist/spec.d.ts +2 -2
  100. package/dist/spec.js +15 -1
  101. package/dist/spec.js.map +1 -1
  102. package/dist/value-ir.d.ts +11 -1
  103. package/dist/value-ir.js.map +1 -1
  104. package/package.json +5 -1
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@
2
2
  * @kernlang/core — parser, types, spec, config, style engines, codegen
3
3
  */
4
4
  export { isPostfixMutationOperator, isSupportedAssignOperator, SUPPORTED_ASSIGN_OPERATORS, supportedCompoundAssignmentOperator, } from './assignment-operators.js';
5
+ export { classifyClosureBlock, collectFreeIdentifierNames, parseClosureBlockAst } from './closure-eligibility.js';
5
6
  export type { LowerJsClosureBodyToPythonOptions, LowerJsClosureBodyToPythonResult, } from './closure-python-lowering.js';
6
7
  export { lowerJsClosureBodyToPython } from './closure-python-lowering.js';
7
8
  export type { BodyEmitOptions, BodyEmitResult } from './codegen/body-ts.js';
@@ -21,6 +22,14 @@ export type { CallPayload, ConceptEdge, ConceptEdgeKind, ConceptEdgePayload, Con
21
22
  export { conceptId, conceptSpan } from './concepts.js';
22
23
  export type { ExpressSecurityLevel, FrameworkVersions, KernConfig, KernStructure, KernTarget, ResolvedKernConfig, } from './config.js';
23
24
  export { ALL_TARGETS, DEFAULT_CONFIG, detectTarget, mergeConfig, resolveConfig, VALID_STRUCTURES, VALID_TARGETS, } from './config.js';
25
+ export { hasDirectSuperCtorCall } from './constructor-super.js';
26
+ export type { CoreFixture, CoreFixtureError, CoreFixtureValue, CoreGraphEdge, CoreLowerings, CoreOperation, CoreOperationKind, CoreOperationReturns, CoreTypeContract, CoreTypeContractRegistry, CoreTypeKind, CoreTypeName, } from './core-contracts/index.js';
27
+ export { BOOLEAN_CONTRACT, CORE_FIXTURE_FUNCTION, CORE_FIXTURE_UNDEFINED, CORE_TYPE_CONTRACTS, CORE_TYPE_NAMES, CoreContractEvaluationError, contractToGraphEdges, coreFixtureValueType, evaluateCoreContractOperation, FUNCTION_CONTRACT, isCoreFixtureFunction, isCoreFixtureUndefined, LIST_CONTRACT, NULL_CONTRACT, NUMBER_CONTRACT, RECORD_CONTRACT, STRING_CONTRACT, UNDEFINED_CONTRACT, } from './core-contracts/index.js';
28
+ export { CoreRuntimeContractAdapterError, coreFixtureValueToKernValue, kernValueToCoreFixtureValue, roundTripKernContractDataValue, } from './core-runtime/contract-adapter.js';
29
+ export type { CoreCompletion, CoreRuntimeResult, CreateCoreRuntimeEnvOptions, KernBuiltinValue, KernFunctionValue, KernValue, RuntimeParam, } from './core-runtime/index.js';
30
+ export { CoreRuntimeEnv, callCoreFunction, createCoreRuntimeEnv, evalCoreExpression, fromHostValue, kBoolean, kernTruthy, kNull, kNumber, kString, kUndefined, runCoreRuntime, toHostValue, } from './core-runtime/index.js';
31
+ export type { CoreShapeDiagnostic, CoreShapeDiagnosticCode, CoreShapeFacts, CoreShapeFieldFact, CoreShapeIndexerFact, CoreShapeInterfaceFact, CoreShapeValidationResult, } from './core-runtime/shape-validator.js';
32
+ export { assertCoreShape, collectCoreShapeFacts, validateCoreShape } from './core-runtime/shape-validator.js';
24
33
  export type { CoverageGap } from './coverage-gap.js';
25
34
  export { collectCoverageGaps, readCoverageGaps, writeCoverageGaps } from './coverage-gap.js';
26
35
  export { decompile } from './decompiler.js';
@@ -36,6 +45,8 @@ export type { CapabilityEffect, CapabilityRuntime, CapabilitySerialization, Exte
36
45
  export { importRegistryOf, importTargetFamilyOf, importTargetOf, shouldEmitImportForTarget, splitCapabilityList, validateCapabilityMetadata, validateImportMetadata, } from './import-metadata.js';
37
46
  export type { ImportResult } from './importer.js';
38
47
  export { escapeKernString, importTypeScript } from './importer.js';
48
+ export type { InstanceofRhsRejectReason } from './instanceof-rhs.js';
49
+ export { INSTANCEOF_RHS_BUILTIN_REJECT, INSTANCEOF_RHS_WRAPPER_REJECT, instanceofRhsPythonType, instanceofRhsRejectReasonForName, } from './instanceof-rhs.js';
39
50
  export { expressionV1Contract, registerExpressionV1Contract, } from './ir/semantics/expression-v1.js';
40
51
  export type { LowerTarget } from './ir/semantics/fixture-lowering.js';
41
52
  export { lowerFixtureForTarget, serializeValue } from './ir/semantics/fixture-lowering.js';
@@ -59,14 +70,20 @@ export { splitPortableExpressionList } from './portable-expression-list.js';
59
70
  export type { PortablePredicateArrayOp, PortablePredicateCompareOp, PortablePredicateExistsOp, PortablePredicateMembershipOp, PortablePredicateParseResult, PortablePredicateStringOp, PortablePredicateUnaryOp, } from './portable-predicate.js';
60
71
  export { PORTABLE_PREDICATE_ARRAY_OPS, PORTABLE_PREDICATE_COMPARE_OPS, PORTABLE_PREDICATE_EXISTS_OPS, PORTABLE_PREDICATE_MEMBERSHIP_OPS, PORTABLE_PREDICATE_STRING_OPS, PORTABLE_PREDICATE_UNARY_OPS, parsePortablePredicateProp, validatePortablePredicateAST, } from './portable-predicate.js';
61
72
  export { parsePortableNonNegativeIntLiteral, parsePortablePathSegments } from './portable-route-collection.js';
73
+ export type { RagAssertionKind } from './rag-assertions.js';
74
+ export { RAG_ASSERTION_KIND_SET, RAG_ASSERTION_KINDS } from './rag-assertions.js';
75
+ export type { InMemoryRagRetriever, ProvenancedRetrieveResult, RagAnswerContract, RagAnswerContractDiagnostic, RagAnswerContractDiagnosticCode, RagAnswerContractResult, RagAnswerContractStatus, RagAnswerGroundingSpan, RagChunkInput, RagCitation, RagContractRetriever, RagEvalAssertionCode, RagEvalAssertionResult, RagEvalCaseResult, RagEvalContractOptions, RagEvalContractResult, RagMcpRetrieveProvenanceMapping, RagRuntimeProvenance, RagRuntimeProvenanceOptions, RagRuntimeProvenanceStatus, RagSemanticAnswerContractOptions, RetrievedChunk, RetrieveOptions, RetrieveResult, } from './rag-runtime.js';
76
+ export { createInMemoryRetriever, createRagRuntimeProvenance, evaluateRagAnswerContract, evaluateRagEvalContract, evaluateRagSemanticAnswerContract, hashRetrievedChunkText, InMemoryRagCorpus, MAX_IN_MEMORY_RAG_TOP_K, ragAnswerContractFromSemanticFact, ragMcpRetrieveProvenanceMapping, retrieveFromInMemoryCorpus, tokenizeForRetrieval, withRagRuntimeProvenance, } from './rag-runtime.js';
62
77
  export type { ParserHintsConfig } from './runtime.js';
63
78
  export { defaultRuntime, KernRuntime } from './runtime.js';
64
79
  export type { Detection, ScanInfo, ScanResult } from './scanner.js';
65
80
  export { formatScanSummary, generateConfigSource, scanProject } from './scanner.js';
66
81
  export type { KernSchemaJSON, NodeSchema, PropKind, PropSchema, SchemaViolation } from './schema.js';
67
82
  export { exportSchemaJSON, NODE_SCHEMAS, validateSchema } from './schema.js';
68
- export type { SemanticViolation } from './semantic-validator.js';
69
- export { validateSemantics } from './semantic-validator.js';
83
+ export type { BuildKernSemanticSubstrateOptions, KernSemanticCoreOperation, KernSemanticCoreType, KernSemanticIrContract, KernSemanticPrimitive, KernSemanticRagAnswerReviewFact, KernSemanticRagAnswerReviewStatus, KernSemanticStdlibOperation, KernSemanticSubstrate, KernSemanticSubstrateSource, KernSemanticSubstrateTarget, KernSemanticSupport, KernSemanticValidationSummary, } from './semantic-substrate.js';
84
+ export { buildKernSemanticSubstrate, lookupSemanticPrimitive, semanticPrimitiveSupportSummary, } from './semantic-substrate.js';
85
+ export type { ClassSemanticClassFact, ClassSemanticConstructorFact, ClassSemanticConstructorSuperStatus, ClassSemanticFacts, ClassSemanticImplementsEdge, ClassSemanticInheritanceEdge, ClassSemanticLocation, ClassSemanticMemberFact, ClassSemanticMemberKind, ClassSemanticOverrideFact, ClassSemanticOverrideStatus, ClassSemanticProtocolConformanceFact, ClassSemanticProtocolStatus, RagSemanticAnswerContractFact, RagSemanticAnswerSpanFact, RagSemanticChunkingFact, RagSemanticCorpusFact, RagSemanticEmbedFact, RagSemanticEvalAssertFact, RagSemanticEvalCaseFact, RagSemanticEvalFact, RagSemanticFacts, RagSemanticGroundingFact, RagSemanticLocation, RagSemanticMcpRetrievalFact, RagSemanticPipelineFact, RagSemanticRetrieverFact, RagSemanticSourceFact, SemanticViolation, } from './semantic-validator.js';
86
+ export { collectClassSemanticFacts, collectRagSemanticFacts, RAG_MCP_RETRIEVE_OUTPUT_ITEM_SHAPE, RAG_MCP_RETRIEVE_OUTPUT_SHAPE, validateClassSemantics, validateRagSemantics, validateSemantics, } from './semantic-validator.js';
70
87
  export type { ShadowAnalyzeOptions, ShadowDiagnostic } from './shadow-analyzer.js';
71
88
  export { analyzeShadow } from './shadow-analyzer.js';
72
89
  export type { SourceMapV3 } from './source-map.js';
package/dist/index.js CHANGED
@@ -2,6 +2,10 @@
2
2
  * @kernlang/core — parser, types, spec, config, style engines, codegen
3
3
  */
4
4
  export { isPostfixMutationOperator, isSupportedAssignOperator, SUPPORTED_ASSIGN_OPERATORS, supportedCompoundAssignmentOperator, } from './assignment-operators.js';
5
+ // v1 closure gate — shared eligibility predicate + emission precondition for
6
+ // block-bodied arrows (slices 0+1). Single owner consumed by parser, migrator
7
+ // eligibility classifier, and the Python lowerer.
8
+ export { classifyClosureBlock, collectFreeIdentifierNames, parseClosureBlockAst } from './closure-eligibility.js';
5
9
  export { lowerJsClosureBodyToPython } from './closure-python-lowering.js';
6
10
  export { emitNativeKernBodyTS, emitNativeKernBodyTSWithImports } from './codegen/body-ts.js';
7
11
  export { applyTemplate, KERN_STDLIB, KERN_STDLIB_MODULES, lookupStdlib, suggestStdlibMethod, } from './codegen/kern-stdlib.js';
@@ -32,6 +36,14 @@ export { emitExpression, needsArgParens, needsBinaryParens } from './codegen-exp
32
36
  export { conceptId, conceptSpan } from './concepts.js';
33
37
  // Config
34
38
  export { ALL_TARGETS, DEFAULT_CONFIG, detectTarget, mergeConfig, resolveConfig, VALID_STRUCTURES, VALID_TARGETS, } from './config.js';
39
+ // Canonical constructor-super predicate — single source of truth shared by the
40
+ // validator, runtime, and both codegen targets (TS here + Python via this export).
41
+ export { hasDirectSuperCtorCall } from './constructor-super.js';
42
+ export { BOOLEAN_CONTRACT, CORE_FIXTURE_FUNCTION, CORE_FIXTURE_UNDEFINED, CORE_TYPE_CONTRACTS, CORE_TYPE_NAMES, CoreContractEvaluationError, contractToGraphEdges, coreFixtureValueType, evaluateCoreContractOperation, FUNCTION_CONTRACT, isCoreFixtureFunction, isCoreFixtureUndefined, LIST_CONTRACT, NULL_CONTRACT, NUMBER_CONTRACT, RECORD_CONTRACT, STRING_CONTRACT, UNDEFINED_CONTRACT, } from './core-contracts/index.js';
43
+ export { CoreRuntimeContractAdapterError, coreFixtureValueToKernValue, kernValueToCoreFixtureValue, roundTripKernContractDataValue, } from './core-runtime/contract-adapter.js';
44
+ // KERN Core Runtime
45
+ export { CoreRuntimeEnv, callCoreFunction, createCoreRuntimeEnv, evalCoreExpression, fromHostValue, kBoolean, kernTruthy, kNull, kNumber, kString, kUndefined, runCoreRuntime, toHostValue, } from './core-runtime/index.js';
46
+ export { assertCoreShape, collectCoreShapeFacts, validateCoreShape } from './core-runtime/shape-validator.js';
35
47
  // Coverage gap emitter (v3)
36
48
  export { collectCoverageGaps, readCoverageGaps, writeCoverageGaps } from './coverage-gap.js';
37
49
  export { decompile } from './decompiler.js';
@@ -41,6 +53,7 @@ export { collectCapabilityIslands, collectExternalBoundaries, collectSidecarMani
41
53
  export { buildExternalImportSymbolTable, collectExternalImportSymbols, externalSignatureDiagnostics, parseExternalNamedBinding, signatureMapForSidecarPackage, } from './external-symbols.js';
42
54
  export { importRegistryOf, importTargetFamilyOf, importTargetOf, shouldEmitImportForTarget, splitCapabilityList, validateCapabilityMetadata, validateImportMetadata, } from './import-metadata.js';
43
55
  export { escapeKernString, importTypeScript } from './importer.js';
56
+ export { INSTANCEOF_RHS_BUILTIN_REJECT, INSTANCEOF_RHS_WRAPPER_REJECT, instanceofRhsPythonType, instanceofRhsRejectReasonForName, } from './instanceof-rhs.js';
44
57
  export { expressionV1Contract, registerExpressionV1Contract, } from './ir/semantics/expression-v1.js';
45
58
  export { lowerFixtureForTarget, serializeValue } from './ir/semantics/fixture-lowering.js';
46
59
  export { CONTRACT_REGISTRY, completionsEqual, deepEqual, emptyTrace, eventsEqual, makeEnv, ReferenceRunnerError, referenceRun, referenceRunSequence, registerAllContracts, registerContract, runAllContracts, runDifferential, serializeJson, serializeMarkdown, snapshotRegistry, tracesEqual, } from './ir/semantics/index.js';
@@ -60,13 +73,16 @@ export { collectNativeEligibleHints, validateNativeEligible } from './parser-val
60
73
  export { splitPortableExpressionList } from './portable-expression-list.js';
61
74
  export { PORTABLE_PREDICATE_ARRAY_OPS, PORTABLE_PREDICATE_COMPARE_OPS, PORTABLE_PREDICATE_EXISTS_OPS, PORTABLE_PREDICATE_MEMBERSHIP_OPS, PORTABLE_PREDICATE_STRING_OPS, PORTABLE_PREDICATE_UNARY_OPS, parsePortablePredicateProp, validatePortablePredicateAST, } from './portable-predicate.js';
62
75
  export { parsePortableNonNegativeIntLiteral, parsePortablePathSegments } from './portable-route-collection.js';
76
+ export { RAG_ASSERTION_KIND_SET, RAG_ASSERTION_KINDS } from './rag-assertions.js';
77
+ export { createInMemoryRetriever, createRagRuntimeProvenance, evaluateRagAnswerContract, evaluateRagEvalContract, evaluateRagSemanticAnswerContract, hashRetrievedChunkText, InMemoryRagCorpus, MAX_IN_MEMORY_RAG_TOP_K, ragAnswerContractFromSemanticFact, ragMcpRetrieveProvenanceMapping, retrieveFromInMemoryCorpus, tokenizeForRetrieval, withRagRuntimeProvenance, } from './rag-runtime.js';
63
78
  // Runtime (instance-based state)
64
79
  export { defaultRuntime, KernRuntime } from './runtime.js';
65
80
  // Scanner
66
81
  export { formatScanSummary, generateConfigSource, scanProject } from './scanner.js';
67
82
  // Schema validation + export
68
83
  export { exportSchemaJSON, NODE_SCHEMAS, validateSchema } from './schema.js';
69
- export { validateSemantics } from './semantic-validator.js';
84
+ export { buildKernSemanticSubstrate, lookupSemanticPrimitive, semanticPrimitiveSupportSummary, } from './semantic-substrate.js';
85
+ export { collectClassSemanticFacts, collectRagSemanticFacts, RAG_MCP_RETRIEVE_OUTPUT_ITEM_SHAPE, RAG_MCP_RETRIEVE_OUTPUT_SHAPE, validateClassSemantics, validateRagSemantics, validateSemantics, } from './semantic-validator.js';
70
86
  export { analyzeShadow } from './shadow-analyzer.js';
71
87
  // Source map serialization
72
88
  export { serializeSourceMap } from './source-map.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ /** Shared `instanceof` right-hand-side (RHS) classification — the single
2
+ * source of truth for which `x instanceof <RHS>` shapes KERN lowers, maps to a
3
+ * host type, or rejects fail-closed.
4
+ *
5
+ * Two consumers share this table so the eligibility gate and the Python
6
+ * lowerer cannot drift (defense in depth — see native-eligibility-ast.ts §3
7
+ * and codegen-body-python.ts):
8
+ *
9
+ * - the native-eligibility classifier walks the TS AST and rejects a body
10
+ * whose `instanceof` RHS is in the reject set (so the migrator never lifts
11
+ * an unlowerable body), and
12
+ * - the Python emitter both MAPS the accepted host RHS (`Array`→`list`,
13
+ * `Error`→`Exception`) and THROWS on a rejected RHS (so a gate bug can
14
+ * never silently emit a wrong-parity `isinstance`).
15
+ *
16
+ * ## Why these RHS names are rejected (wrapper-parity trap)
17
+ * In JS, primitives are NOT instances of their wrapper objects:
18
+ * `"s" instanceof String` is `false`, but Python's `isinstance("s", str)` is
19
+ * `True`. There is no host type whose membership matches JS `instanceof`
20
+ * semantics for these, so they fail closed rather than emit wrong-parity code.
21
+ * `Object`/`Function`/`Date`/`RegExp`/`Promise`/`Map`/`Set`/`Symbol`/`BigInt`
22
+ * have no verified cross-target host mapping either (v2).
23
+ *
24
+ * ## Accepted host RHS
25
+ * - `Array` → `list` (`[1,2] instanceof Array` ≡ `isinstance(x, list)`)
26
+ * - `Error` → `Exception` (KERN-thrown errors lower to `Exception`, so
27
+ * `e instanceof Error` ≡ `isinstance(e, Exception)`; mirrors the
28
+ * `new Error(...)` → `Exception(...)` mapping in the Python emitter).
29
+ * `TypeError` is intentionally NOT listed: it maps to Python's native
30
+ * `TypeError` (same name) and emits as-is. RangeError/SyntaxError/etc. stay
31
+ * status-quo (emit as-is) — host mapping for them is v2.
32
+ *
33
+ * Any RHS ident NOT in the reject set and NOT in the accept map emits as-is:
34
+ * user classes work (same-file Python classes), and an unknown name fails loud
35
+ * at Python runtime with `NameError` (registry-precedence hardening is v2). */
36
+ /** Reject reasons surfaced by the eligibility classifier and the emitter.
37
+ * Kebab-case slugs so `kern migrate`/`kern review` give actionable hints. */
38
+ export type InstanceofRhsRejectReason = 'instanceof-rhs-wrapper-rejected' | 'instanceof-rhs-unsupported-builtin' | 'instanceof-rhs-not-a-type-name';
39
+ /** Primitive-wrapper RHS — the wrapper-parity trap (`"s" instanceof String`
40
+ * is FALSE in JS, `isinstance("s", str)` is True). */
41
+ export declare const INSTANCEOF_RHS_WRAPPER_REJECT: ReadonlySet<string>;
42
+ /** Built-in RHS with no verified cross-target host mapping (v2). */
43
+ export declare const INSTANCEOF_RHS_BUILTIN_REJECT: ReadonlySet<string>;
44
+ /** The Python `isinstance` second argument for an accepted host-global RHS
45
+ * ident, or `null` when the name carries no host mapping (a user class /
46
+ * member RHS that emits as-is). Does NOT consult the reject set — callers
47
+ * reject first (see `instanceofRhsRejectReasonForName`). */
48
+ export declare function instanceofRhsPythonType(name: string): string | null;
49
+ /** Reject reason for a bare RHS ident `name`, or `null` if the ident is
50
+ * acceptable (an accepted host global, a user class, or any other name that
51
+ * emits as-is). Non-ident RHS (call/literal/binary) is classified by the
52
+ * caller as `instanceof-rhs-not-a-type-name`. */
53
+ export declare function instanceofRhsRejectReasonForName(name: string): InstanceofRhsRejectReason | null;
@@ -0,0 +1,74 @@
1
+ /** Shared `instanceof` right-hand-side (RHS) classification — the single
2
+ * source of truth for which `x instanceof <RHS>` shapes KERN lowers, maps to a
3
+ * host type, or rejects fail-closed.
4
+ *
5
+ * Two consumers share this table so the eligibility gate and the Python
6
+ * lowerer cannot drift (defense in depth — see native-eligibility-ast.ts §3
7
+ * and codegen-body-python.ts):
8
+ *
9
+ * - the native-eligibility classifier walks the TS AST and rejects a body
10
+ * whose `instanceof` RHS is in the reject set (so the migrator never lifts
11
+ * an unlowerable body), and
12
+ * - the Python emitter both MAPS the accepted host RHS (`Array`→`list`,
13
+ * `Error`→`Exception`) and THROWS on a rejected RHS (so a gate bug can
14
+ * never silently emit a wrong-parity `isinstance`).
15
+ *
16
+ * ## Why these RHS names are rejected (wrapper-parity trap)
17
+ * In JS, primitives are NOT instances of their wrapper objects:
18
+ * `"s" instanceof String` is `false`, but Python's `isinstance("s", str)` is
19
+ * `True`. There is no host type whose membership matches JS `instanceof`
20
+ * semantics for these, so they fail closed rather than emit wrong-parity code.
21
+ * `Object`/`Function`/`Date`/`RegExp`/`Promise`/`Map`/`Set`/`Symbol`/`BigInt`
22
+ * have no verified cross-target host mapping either (v2).
23
+ *
24
+ * ## Accepted host RHS
25
+ * - `Array` → `list` (`[1,2] instanceof Array` ≡ `isinstance(x, list)`)
26
+ * - `Error` → `Exception` (KERN-thrown errors lower to `Exception`, so
27
+ * `e instanceof Error` ≡ `isinstance(e, Exception)`; mirrors the
28
+ * `new Error(...)` → `Exception(...)` mapping in the Python emitter).
29
+ * `TypeError` is intentionally NOT listed: it maps to Python's native
30
+ * `TypeError` (same name) and emits as-is. RangeError/SyntaxError/etc. stay
31
+ * status-quo (emit as-is) — host mapping for them is v2.
32
+ *
33
+ * Any RHS ident NOT in the reject set and NOT in the accept map emits as-is:
34
+ * user classes work (same-file Python classes), and an unknown name fails loud
35
+ * at Python runtime with `NameError` (registry-precedence hardening is v2). */
36
+ /** Primitive-wrapper RHS — the wrapper-parity trap (`"s" instanceof String`
37
+ * is FALSE in JS, `isinstance("s", str)` is True). */
38
+ export const INSTANCEOF_RHS_WRAPPER_REJECT = new Set(['String', 'Number', 'Boolean']);
39
+ /** Built-in RHS with no verified cross-target host mapping (v2). */
40
+ export const INSTANCEOF_RHS_BUILTIN_REJECT = new Set([
41
+ 'Object',
42
+ 'Function',
43
+ 'Date',
44
+ 'RegExp',
45
+ 'Promise',
46
+ 'Map',
47
+ 'Set',
48
+ 'Symbol',
49
+ 'BigInt',
50
+ ]);
51
+ /** Accepted host-global RHS → Python type the `isinstance` call uses. */
52
+ const INSTANCEOF_RHS_PYTHON_MAP = new Map([
53
+ ['Array', 'list'],
54
+ ['Error', 'Exception'],
55
+ ]);
56
+ /** The Python `isinstance` second argument for an accepted host-global RHS
57
+ * ident, or `null` when the name carries no host mapping (a user class /
58
+ * member RHS that emits as-is). Does NOT consult the reject set — callers
59
+ * reject first (see `instanceofRhsRejectReasonForName`). */
60
+ export function instanceofRhsPythonType(name) {
61
+ return INSTANCEOF_RHS_PYTHON_MAP.get(name) ?? null;
62
+ }
63
+ /** Reject reason for a bare RHS ident `name`, or `null` if the ident is
64
+ * acceptable (an accepted host global, a user class, or any other name that
65
+ * emits as-is). Non-ident RHS (call/literal/binary) is classified by the
66
+ * caller as `instanceof-rhs-not-a-type-name`. */
67
+ export function instanceofRhsRejectReasonForName(name) {
68
+ if (INSTANCEOF_RHS_WRAPPER_REJECT.has(name))
69
+ return 'instanceof-rhs-wrapper-rejected';
70
+ if (INSTANCEOF_RHS_BUILTIN_REJECT.has(name))
71
+ return 'instanceof-rhs-unsupported-builtin';
72
+ return null;
73
+ }
74
+ //# sourceMappingURL=instanceof-rhs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instanceof-rhs.js","sourceRoot":"","sources":["../src/instanceof-rhs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gFAkCgF;AAShF;uDACuD;AACvD,MAAM,CAAC,MAAM,6BAA6B,GAAwB,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;AAE3G,oEAAoE;AACpE,MAAM,CAAC,MAAM,6BAA6B,GAAwB,IAAI,GAAG,CAAC;IACxE,QAAQ;IACR,UAAU;IACV,MAAM;IACN,QAAQ;IACR,SAAS;IACT,KAAK;IACL,KAAK;IACL,QAAQ;IACR,QAAQ;CACT,CAAC,CAAC;AAEH,yEAAyE;AACzE,MAAM,yBAAyB,GAAgC,IAAI,GAAG,CAAC;IACrE,CAAC,OAAO,EAAE,MAAM,CAAC;IACjB,CAAC,OAAO,EAAE,WAAW,CAAC;CACvB,CAAC,CAAC;AAEH;;;6DAG6D;AAC7D,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,OAAO,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;AACrD,CAAC;AAED;;;kDAGkD;AAClD,MAAM,UAAU,gCAAgC,CAAC,IAAY;IAC3D,IAAI,6BAA6B,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,iCAAiC,CAAC;IACtF,IAAI,6BAA6B,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,oCAAoC,CAAC;IACzF,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -84,9 +84,17 @@ function evalValue(node, scope) {
84
84
  return evalCall(node, scope);
85
85
  case 'lambda': {
86
86
  const captured = scope;
87
+ // Block-bodied arrows (slices 0+1) carry raw text, not an expression
88
+ // `body`; the expression-semantics reference interpreter does not
89
+ // execute statement blocks. They never reach here in practice (the
90
+ // contract harness runs expression IR only).
91
+ if (!node.body) {
92
+ throw new Error('evalValue: block-bodied arrow closures are not executable by the expression reference interpreter.');
93
+ }
94
+ const lambdaBody = node.body;
87
95
  return (...args) => {
88
96
  const params = node.params.map((p, i) => [p.name, args[i]]);
89
- return evalValue(node.body, childScope(captured, params));
97
+ return evalValue(lambdaBody, childScope(captured, params));
90
98
  };
91
99
  }
92
100
  case 'binary':
@@ -1 +1 @@
1
- {"version":3,"file":"lambda.js","sourceRoot":"","sources":["../../../src/ir/semantics/lambda.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lambda.js","sourceRoot":"","sources":["../../../src/ir/semantics/lambda.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,11 @@
20
20
  * `kern migrate native-handlers` and `kern review` see actionable hints
21
21
  * instead of a generic "ineligible". */
22
22
  import ts from 'typescript';
23
+ /** A snapshot of the recorded coherence violations (reasons emitted with no
24
+ * taxonomy row). Empty in a coherent build. */
25
+ export declare function coherenceViolations(): readonly string[];
26
+ /** Test-only: clear the recorded coherence violations between runs. */
27
+ export declare function resetCoherenceViolations(): void;
23
28
  export interface AstEligibilityResult {
24
29
  eligible: boolean;
25
30
  /** When eligible: 'empty' | 'ok'.