40 lines
2.0 KiB
Markdown
40 lines
2.0 KiB
Markdown
# PLAN
|
|
|
|
Current outcome: make Hemx internals easier to change without altering public behavior, generated contracts, diagnostics, or portability.
|
|
|
|
## HMX-M01 — Isolate template authoring validation
|
|
|
|
Outcome: template authoring validation is privately owned without public, diagnostic, ordering, or fingerprint drift.
|
|
Delta: architecture/001 assurance/001
|
|
Checks: `cargo test -p hemx-build`; focused contract/fingerprint/diagnostic checks; Redgate; diff check; fresh-context review.
|
|
State: Done
|
|
Blocked by: none
|
|
|
|
## HMX-M02 — Isolate Rust source fact extraction
|
|
|
|
Outcome: Rust/syn context facts are privately owned without generated contract, ordering, fingerprint, or host-boundary drift.
|
|
Delta: architecture/002 assurance/001
|
|
Checks: focused build facts/contracts/fingerprint tests; Wasm graph; Redgate; diff check; fresh review.
|
|
State: Done
|
|
Blocked by: none
|
|
|
|
## HMX-M03 — Isolate artifact emission and diagnostics
|
|
|
|
Outcome: generated artifacts and contract diagnostics are privately owned without byte, ordering, fingerprint, or diagnostic drift.
|
|
Delta: architecture/003 assurance/001
|
|
Checks: exact generated API/diagnostic/fingerprint/no-op fixtures; package checks; Redgate; diff check; fresh review.
|
|
State: Done
|
|
Blocked by: none
|
|
|
|
## HMX-M04 — Localize Axum interaction forms
|
|
|
|
Outcome: the interaction-form boundary is privately owned without public extraction, decoding, limit, or rejection drift.
|
|
Delta: architecture/004 assurance/002
|
|
Checks: Axum interaction boundary suite; derive Form<T> spelling check; custom multipart typed extraction; Redgate; diff check; fresh review.
|
|
State: Done
|
|
Blocked by: none
|
|
|
|
## Closure
|
|
|
|
Run all repository-required Redgate, fmt, clippy, workspace test, license, Wasm graph, and package archive gates. Finish with a fresh-context blocker-only review against INTENT.tsv, SPEC.tsv, this plan, the actual diff, and proof outputs. Keep `hemx-core`, `hemx-js`, `hemx-derive`, and public package boundaries cohesive unless a later validated responsibility seam requires change.
|