Commit Graph
353 Commits
Author SHA1 Message Date
Chris Tate ae3abd7069 Refuse unresolved subscriptions exports
- Track whether subscriptions_export is explicitly declared and reject dangling names at the profile.
- Preserve optional omission semantics and cover both paths with contract regressions.
2026-07-30 21:11:09 -05:00
Chris Tate 89fa568ae8 Merge pull request #66 from vercel-labs/ctate/record-slots
Prove integer writes to synthesized record slots
2026-07-30 20:55:31 -05:00
Chris Tate d0b3e81a9b fix(library): preserve nested integer obligations 2026-07-30 20:32:37 -05:00
Chris Tate 7badeb3135 Refuse synthesized record name collisions 2026-07-30 20:11:10 -05:00
Chris Tate 73cb79ea52 Fix synthesized record attestations across composed arms 2026-07-30 19:50:21 -05:00
Chris Tate a4898f335d Prove integer writes to synthesized record slots
- Preserve tagged-union shape identity when mapping synthesized payload fields into integer inference.

- Refuse fractional writes on named-union and message payload slots, with regressions for both paths.
2026-07-30 19:31:48 -05:00
Chris Tate a7eff0d983 Merge pull request #65 from vercel-labs/ctate/v0.0.20
Prepare v0.0.20 release
v0.0.20
2026-07-30 16:40:27 -05:00
Chris Tate fdf5010b28 Prepare v0.0.20 release
- Stamp all publishable packages at v0.0.20.

- Publish release notes for the contract-sidecar improvements.

- Refresh the compiler surface manifest for the release.
2026-07-30 16:26:39 -05:00
Chris Tate a50927ef97 Merge pull request #64 from vercel-labs/ctate/cross
Require cross-library gate before releases
2026-07-30 16:04:55 -05:00
Chris Tate d9b0e4fb30 Require cross-library gate before releases
- Add the cross-target library conformance lane to the release checklist.
- Require its artifact-portability verdict before the publishing commit.
2026-07-30 15:52:53 -05:00
Chris Tate ab4584bf0d Merge pull request #62 from vercel-labs/ctate/scalar
Dissolve scalar aliases during sidecar projection
2026-07-30 15:50:07 -05:00
Chris Tate 650cbf23f3 Dissolve scalar aliases during sidecar projection
- Resolve scalar alias chains to their primitive wire types.

- Keep aliases out of the sidecar type table.

- Cover records, messages, helpers, and integer slots.
2026-07-30 15:09:55 -05:00
Chris Tate fe3cade9de Merge pull request #61 from vercel-labs/ctate/readonly-t
Project readonly arrays in contract sidecars
2026-07-30 14:53:31 -05:00
Chris Tate 78c194e843 Fix shadowed contract builtin types 2026-07-30 14:43:15 -05:00
Chris Tate 93c19235b4 Project readonly arrays in contract sidecars
- Treat readonly T[] and ReadonlyArray<T> as mutability-neutral slices.
- Cover model, message, optional, and helper projections across readonly spellings.
2026-07-30 14:27:08 -05:00
Chris Tate b915e9d82e Merge pull request #60 from vercel-labs/ctate/v0.0.19
Prepare v0.0.19 release
v0.0.19
2026-07-30 13:52:03 -05:00
Chris Tate 1bd7e4af2e Prepare v0.0.19 release
- Stamp all published packages and the compiler surface manifest at 0.0.19.
- Promote the completed integer-slot fixes into the marked release notes.
2026-07-30 13:36:35 -05:00
Chris Tate a71d197a35 Merge pull request #59 from vercel-labs/ctate/number-asks
Compose integer slots with optional numbers
2026-07-30 13:26:38 -05:00
Chris Tate 4e9dc0e325 Fix empty-object integer attestations 2026-07-30 13:15:15 -05:00
Chris Tate 467ac81a86 Fix integer attestations across composed arms 2026-07-30 12:43:27 -05:00
Chris Tate 58412530fb Fix integer proof gaps in sidecar analysis 2026-07-30 12:09:04 -05:00
Chris Tate 018ba820e7 fix: preserve composed union arms in sidecar matching 2026-07-30 11:49:07 -05:00
Chris Tate b2007d75db fix: validate integer record facts safely 2026-07-30 11:25:53 -05:00
Chris Tate 6757c11af1 Match integer slots by structural shape 2026-07-30 10:31:52 -05:00
Chris Tate 9bdbf02079 Compose integer slots with optional numbers
- Project declared optional-number slots as optional<i64> and prove present numeric values across library boundaries.
- Refuse structurally colliding tagged-union obligations with an attributed SC4009 diagnostic.
2026-07-30 10:02:41 -05:00
Chris Tate 4d6895c561 Merge pull request #58 from vercel-labs/ctate/v0.0.18
Prepare v0.0.18 release
v0.0.18
2026-07-30 09:38:40 -05:00
Chris Tate 7f68aa1676 Prepare v0.0.18 release
- Stamp all publishable packages and the surface manifest at 0.0.18.
- Promote the curated Unreleased notes and release markers to v0.0.18.
2026-07-30 09:29:36 -05:00
Chris Tate a81ceb2bcc Merge pull request #57 from vercel-labs/ctate/request-cb
fix: lower HTTPS request callbacks in LLVM
2026-07-30 09:15:46 -05:00
Chris Tateandmorler de0e54d776 fix: lower HTTPS request callbacks in LLVM
- Lower the HTTPS options row through the runtime ABI with callback ownership and loop liveness.
- Pin HTTP and HTTPS response callbacks with differential and tier-regression coverage.

Co-authored-by: morler <478444+morler@users.noreply.github.com>
2026-07-30 00:17:47 -05:00
Chris Tate 5ba26e4a61 Merge pull request #56 from vercel-labs/ctate/more-array
Support array copying and Uint8Array iteration
2026-07-29 22:49:17 -05:00
Chris Tate 798a281be3 fix: lower wrapped undefined arguments 2026-07-29 22:36:45 -05:00
Chris Tate 8e7b411af0 test: record array copying order baselines 2026-07-29 21:58:14 -05:00
Chris Tate 4b041e630f fix: preserve array copying edge semantics 2026-07-29 21:35:09 -05:00
Chris Tate 296311fa81 fix: preserve static undefined argument semantics 2026-07-29 21:13:46 -05:00
Chris Tate f47ee03dc6 Support array copying and Uint8Array iteration
- Add static Array and Uint8Array copying, sorting, and join surfaces.
- Lower Uint8Array spread, destructuring, and iterator methods across C and LLVM.
- Pin Node 24 semantics with differential coverage and runtime size gating.
2026-07-29 18:03:00 -05:00
Chris Tate ba53677697 Merge pull request #55 from vercel-labs/ctate/for-of
Support numeric iterators in for-of
2026-07-29 17:15:48 -05:00
Chris Tate e95469364a Support numeric iterators in for-of
- Lower number-array and typed-array value iterators statically.
- Preserve stored iterator cursor and exhaustion state across loops.
- Add Node differential coverage for arrays and Uint8Array.
2026-07-29 16:32:41 -05:00
Chris Tate 4677724748 Merge pull request #54 from vercel-labs/ctate/to-sorted
feat: add static Array.toSorted support
2026-07-29 15:43:46 -05:00
Chris Tate a992b644fb fix: align Array.toSorted ordering semantics 2026-07-29 15:30:48 -05:00
Chris Tate d7cb22a325 test: pin Array.toSorted evaluation order 2026-07-29 15:11:04 -05:00
Chris Tate 767be68ae2 feat: add static Array.toSorted support
- Lower to the stable array sort helper over a shallow snapshot.
- Publish Array.prototype.toSorted in the static surface manifest.
- Cover stability, copy semantics, and evaluation order differentially.
2026-07-29 14:56:18 -05:00
Chris Tate f3022a187e Merge pull request #53 from vercel-labs/fix/guarded-field-integer-refinement
Refine guarded integer field reads
2026-07-29 14:46:53 -05:00
Chris Tate 8a5bf62cf5 Refine guarded integer field reads
- Track canonical field paths through straight-line guards.
- Invalidate path proofs across calls, writes, suspension, and control-flow joins.
- Cover if and ternary proofs with Node-exact C and LLVM regressions.
2026-07-29 14:37:25 -05:00
Chris Tate 32c180f261 Merge pull request #38 from vercel-labs/ctate/top-level-await
Support top-level await
2026-07-29 01:51:50 -05:00
Chris Tate 9b0ad004f8 Fix top-level await rejection checkpoints 2026-07-29 01:32:26 -05:00
Chris Tate 05752fde96 Fix top-level await dependency rejection handling 2026-07-29 00:35:35 -05:00
Chris Tate 43e183dfc3 fix: await async cycle root from external importers 2026-07-29 00:11:21 -05:00
Chris Tate c50041b1bd fix: select async cycle root at runtime 2026-07-28 23:49:22 -05:00
Chris Tate 786f10dbf2 Fix top-level await cycle semantics 2026-07-28 23:27:25 -05:00
Chris Tate dca69db98e Fix pending top-level await exit precedence 2026-07-28 22:40:36 -05:00