Skip to content

ENG-1979: Fail cleanly when the state publish --build directory is missing#3838

Merged
mitchell-as merged 1 commit into
version/0-48-1-RC3from
mitchell/eng-1979
Jul 14, 2026
Merged

ENG-1979: Fail cleanly when the state publish --build directory is missing#3838
mitchell-as merged 1 commit into
version/0-48-1-RC3from
mitchell/eng-1979

Conversation

@mitchell-as

@mitchell-as mitchell-as commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator

ENG-1979: Fail cleanly when the state publish --build directory is missing

Part of the private ingredient work (ENG-1563). A beta tester ran state publish --build against a directory that didn't exist and hit a nil-pointer panic instead of a clear error. This makes that case fail cleanly and fixes the underlying crash.

Base branch: targets version/0-48-1-RC3.

🤖 Generated with Claude Code

…ssing

Running `state publish --build` against a non-existent source directory crashed
with a nil-pointer panic instead of reporting the bad path. Two fixes:

- Validate the --build directory exists up front and return an InputError naming
  the offending path, before any metadata resolution, key fetch, or wheel build.
- Fix buildWrappedArtifact's error path: the deferred cleanup called the named
  `cleanup` return, which the `return "", nil, err` statements had already set to
  nil, so it called a nil function value and panicked. The deferred cleanup now
  uses a local closure, so an in-build failure returns its real error instead of
  crashing.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mitchell-as mitchell-as merged commit d1a559d into version/0-48-1-RC3 Jul 14, 2026
15 of 16 checks passed
@mitchell-as mitchell-as deleted the mitchell/eng-1979 branch July 14, 2026 15:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant