- Concurrency soak (exit criterion): 12 concurrent gated runs, every decision attempted twice concurrently, explicit resumes racing the durable sweeper — exactly one execution per approval, grants consumed at most once, every decision audited, zero stuck runs, zero unaudited executions. (Testkit pool raised to 20 connections; the 5-connection pool starved the storm.) - axe a11y sweep (exit criterion): serious+critical violations fail CI on login, shell, chat, computer home, settings app, all global pages, and the wizard. Two real violations found and fixed: aria-label on a plain div (wizard progress -> role=group) and a button directly inside a <dl> (settings -> plain bordered list). - tools/bundler (exit criterion): keygen / assemble / verify CLI — copies artifacts, writes manifest.json + sha256 checksums.txt + a detached ed25519 signature; verification is fully offline (keyless signing is internet-dependent and disqualified). Tests: round trip, tampered artifact caught by hash, tampered checksum list caught by signature, wrong key refused, missing artifact reported. 147 Rust + 63 frontend tests + 27 Playwright journeys (incl. 4 a11y). Co-Authored-By: Claude Fable 5 <[email protected]>
23 lines
489 B
TOML
23 lines
489 B
TOML
[package]
|
|
name = "teamclaw-bundler"
|
|
version = "0.1.0"
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
license.workspace = true
|
|
publish.workspace = true
|
|
|
|
[dependencies]
|
|
ed25519-dalek = { version = "2", features = ["rand_core"] }
|
|
hex = "0.4"
|
|
rand_core = { version = "0.6", features = ["getrandom"] }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
sha2 = "0.10"
|
|
thiserror = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
uuid = { workspace = true }
|
|
|
|
[lints]
|
|
workspace = true
|