plan: embedding-abi-m1.1 — linkable artifact + scalar C entrypoint
7-task decomposition of docs/specs/2026-05-18-embedding-abi-m1.md
(committed 51160e9, user-approved, grounding-check PASS).
Task 1 (FIXED FIRST, per spec sequencing): CLI build-path
MissingEntryMain baseline pin, RED-first, before any staticlib code
— layered on the already-green codegen-unit pin lib.rs:3314.
Tasks 2-7: additive FnDef.export (~95-site compile-driven thread,
hash-stable) -> Form-A (export "<sym>") round-trip -> scalar-only
+ effect-free check gate (two CheckError Error variants, clause-3
in code) -> codegen Target::StaticLib (suppress @main +
MissingEntryMain, emit @<sym> forwarder) -> ail build
--emit=staticlib (lib<entry>.a + separate libailang_rt.a) ->
C host-harness E2E coherent-stop proof + DESIGN.md honesty.
ailang-plan-recon file-map Boss-verified against source (ast.rs /
parse.rs / print.rs / form_a.md / check+codegen lib.rs / main.rs /
design_schema_drift.rs / DESIGN.md all re-read; recon locations
accurate). Both crate-wide compile-break tasks scrubbed for
planner self-review item 7 (all callers threaded inside the
breaking task before its 0-errors gate). Roadmap M1 context line
refreshed: plan landed, next = implement.
This commit is contained in:
File diff suppressed because it is too large
Load Diff
+6
-2
@@ -186,8 +186,12 @@ work progresses.
|
||||
+ separate `libailang_rt.a` / no runtime lifecycle API /
|
||||
`--emit=staticlib` suppresses `@main`+`MissingEntryMain` /
|
||||
scalar+effect-free export gate / Task 1 fixed =
|
||||
`MissingEntryMain` build-path baseline pin). Next: `planner`
|
||||
in a fresh session (user-chosen session shape).
|
||||
`MissingEntryMain` build-path baseline pin). Plan landed
|
||||
2026-05-18 `docs/plans/embedding-abi-m1.1.md` (7 tasks; recon
|
||||
file-map Boss-verified against source; both compile-break
|
||||
tasks — `FnDef.export` ~95-site thread, `lower_workspace_inner`
|
||||
`Target` param — scrubbed for self-review-item-7 ordering).
|
||||
Next: `implement`.
|
||||
|
||||
- [ ] **\[milestone\]** Embedding ABI — M2: per-thread runtime
|
||||
context + concurrency safety. `ailang_ctx_new()/_free` threaded
|
||||
|
||||
Reference in New Issue
Block a user