1.4 KiB
1.4 KiB
Sprint 52 Plan: Dynamic Language Family (Python, JavaScript, TypeScript, Ruby, Lua)
Context
Dynamic languages need stronger intent recovery and runtime-behavior modeling. Sprint 52 targets semantics needed for safe projection to static targets.
Goals
- Model dynamic typing, duck typing, and runtime reflection boundaries
- Add type-shape inference packets for IR lowering
- Add configurable strictness policies when raising to static languages
- Gate dynamic->static ports with explicit review packets
Steps
Step 749: Python lowering adapter v2 (dynamic shape packets) (12 tests)
Step 750: JavaScript lowering adapter v2 (prototype/object model) (10 tests)
Step 751: TypeScript lowering adapter v2 (declared type integration) (10 tests)
Step 752: Ruby lowering adapter v1 (meta-programming boundaries) (10 tests)
Step 753: Lua lowering adapter v1 (table/closure semantics) (10 tests)
Step 754: Dynamic strictness policy engine (lenient/balanced/strict) (10 tests)
Step 755: Dynamic->static risk classifier (8 tests)
Step 756: whetstone_transpile_dynamic_family MCP tool (8 tests)
Step 757: Dynamic family acceptance report + review queue wiring (8 tests)
Step 758: Sprint 52 integration summary + regression (8 tests)
Policy Requirement
- Any unresolved dynamic dispatch must emit review-required packets
- No silent
any-style collapse in strict profile