Commit Graph

480 Commits

Author SHA1 Message Date
slhx agent 216465f779 test(build): close residual helper mutants
Prove compact Rust type and vector facts plus default template paths, alias collision suppression, data parameter prefixes, keyed descendants, and absent Cargo roots. Classify only hemplate's infallible surface parser seam.

req: diagnostics/006

req: diagnostics/004

req: codegen/005

req: test/021
2026-07-17 07:59:26 +02:00
slhx agent 14f16cba23 test(build): close Rust fact and surface mutants
Prove recursive and inline Rust struct discovery, ignored non-Rust/out-of-tree files, source/parse failures, atom and handle collision propagation, and missing form-fact defaults; classify only non-injectable directory-entry errors and syn's named-field invariant.

req: diagnostics/006

req: diagnostics/004

req: surface/008

req: test/021
2026-07-17 07:16:43 +02:00
slhx agent 05154a58ed test(build): close target and identifier mutants
Prove first-seen cross-kind generated-target ordering and deduplication, exact identifier/literal/canonical-symbol boundaries, invalid UTF-8 and component names, and resource insertion reuse/collisions; simplify CSS class normalization through the shared Rust identifier validator.

req: codegen/005

req: diagnostics/004

req: diagnostics/005

req: surface/008

req: test/021
2026-07-17 06:58:36 +02:00
slhx agent 31534a538b test(build): close authoring diagnostic mutants
Assert exact selector-target and unknown-attribute InvalidData diagnostics and prove invalid scope IDs fail closed in unkeyed-loop diagnostics.

req: locality/001

req: locality/002

req: htmx_equivalents/003

req: convention/009

req: diagnostics/002

req: test/021
2026-07-17 06:36:15 +02:00
slhx agent a6f287e477 test(build): close value and keyed-scope mutants
Assert every static attribute validator boundary, exact missing/empty/invalid diagnostics, and valid AppBuilder lowering. Prove nested keyed ancestry, sibling/invalid scope rejection, keyed resource lowering, and unkeyed nested resource failures.

req: convention/002

req: convention/003

req: convention/004

req: convention/005

req: convention/006

req: list/005

req: diagnostics/004

req: test/021
2026-07-17 06:31:38 +02:00
slhx agent 4e7d772311 test(build): close placement diagnostic mutants
Assert exact InvalidData diagnostics for navigation, boost, client-module, and SSE misplacement and prove each accepted placement through AppBuilder::run.

req: page_swap/001

req: page_swap/007

req: push/006

req: diagnostics/002

req: test/021
2026-07-17 06:07:04 +02:00
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