Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
152 commits
Select commit Hold shift + click to select a range
63cf2b0
add interleaving/ivc-proto crate (wip)
ecioppettini Sep 19, 2025
b4a83f0
fix layout bug in dummy memory
ecioppettini Oct 3, 2025
9f13921
wip: connect circuit to neo
ecioppettini Oct 3, 2025
6e56cbf
update
ecioppettini Oct 4, 2025
9ddbd9c
better logging
ecioppettini Oct 5, 2025
82b2028
revert
ecioppettini Oct 5, 2025
6ea3f1f
add more debugging logs to the step circuit
ecioppettini Oct 5, 2025
237ab17
update
ecioppettini Oct 7, 2025
caaf781
refactor neo code and add conversion tests
ecioppettini Oct 15, 2025
41e0af3
version bump. tests passing
ecioppettini Oct 18, 2025
24fa545
update neo
ecioppettini Oct 15, 2025
097d08c
(wip) add partial spec
ecioppettini Oct 21, 2025
b2d8aa4
add better tests with mocked ledger/executor/programs
ecioppettini Oct 27, 2025
a997ac2
add (p3 compatible) poseidon2 compression gadget for goldilocks
ecioppettini Oct 29, 2025
71c58a9
circuit: add per-program io commitment using poseidon2
ecioppettini Nov 3, 2025
213556b
add (still unused) nebula mcc implementation with the IVCMemory inter…
ecioppettini Nov 3, 2025
20fe27e
chore: cleanup unused code from the poseidon2 module
ecioppettini Nov 15, 2025
16a5549
fix: replace DummyMemory with NebulaMemory to resolve type mismatch
ecioppettini Nov 15, 2025
82b4c7b
(wip) bump nightstream version to new impl
ecioppettini Nov 17, 2025
49a1f9e
refactor: add debug prints for matrix conversion constraints and vari…
ecioppettini Nov 17, 2025
9d294d2
feat: add reversibility assertion in ark_field_to_p3_goldilocks conve…
ecioppettini Nov 17, 2025
234510f
fix: simplify ark_field_to_p3_goldilocks conversion logic
ecioppettini Nov 17, 2025
d34296d
bump nightstream to 5af5fce
ecioppettini Nov 20, 2025
c53b0ec
add effect handlers to the README.md (which is the spec)
ecioppettini Dec 9, 2025
32f803a
update spec: add concurrency example and update/clarify the "ledger o…
ecioppettini Dec 18, 2025
4e488f7
spec: fix some type inconsistencies
ecioppettini Dec 18, 2025
edf95df
spec: fix more inconsistencies and add more notes
ecioppettini Dec 18, 2025
7932777
spec: describe interleaving circut semantics and add clarifications o…
ecioppettini Dec 19, 2025
b284acf
spec: add scoped effect handlers primitives and update examples accor…
ecioppettini Dec 19, 2025
99332fa
cp: add ledger spec (in new directory in the root, todo migrate the r…
ecioppettini Dec 23, 2025
7e69d38
mock_ledger_spec: git add missing files and add more tests/simplifica…
ecioppettini Dec 26, 2025
25d75b0
circuit: circuit and memory api refactors
ecioppettini Dec 29, 2025
9fa4aa6
chore: cleanup clippy warnings
ecioppettini Dec 29, 2025
52190b2
fix Cargo.lock after rebase origin/main
ecioppettini Feb 19, 2026
c027756
wip make circuit match spec
ecioppettini Dec 29, 2025
2ac389f
checkpoint: visit_new_process seems to work
ecioppettini Dec 31, 2025
091fce6
fixed resume
ecioppettini Dec 31, 2025
2bc2ffe
fix Input opcode
ecioppettini Dec 31, 2025
ec7731a
checkpoint
ecioppettini Dec 31, 2025
16aba12
bind and unbind
ecioppettini Jan 1, 2026
35d75ac
add Init register op and rename arg to activation
ecioppettini Jan 2, 2026
445b733
wip add arena for passing data
ecioppettini Jan 2, 2026
e6dc658
fix padding
ecioppettini Jan 3, 2026
1459679
upgrade nightstream version
ecioppettini Jan 3, 2026
ccca00e
use ref get instruction in the test too
ecioppettini Jan 3, 2026
b1cb2b3
unify opcode switch configuration into a single function
ecioppettini Jan 3, 2026
b4d690a
reduce duplicated code with a macro
ecioppettini Jan 3, 2026
d49c3db
refactor execution switches
ecioppettini Jan 3, 2026
e293eae
refactor memory tag allocs
ecioppettini Jan 3, 2026
1d90db2
rename ref_arena_stack_ptr to ref_arena_counter
ecioppettini Jan 3, 2026
9ddfc31
refactor mem tracing loop
ecioppettini Jan 3, 2026
14e8195
refactor: restructure execution switches and simplify PreWires struct
ecioppettini Jan 3, 2026
258a88b
refactor: extract ExecutionSwitch var allocation and constraint from …
ecioppettini Jan 3, 2026
8098bf3
chore: minor cleanup
ecioppettini Jan 4, 2026
da1b07d
implement effect handler opcodes in the circuit
ecioppettini Jan 5, 2026
dd8b698
handler memory refactoring/simplifications
ecioppettini Jan 5, 2026
0569adb
use dummy public instance for dummy circuit
ecioppettini Jan 5, 2026
eefb511
wip: port the circuit to the new (twist-and-shout-enabled) nightstrea…
ecioppettini Jan 6, 2026
f30e3c3
connect ivc circuit to nightstream's shout support
ecioppettini Jan 6, 2026
3c8fae7
update Cargo.lock (nightstream rev version)
ecioppettini Jan 8, 2026
4724726
chore: clippy cleanup
ecioppettini Jan 8, 2026
af0bda0
fix/update mock_ledger tests with refs/arena
ecioppettini Jan 8, 2026
26da292
circuit: connect rams to twist
ecioppettini Jan 8, 2026
1e2d62d
point nightstream to 100f3e6 (#61)
ecioppettini Jan 9, 2026
17bfb8b
allow arbitrarily sized refs
ecioppettini Jan 11, 2026
d0c6609
cp: instrumented wasm runtime for trace generation
ecioppettini Jan 12, 2026
dfb5d23
cp: trace commitment
ecioppettini Jan 15, 2026
1df5a66
remove unused OpcodeVarValues struct
ecioppettini Jan 15, 2026
72c64bf
cp: arg indexing refactor
ecioppettini Jan 15, 2026
a8479bb
rework prev_id optional encoding
ecioppettini Jan 15, 2026
c725a6c
chore: extract ark-poseidon2 to a new crate
ecioppettini Jan 15, 2026
637f6c4
update Cargo.lock (poseidon2 split)
ecioppettini Jan 15, 2026
22112fa
ark-poseidon2: a few synthesis micro-optimizations (small gains)
ecioppettini Jan 15, 2026
6ea0cd0
add WitEffectOutput type for thunks in interleaving tracer
ecioppettini Jan 16, 2026
7a6df5d
include the opcode id in the ledger trace commitment
ecioppettini Jan 16, 2026
a1ace13
update Cargo.lock
ecioppettini Jan 16, 2026
4e8496f
add per coroutine trace binding to interleaving proof with poseidon2 ic
ecioppettini Jan 16, 2026
ed36ef3
fix: git add missing abi.rs file
ecioppettini Jan 17, 2026
d66e1dd
rename starstream_ivc_proto to starstream-interleaving-proof
ecioppettini Jan 17, 2026
914bb6b
update Cargo.lock
ecioppettini Jan 17, 2026
fc573b8
interleaving circuit: use the full module hash for the relevant opcodes
ecioppettini Jan 17, 2026
8743995
chore: simplify memory lane configuration by tracking current step in…
ecioppettini Jan 17, 2026
37e6df7
code/crate re-org
ecioppettini Jan 19, 2026
72af123
update Cargo.lock
ecioppettini Jan 19, 2026
a058b0d
remove old/outdated runtime test
ecioppettini Jan 19, 2026
c6f2a74
remove mem state updates in visit_ methods and rework the optional ow…
ecioppettini Jan 19, 2026
86b561a
chore: extract OptionalF and OptionalFpVar to a module
ecioppettini Jan 19, 2026
7640f94
chore: split circuit.rs (code re-org)
ecioppettini Jan 19, 2026
7a90bc1
circuit: OptionalF handling cleanup
ecioppettini Jan 19, 2026
16823b1
cargo fmt
ecioppettini Jan 19, 2026
71d8307
minor circuit cleanup (target address conditional todo)
ecioppettini Jan 20, 2026
359e7d0
circuit: basic opcode batching (still missing some continuity constra…
ecioppettini Jan 20, 2026
e48de63
bump nightstream version
ecioppettini Jan 20, 2026
cca679b
update Cargo.lock
ecioppettini Jan 20, 2026
ef735fc
(perf) fix slow gr1cs tracing
ecioppettini Jan 20, 2026
ffda7ab
interleaving circuit: per batch ivc wiring
ecioppettini Jan 21, 2026
b770059
cp: runtime improvements and fix resume/yield prev_id semantics
ecioppettini Jan 21, 2026
074edc5
bump Nightstream version
ecioppettini Jan 22, 2026
7c15018
update Cargo.lock
ecioppettini Jan 22, 2026
4db92dd
move neo/Nightstream to workspace dependencies
ecioppettini Jan 22, 2026
02f37ca
wip: biggish effect_handlers.star based integration test
ecioppettini Jan 22, 2026
3b19c5d
make pushref and get batched/multi-valued (less overall steps required)
ecioppettini Jan 23, 2026
446bde6
extract ref arena functions to a module and add tests
ecioppettini Jan 26, 2026
1a4d8d2
add channel-like integration test with new ad-hoc wasm dsl macro
ecioppettini Jan 27, 2026
d8342bf
add wasm-debugging flag (print the wat of the integration test)
ecioppettini Jan 27, 2026
67f0067
update Cargo.lock
ecioppettini Feb 19, 2026
456e7ac
cargo fmt wasm_dsl
ecioppettini Jan 27, 2026
20c1b07
fix the nebula tests
ecioppettini Jan 27, 2026
e76d91b
ignore the test_runtime_effect_handlers_cross_calls integration test …
ecioppettini Jan 27, 2026
466dbac
rename Get opcode to RefGet
ecioppettini Jan 27, 2026
d87e28b
add RefWrite opcode for mutation
ecioppettini Jan 27, 2026
d2185c1
simplify shared-buffer opcodes (fix lengths and switch to aligned rea…
ecioppettini Jan 28, 2026
836adf5
update Cargo.lock (nighstream version bump)
ecioppettini Jan 29, 2026
dda31f5
add OpcodeDsl to reduce tracing/synthesis duplication (only in ref ar…
ecioppettini Jan 29, 2026
811618e
extract install_handler opcodes to a module + use opcode dsl
ecioppettini Jan 29, 2026
a09285b
add ref arena switchboard to the opcode config
ecioppettini Jan 29, 2026
056e680
extract InterfaceResolver to handler_stack_gadget.rs
ecioppettini Jan 29, 2026
5a4d32b
extract ExecutionSwitches to execution_switches.rs
ecioppettini Jan 29, 2026
6fa713a
extract ProgramHash to program_hash_gadget.rs
ecioppettini Jan 29, 2026
581e8ab
more refactors / code deduplication with the new dsl
ecioppettini Jan 29, 2026
fc65aac
add missing expected_resumer constraint in visit_yield
ecioppettini Jan 30, 2026
b164f07
spec adjustments and add missing initialized check in visit_burn
ecioppettini Jan 30, 2026
f77295d
move design docs to starstream-interleaving-spec
ecioppettini Jan 30, 2026
9da6232
bump Nightstream to cc2e985: shout tables don't need to be manually p…
ecioppettini Jan 31, 2026
bff967a
update Cargo.lock
ecioppettini Jan 31, 2026
5613035
ci: run tests that make proofs on --release
ecioppettini Feb 2, 2026
d75855d
circuit: set non-dummy step_linking
ecioppettini Feb 6, 2026
f2dd0c3
mocked_verifier: add missing uninstall handler check
ecioppettini Feb 6, 2026
cca6bd0
add test/example with wrapped script + fix control flow limitation in…
ecioppettini Feb 6, 2026
f9a8d0b
runtime+circuit: fix Init caller constraint and improve mermaid flow …
ecioppettini Feb 8, 2026
f141fe2
add mermaid-chart debug labels for the other integration tests
ecioppettini Feb 8, 2026
6f5398f
remove TWIST_DEBUG_FILTER feature
ecioppettini Feb 9, 2026
4574773
clippy fix starstream-runtime
ecioppettini Feb 9, 2026
996f997
more clippy cleanup in interleaving crates
ecioppettini Feb 9, 2026
10071c5
pr feedback: revert rust-toolchain nightly change
ecioppettini Feb 10, 2026
a09feb0
pr feedback: remove unused dep from mock_ledger
ecioppettini Feb 10, 2026
4228e25
cp: multi tx test and remove unnecessary last_yield from the referenc…
ecioppettini Feb 11, 2026
85fb5ad
cp: dex swap-like integration test
ecioppettini Feb 13, 2026
30aef76
circuit: fix invalid target address assignment in tracing for Unbind
ecioppettini Feb 13, 2026
c0c1187
circuit: add a span for the ref building mode constraint (better erro…
ecioppettini Feb 13, 2026
a774639
run cargo fmt
ecioppettini Feb 14, 2026
1004eec
simplify Yield by removing the output (which could already be replace…
ecioppettini Feb 14, 2026
abf6b3e
add domain separator to incremental trace commitment
ecioppettini Feb 15, 2026
f61d525
update Cargo.lock
ecioppettini Feb 15, 2026
a117c17
remove the Counters tracking from the spec+circuit
ecioppettini Feb 15, 2026
7e01110
effects spec cleanup
ecioppettini Feb 16, 2026
1c48228
add coord-only Return opcode
ecioppettini Feb 17, 2026
560c1a9
add the Return call to the integration tests
ecioppettini Feb 17, 2026
9a9b222
add new CallEffectHandler opcode to decouple effect calling from Resume
ecioppettini Feb 19, 2026
c7a470d
fix: make the interface related opcodes use the full width
ecioppettini Feb 19, 2026
f2e9b83
runtime: switch the placeholder sha256 wasm module hashing with posei…
ecioppettini Feb 19, 2026
0fa196c
update Cargo.lock
ecioppettini Feb 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,11 @@ jobs:
# Enforce lockfile correctness.
- run: cargo check --locked
# Test all crates, except those that force-target WASM.
- run: cargo test --workspace
# Skip the tests that make proofs, since we'll run those on the release profile
- run: cargo test --workspace -- --skip circuit_test --skip test_runtime
# The tests that do Nightstream proofs are quite slow without --release
- run: cargo test -p starstream-interleaving-proof --release circuit_test
- run: cargo test -p starstream-runtime --release test_runtime
# Cosmetic checks.
- run: cargo clippy
- run: cargo fmt --check
Expand Down
Loading