Skip to content

chore(examples): honor DEACON_BIN and ignore generated runtime artifacts#178

Merged
pofallon merged 2 commits into
mainfrom
chore/examples-honor-deacon-bin
Jun 8, 2026
Merged

chore(examples): honor DEACON_BIN and ignore generated runtime artifacts#178
pofallon merged 2 commits into
mainfrom
chore/examples-honor-deacon-bin

Conversation

@pofallon

@pofallon pofallon commented Jun 6, 2026

Copy link
Copy Markdown
Contributor

Summary

Two examples-hygiene fixes, surfaced while validating the released deacon 0.2.0-rc.1 binary against the example suite:

  1. Honor DEACON_BIN in read-configuration scripts. The 9 read-configuration/*/exec.sh scripts hardcoded cargo run -p deacon --, forcing a source build. They now use "$DEACON_BIN" (defaulting to deacon on PATH), matching the pattern already used across the rest of examples/. This lets the whole suite run against an installed/release binary via DEACON_BIN=....

  2. Ignore devcontainer runtime artifacts tree-wide. Running up/build examples writes lifecycle state (.devcontainer-state/) and build cache (.devcontainer/build-cache/) into the example's workspace folder. The existing /.devcontainer-state ignore was anchored to the repo root, so these polluted git status under examples/. Added tree-wide ignores for both.

Verification

  • Ran the full example suite against the installed deacon 0.2.0-rc.1 binary with DEACON_BIN=deacon:
    • Daemon-free (17/17): read-configuration (10), doctor (3), configuration (4)
    • Container-backed (4/4, Docker via OrbStack): build/basic-dockerfile, up/basic-image, exec/non-interactive-streaming, down/basic — full build → up → exec → down lifecycle
  • Confirmed the committed root .devcontainer-state/ test fixtures remain tracked and the 34 committed examples/**/.devcontainer/devcontainer.json configs are unaffected (only the build-cache subdir is ignored).
  • After re-running artifact-producing examples, git status stays clean.

🤖 Generated with Claude Code

claude and others added 2 commits June 6, 2026 15:44
Replace hardcoded `cargo run -p deacon --` with `"$DEACON_BIN"`
(defaulting to `deacon` on PATH) across all read-configuration
example scripts, matching the pattern already used by the rest of
the examples tree. Lets the suite run against an installed binary.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Running up/build examples writes lifecycle state (.devcontainer-state/)
and build cache (.devcontainer/build-cache/) into the example's
workspace folder. The existing /.devcontainer-state ignore was anchored
to the repo root, so these polluted git status under examples/.

Add tree-wide ignores for both generated paths. Verified the committed
root .devcontainer-state/ test fixtures remain tracked and the 34
committed examples/**/.devcontainer/devcontainer.json configs are
unaffected (only the build-cache subdir is ignored).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@github-actions github-actions Bot added the docs Documentation changes label Jun 6, 2026
@pofallon pofallon merged commit 55fbc6b into main Jun 8, 2026
11 checks passed
@pofallon pofallon deleted the chore/examples-honor-deacon-bin branch June 8, 2026 10:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Documentation changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants