Commit Graph

474 Commits

Author SHA1 Message Date
slhx agent a322e519d3 fix(build): fail closed on invalid loop locals
Recognize only one valid Rust identifier bound directly to a self vector field as a template local; reject malformed and non-vector bindings, preserve unknown element locals without fabricated fields, and deduplicate repeated locals.

req: diagnostics/006

req: surface/008

req: test/021
2026-07-17 05:57:29 +02:00
slhx agent 2e39fb17a1 fix(build): recognize exact Hemlate derives
Parse derive paths structurally so qualified Hemlate derives provide template context while similarly named derives fail closed. Prove hyphen/underscore template type mapping, empty and non-UTF-8 paths, Cargo-root lookup, Rust source failures, and derived field facts through the public inspection entry point.

req: diagnostics/006

req: surface/008

req: test/021
2026-07-17 05:45:03 +02:00
slhx agent 185cd18990 test(build): close stylesheet scanner mutants
Prove sorted, deduplicated CSS/SCSS class extraction across starts, compounds, delimiters, invalid candidates, and invalid stylesheet module names; simplify token scanning to one boundary loop and classify only deterministic non-terminating progress mutants.

req: style/001

req: diagnostics/004

req: test/021
2026-07-17 05:37:07 +02:00
slhx agent 4058d05f20 test(build): close app input collection mutants
Traverse inputs once, preserve deterministic HE/ML-before-stylesheet lowering, and prove nested discovery, explicit surfaces, OUT_DIR fallback, missing inputs, invalid UTF-8, permission failures, output failures, and stable collision ordering through AppBuilder::run.

req: build/003

req: build/004

req: build/009

req: diagnostics/004

req: test/021
2026-07-17 05:03:03 +02:00
slhx agent 2ba0be4d24 test(build): lock canonical generated contracts
Hash complete generated Rust, global exports, and symbol manifests across component, keyed, collision, duplicate-class/event, form, and parameter branches; simplify root component exports and remove impossible target-fallback bookkeeping.

req: codegen/005

req: codegen/006

req: build/009

req: test/021
2026-07-17 04:50:36 +02:00
slhx agent 72bce73e52 test(build): close resource extraction mutants
Prove fail-closed slot and handler-parameter diagnostics through AppBuilder, consolidate resource insertion around the stored entry, and lower validated runtime events without redundant fallible identifier conversion.

req: build/004

req: diagnostics/004

req: surface/008

req: test/021
2026-07-17 03:57:29 +02:00
slhx agent b28ffacacb test(build): prove class and form extraction
Assert exact generated symbol records for class, form, field, slot, atom, handle, and event resources; cover invalid and colliding class/form identifiers plus repeated compatible form metadata; and remove a redundant class-token conflict branch already owned by identifier validation.

req: style/001

req: form/001

req: diagnostics/004

req: build/009

req: test/021
2026-07-17 03:49:11 +02:00
slhx agent 9cdc91984a test(build): reject invalid client handler names
Drive AppBuilder through a rooted client module with a non-Rust handler name and assert the exact InvalidData diagnostic, closing the public invalid-value mutation seam.

req: build/004

req: client_local/011

req: diagnostics/004

req: test/021
2026-07-17 03:32:12 +02:00
slhx agent db5e4bf56c test(build): prove stale artifact refresh
Drive AppBuilder through a changed template and prove generated Rust and symbols replace stale handles. Tighten the internal write helper to return only the result its callers use and classify the filesystem-equivalent read-guard mutant.

req: build/009

req: test/021
2026-07-17 03:20:53 +02:00
slhx agent 8a21cad98e test(build): prove public inspection contracts
Exercise file and source diagnostics, generated targets, Hemlate-derived context facts, missing-file propagation, and invalid Rust context through hemx-build's public inspection API; classify only the currently infallible hemplate parser seam.

req: diagnostics/004

req: diagnostics/006

req: surface/008

req: test/021
2026-07-17 03:14:24 +02:00
slhx agent 1a9c090028 test(build): harden convention diagnostics
Exercise malformed static policy, client module/event/state, confirmation, SSE, delay, throttle, and mixed-event values so build-time diagnostics fail closed across the public declarative surface.

req: diagnostics/004

req: convention/006

req: client_local/011
2026-07-17 02:30:06 +02:00
slhx agent 89747c8c48 test(axum): close package mutation gate
Exercise every state, typed-form, async, and result registration family; replace fallible numeric headers with typed HeaderValue construction; and classify only validated equivalent multipart/header mutants.

req: axum_integration/003

req: derive_handler/005

req: multipart/003

req: test/020

req: test/021

req: test/022
2026-07-17 01:50:16 +02:00
slhx agent 8aeab5fca1 test(axum): close page edge-case mutants
Prove partial constructor defaults, missing multipart-boundary rejection, first-root fingerprint replacement, and unchanged non-root HTML through public and nearest-boundary paths.

req: page_swap/001

req: multipart/003

req: abi/005
2026-07-17 01:05:48 +02:00
slhx agent 52a32cfb1f test(axum): harden page and media extraction
Prove explicit partial header values, full-page body and fingerprint delivery, and case-insensitive urlencoded media types through public Axum extractors and responses.

req: page_swap/001

req: abi/005

req: security/003
2026-07-17 00:36:04 +02:00
slhx agent 0fe2376874 test(axum): prove response delivery boundary
Decode emitted effect bytes, assert dispatch rejection status and diagnostics, and verify the shared embedded runtime body through public IntoResponse paths.

req: axum_integration/003

req: axum_integration/005

req: failure/005

req: wire/007
2026-07-17 00:21:42 +02:00
slhx agent b0a8275b03 test(axum): prove registry dispatch boundary
Exercise registered sync and async handles through public dispatch_async, prove membership semantics, and serialize shared-boundary tests so mutation workers remain deterministic.

req: axum_integration/003

req: public_api/001
2026-07-17 00:17:24 +02:00
slhx agent e38489621b test(axum): harden form extraction boundary
Prove repeated and required form semantics, stable rejection diagnostics, media-type and body limits, multipart files, unnamed-part skipping, invalid UTF-8, and streaming failures through the public extractor.

req: form/002

req: form/004

req: failure/003

req: multipart/001

req: multipart/002

req: multipart/003
2026-07-17 00:12:45 +02:00
slhx agent dc7c82f7ee test(axum): prove page response semantics
Close the first hemx-axum mutation class by proving page-mode detection and response constructor fingerprint behavior through the public integration API.

req: page_swap/001

req: abi/005
2026-07-16 23:59:51 +02:00
slhx agent d74810db4b test(core): close package mutation gate
Classify only the two non-terminating const-loop mutations after deterministic fingerprint outputs are asserted, then prove the complete hemx-core package mutation-clean through xtask.

req: abi/003

req: test/020

req: test/021

req: test/022
2026-07-16 23:43:41 +02:00
slhx agent 2705099aed test(harness): close hemx-test mutation gate
Prove canonical wire inspection diagnostics and selector failures, classify only OS-process and invariant-only mutation seams, and make the package-native mutation command pass for the complete hemx-test crate.

req: test/001

req: test/019

req: test/020

req: test/021

req: test/022

req: wire/009
2026-07-16 23:10:12 +02:00
slhx agent 612a66725f feat(xtask): add package-native mutation gate
Expose a capped mutation command that selects only elected packages, rejects unknown input, propagates mutest failures, and keeps output under the workspace target directory.

req: test/020

req: test/021

req: test/022
2026-07-16 22:40:07 +02:00
slhx agent 5e555f4d93 test(build): close generated contract mutants
Exercise invalid client contracts through AppBuilder and simplify invariant-only generation paths so the focused build contract mutation set has no unexplained survivors.

req: build/004

req: build/007

req: client_local/011
2026-07-16 22:34:41 +02:00
slhx agent e9ced4e0c1 feat(v1): harden typed runtime boundaries
Elect one canonical EffectBatch codec, remove the parallel postcard API, and strengthen fail-closed host, form, sync, WASM, macro, generated-contract, and test-harness proofs with mutation-driven coverage.

req: wire/008

req: wire/009

req: wire/010

req: push/008

req: client_local/015

req: client_local/016

req: client_local/017

req: client_local/018

req: client_local/019

req: sync/024

req: sync/025

req: sync/026

req: sync/027

req: sync/028

req: sync/029

req: test/020

req: test/021
2026-07-16 22:27:28 +02:00
slhx agent e7211df4c5 fix(forms): support reserved control identifiers
Normalize raw Rust identifiers when matching generated form contracts so reserved HTML control names remain usable.

req: form/004
2026-07-16 10:00:43 +02:00
slhx agent a04773d016 fix(deps): replace retired transitive crates 2026-07-14 09:44:19 +02:00
slhx agent 48d6ea31be fix(release): complete local readiness gates 2026-07-14 01:45:28 +02:00
slhx agent 23b1d75f7f fix(requirements): migrate to installed redgate format 2026-07-14 01:37:05 +02:00
slhx agent 025d9c1563 fix(release): restore canonical local gate
req: public_api/001

req: v1_release/007
2026-07-14 01:24:31 +02:00
slhx agent 90e8c3ced5 test(versioning): pin supported compatibility matrix
req: abi/001

req: abi/003

req: v1_release/007
2026-07-14 01:09:07 +02:00
slhx agent 6f58453aae feat(saas): enforce strict response policy
req: security/006

req: operations/006

req: operations/008
2026-07-14 00:59:06 +02:00
slhx agent 4fc5e53adf feat(saas): correlate mutation diagnostics
req: operations/001

req: operations/003

req: security/008
2026-07-14 00:53:04 +02:00
slhx agent 4e0d9ebaff feat(saas): expose redacted operational signals
req: operations/003

req: operations/005

req: operations/007

req: security/008

req: v1_release/003
2026-07-14 00:48:55 +02:00
slhx agent ef8e38adf8 feat(saas): prove durable authenticated mutation
req: auth/001

req: auth/002

req: auth/004

req: security/004

req: v1_release/003
2026-07-14 00:40:46 +02:00
slhx agent c793de8224 refactor(kanban): isolate legacy sync fixture
req: v1_release/002
2026-07-14 00:27:38 +02:00
slhx agent 3bad745da9 feat(sync): replay durable projections from Rust
req: ms/001

req: ms/002

req: ms/003
2026-07-14 00:17:20 +02:00
slhx agent 2a74a28d3b test(kanban): prove multiplayer milestone journey
req: ms/001

req: ms/002

req: ms/003
2026-07-13 23:51:51 +02:00
slhx agent 2f1b7703f9 docs(plan): close authoritative sync slice 2026-07-13 23:25:53 +02:00
slhx agent 5a82956c08 feat(sync): add typed acknowledgement effect
req: sync/006
2026-07-13 23:15:57 +02:00
slhx agent 88598f181f feat(sync): add typed presence projection
req: sync/001

req: sync/005
2026-07-13 23:03:46 +02:00
slhx agent 87296632bc feat(sync): add typed broadcast primitive
req: sync/004
2026-07-13 22:54:12 +02:00
slhx agent 98b00920b9 test(sync): audit browser recovery paths 2026-07-13 22:46:03 +02:00
slhx agent d2ae025e13 fix(operations): bound handler lifetimes
req: operations/003
2026-07-13 22:06:12 +02:00
slhx agent 2bc68c5777 fix(sync): bound acknowledgement stream
req: operations/004
2026-07-13 21:48:00 +02:00
slhx agent 56ace537f3 fix(axum): enforce mutation request boundaries
req: security/003
2026-07-13 21:37:55 +02:00
slhx agent 3ac9549cc3 fix(security): bound untrusted wire decoding
req: security/005
2026-07-13 21:31:34 +02:00
slhx agent 2a8aa4c07f fix(sync): bound request lifetime
req: operations/003
2026-07-13 21:16:07 +02:00
slhx agent 6d502d8ff5 test(sync): prove deterministic reconciliation
req: sync/022
2026-07-13 21:08:51 +02:00
slhx agent 34728b9a35 feat(sync): add typed flat patch boundary
req: sync/002

req: sync/003
2026-07-13 21:02:43 +02:00
slhx agent 25fcdae9b9 test(kanban): prove public offline sync journey
req: sync/023
2026-07-13 20:26:55 +02:00
slhx agent f1dc6edb7a feat(kanban): expose redacted sync diagnostics
req: operations/001

req: security/002

req: sync/016
2026-07-13 20:07:21 +02:00