Repository navigation
Umbrella: aLib conformance & contributions roadmap (25 items, 3 tracks) #413
Copy link
Copy link
Open
Labels
enhancementNew capability or improvement to existing behaviourNew capability or improvement to existing behaviourfeeds:valence-shellFeeds valence-shell's proofs/engineering (D127): judge progress by what it contributes thereFeeds valence-shell's proofs/engineering (D127): judge progress by what it contributes theremeta:umbrellaParent issue aggregating child issuesParent issue aggregating child issuespriority:p3Low - nice to haveLow - nice to havescope:repoConfined to this repositoryConfined to this repository
Description
Umbrella tracker for docs/alib-roadmap.adoc (landed in #410).
25 items across 3 tracks — implementing aLib conformance, building the runner/CI infrastructure, and contributing affine-aware spec extensions back to hyperpolymath/aggregate-library upstream.
Track summary
| Track | Theme | Count |
|---|---|---|
| T1 | Conformance implementation (arithmetic-9, comparison, logical, string-4, collection-6, conditional, edge cases, properties, signatures, alib.affine module) |
10 |
| T2 | Runner & infrastructure (schema loader, test-vector executor, properties checker, report emitter, CI workflow, badge, multi-target harness, comparison view) | 8 |
| T3 | Affine-aware contributions back upstream (affine-witness column, reversibility tagging, effect-row metadata, idempotency/monotonicity properties, affine-friendly ops, single ADR) | 7 |
Doc
See docs/alib-roadmap.adoc (in repo) for full per-item rows + alignment with aLib v0.1.0 (20 ops × 6 categories).
Sequencing (from the doc)
- Phase A (scaffolding): ci: Bump erlef/setup-beam from 1.17.5 to 1.24.0 #10 (
alib.affinemodule) → ci: Bump trufflesecurity/trufflehog from 3.94.1 to 3.94.2 #11 (schema loader) → ci: Bump webfactory/ssh-agent from 0.9.1 to 0.10.0 #12 (test-vector executor) - Phase B (pure ops first): ci: Bump actions/setup-node from 4.0.2 to 6.3.0 #1 (arithmetic-9) → ci: Bump trufflesecurity/trufflehog from 3.92.5 to 3.94.1 #6 (conditional) → ci: Bump dtolnay/rust-toolchain from f7ccc83f9ed1e5b9c81d8a67d7ad1a747e22a561 to efa25f7f19611383d5b0ccf2d1c8914531636bf9 #2 (comparison) → ci: Bump softprops/action-gh-release from 2.5.0 to 2.6.1 #3 (logical)
- Phase C (collection + string): gated on stdlib roadmap Phase A (List/String runtime). Then ci: Bump actions/cache from 5.0.2 to 5.0.4 #4 + ci: Bump actions/github-script from 7.0.1 to 8.0.0 #5 + ci: Bump github/codeql-action from 4.31.10 to 4.35.1 #7 + ci: Bump dtolnay/rust-toolchain from efa25f7f19611383d5b0ccf2d1c8914531636bf9 to 3c5f7ea28cd621ae0bf5283f0e981fb97b8a7af9 #8 + ci: Bump actions/checkout from 4.1.1 to 6.0.2 #9.
- Phase D (CI + visibility): Rename AffineScript file extension from .as to .affine #15 (workflow) → feat: migrate file extension from .as to .affine for GitHub Linguist … #16 (badge) → feat: migrate file extension from .as to .affine for GitHub Linguist … #17 (multi-target) → ci: Bump actions/deploy-pages from 4.0.5 to 5.0.0 #14 (reports) → refactor(manhattan-recovery): scope recovery + complete grammar refactor + rip dependent-type creep #18 (comparison view)
- Phase E (upstream contributions): feat: migrate file extension from .as to .affine for GitHub Linguist … #25 (ADR draft) → refactor(manhattan-recovery): scope recovery + complete grammar refactor + rip dependent-type creep #19/ci: bump trufflesecurity/trufflehog from 3.94.2 to 3.94.3 #20/ci: bump actions/upload-pages-artifact from 4.0.0 to 5.0.0 #21/ci: bump actions/github-script from 8.0.0 to 9.0.0 #22/ci: bump editorconfig-checker/action-editorconfig-checker from 2.1.0 to 2.2.0 #23 as one upstream PR → ci: bump ocaml/setup-ocaml from 3.4.8 to 3.6.0 #24 (affine-op proposals follow-up)
Child issues
Tier-1 starting point:
stdlib/alib.affinemodule (alib ci: Bump erlef/setup-beam from 1.17.5 to 1.24.0 #10) — re-exports the 20 aLib ops under their aLib names; conformance entry-point
Item numbers in docs/alib-roadmap.adoc are stable; reference as alib #N.
Notes
- aLib is small by design (20 ops). T1 + T2 are bounded — completable in a handful of PRs.
- T3 contributions land via PRs to
hyperpolymath/aggregate-library, not this repo. Aggregate them into one ADR-backed upstream PR (feat: migrate file extension from .as to .affine for GitHub Linguist … #25 first). - Multi-target harness (T2 feat: migrate file extension from .as to .affine for GitHub Linguist … #17) running conformance against both interp + wasm-codegen targets is the direct antidote to the "check PASS / eval FAIL" class of bug that idaptik PR Cross-module imports: TopConst not threaded by gen_imports / flatten_imports #107 hit.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew capability or improvement to existing behaviourNew capability or improvement to existing behaviourfeeds:valence-shellFeeds valence-shell's proofs/engineering (D127): judge progress by what it contributes thereFeeds valence-shell's proofs/engineering (D127): judge progress by what it contributes theremeta:umbrellaParent issue aggregating child issuesParent issue aggregating child issuespriority:p3Low - nice to haveLow - nice to havescope:repoConfined to this repositoryConfined to this repository
Activity
hyperpolymath commentedon May 28, 2026
Track-1 child issues opened:
stdlib/alib.affineconformance module #416 — alib ci: Bump erlef/setup-beam from 1.17.5 to 1.24.0 #10:stdlib/alib.affineconformance moduleOther Track-1 / Track-2 / Track-3 items remain in
docs/alib-roadmap.adoc; open child issues as Phase-A scaffolding (#414 → #416 → #11 schema loader → #12 test-vector executor) progresses.feat(stdlib): alib.affine conformance module (closes #416) (#420)
docs(stdlib+alib-roadmap): fill in Tracking sections with live umbrel…
docs(stdlib+alib-roadmap): fill in Tracking sections with live umbrel…
docs(stdlib+alib-roadmap): fill in Tracking sections with live umbrel…
Roadmap tracking + Zig-FFI doc (#19) + hex/base64 encoding (#25) + In…