Skip to content

v7.3.1

Choose a tag to compare

@github-actions github-actions released this 02 Nov 10:18
· 43 commits to main since this release

What's changed in v7.3.1

Highlights

The landing hold stays where you left it. Under merge: manual, the base branch and the merge
mode are pinned at each prompt, so neither can be switched mid-turn to let a landing through. On
Claude, a release now asks first, including behind gh -R or sh -c.

Scripts behave the same on Windows. Every value a script reads through jq drops a stray
carriage return, and a new .specnaut/.gitattributes checks the .specnaut/ tree out with LF line
ends on every platform, so a CRLF checkout no longer breaks its scripts or makes upgrade read
every file as customised.

Clearer failures. An unreadable .specnaut/backlog-config.yml stops gate and spec with the
reason instead of a crash, and the local add.sh refuses labels it cannot record.

On Codex, trust the hooks again with /hooks after upgrading: until you do, none of Specnaut's
hooks run. See UPGRADING.md.

Bug fixes

  • Declare .specnaut/.gitattributes as Specnaut's, and smoke-check the split-out script
  • Read every jq value through one CR-safe helper per family
  • Local add.sh refuses a labels argument it cannot record
  • Measure every changed file under its byte-exact name
  • Ask before a release on Claude, behind gh -R and one sh -c (#699)
  • An unreadable backlog-config.yml exits 1 with the reason
  • The home comparison falls back only when HOME is unreachable
  • Pin the base and the merge mode at each prompt so the landing hold cannot be moved (#718)

Internal / chores

18 internal changes
  • Hold the gen-hooks and jq_lf tests to what Windows can show
  • Extract template resolution out of common.sh
  • Test and structure follow-ups from the #679 review (#700)
  • Use a neutral placeholder host in the cloud fixtures
  • Write the backlog-config stub through a store adapter
  • Keep the domain pure — credential and config ports, injected env
  • One managed-section filter, renderSummary split, init under 500
  • Gather a context link's evidence once, for diff and upgrade
  • Split UpgradeProjectUseCase.execute into named steps
  • WalkLinkText on Windows is recorded as unverified
  • Count unwritable layouts, vary the hops of a chain
  • Three cli#686 tests now prove what their names claim
  • One tagged answer instead of two error vocabularies
  • Resolution walks live beside the link-text walk
  • Link tests refuse to run under -A, one symlinkTest for all
  • The upgrade smoke checks the context link, and runs before the tag
  • State what the merge: manual landing hold guards against
  • Stop tracking the agent status ledger

Full changelog: v7.3.0...v7.3.1