Skip to content

v0.43.0

Choose a tag to compare

@ivank ivank released this 19 Jul 05:18
· 7 commits to main since this release
caa53b9

Batches issue #227 (the abstraction-tightening cleanup — workstreams B/C/D/A) plus the new uniqueness lint and two fixes, since v0.42.0.

Features

  • tfstackplan uniqueness — cross-env config uniqueness lint (#231).

Refactor — issue #227 (abstraction tightening)

  • A — exec-event migration (#232 #233 #234 #235): execution/stack/edge/superseded_by state is now fully event-sourced through the new per-execution aggregate internal/execution (stream run:<execID>); executions/stacks/edges/execution_phases are true projections rebuilt from the fold; the direct-write path (UpsertInit/UpdateStack/UpsertPhase/SetExecutionStatus/SupersedeExecution/ReviveExecution) is gone; the dead exec-event layer was removed from internal/reconcile.
  • B — dead static-UI removal (#228): removed the orphaned /img SVG path and the user-facing group {} serve-config block (−961 lines).
  • C — naming/micro-packages (#229): internal/statemovesinternal/moveset; run steprun wrap (with a warning alias); folded internal/causalityinternal/runner and internal/presetsinternal/classify.
  • D — docs restructure (#230): present-tense docs/DESIGN.md rewrite + reference-drift fixes.

Fixes

  • serve: reset status and clear superseded_by when an execution ID is reused (#226, closes #198).
  • claims/status: auto-discover server and default audience (PM-197, #225).

⚠️ Deploy note (breaking for live serve config)

Workstream B removed the group {} serve-config block. gohcl rejects unknown blocks, so any live serve .tfstackplan.hcl still carrying a group {} block must have it removed before deploying this version, or serve fails to start.

Deferred follow-ups

  • Remove the run step alias after infra scripts switch to run wrap (#236).
  • serve: reconcile inbound Cloud Builds it didn't launch (#237).