Files
sandwich-hime/ROADMAP.md
T
gamertan b7a84054d7 release: prepare Sandwich Hime v1 beta
Publish the sanitized Beta 1 source candidate with version-stable generated provenance, classroom/evaluation support boundaries, provisional macOS support, signed-source release policy, and an exact candidate preflight.

Material implementation, drafting, and review were assisted by OpenAI Codex. Cole Speelman reviewed the public snapshot and accepts human responsibility for the contribution.

Signed-off-by: Cole Speelman <crspeelman@gmail.com>
2026-08-12 14:37:53 -04:00

3.5 KiB

Proof-in-the-pudding roadmap

Unchecked items are release blockers for the milestone that contains them, not necessarily blockers for an earlier prerelease. The ordered initiative, repository topology, release-candidate sequence, and definition of confidence are maintained in docs/V1_RELEASE_PLAN.md.

Beta 1: public learning and evaluation

Beta 1 deliberately ships before the final-v1 compatibility and artifact gates. Its scope is classroom use, learning, prototypes, and compatibility feedback; it is not a production-stability promise.

  • Define beta versus RC/final support and compatibility policy.
  • Establish a public pre-beta Linux/Windows matrix on Go 1.25 and Go 1.26.
  • Document macOS as provisional and invite useful community reports while retaining maintainer responsibility for security and releases.
  • Rerun all required Windows/Linux checks and deterministic generation on the exact Beta 1 candidate.
  • Publish immutable sando/v1.0.0-beta.1, then v1.0.0-beta.1, from the reviewed public commit.
  • Verify clean direct and public-proxy installs after publication.
  • Complete native macOS maintainer validation. This is an RC/final gate, not a Beta 1 gate.

Compiler and runtime for RC/final

  • Freeze and machine-check the compiler, CLI, diagnostic, schema, generated, and runtime compatibility contracts.
  • Repeat compiler-owned deterministic golden output across Linux, macOS, and Windows on the exact candidate.
  • Compile temporary consumer modules using committed Go and only the Apache runtime.
  • Run the parser, delimiter, context, path, and source-map release fuzz campaign.
  • Evidence adversarial escaping and filesystem cases.
  • Pass test, race, vet, vulnerability, and license gates on the latest two supported Go lines.
  • Reproduce signed compiler/runtime release artifacts, checksums, and SBOMs.

Development supervisor for RC/final

  • Generation/build/start/health failures keep the previous healthy server live.
  • SSE reconnect/reload and mapped overlay diagnostics pass browser-level tests.
  • CSP hash injection, fragment/API/download exclusion, and cache disabling pass.
  • Replaced and interrupted child processes leave no descendants on supported systems.

Repository-owned release evidence

  • Differentially test contextual escaping against Go's documented html/template safety baseline.
  • Reproduce repository-owned synthetic benchmark cases and methodology from a clean checkout.
  • Review generated output for stable provenance, source mappings, and absence of compiler-license headers.
  • Document the production boundary: committed generated Go plus the Apache runtime, with no compiler or development supervisor in the deployed binary.
  • Keep unsupported or unmeasured performance and production claims out of release materials.

Final public launch

  • Complete final human review of ownership notices, output permission, DCO contribution process, and pre-registration trademark terms.
  • Complete name clearance, security-mailbox recovery, release signing, and two-person credential recovery.
  • Verify gamertan.com vanity metadata and documented installs from clean machines.
  • Confirm the sanitized public Gitea source contains no private paths, identifiers, history, or unsupported claims.
  • Publish and observe a signed RC on every supported native platform.
  • Publish sando/v1.0.0, then v1.0.0, without moving either tag.