Repository navigation
Conversation
Inventories every file sandcat writes and the contract each is under today, names the accidental fourth category (regenerated but user-edited), and proposes a manifest of init choices, owned overlays for the files users are invited to edit, and an upgrade verb. The template-engine change is recorded as a related step that waits for the port's bash-removal and parity-retirement steps, since it changes template sources the bash tree shares. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YKma722KMnAX3LcDLUYDQ5
Records that nothing today covers software outside nixpkgs — every candidate hook was checked and none works — and specifies two overlays: Dockerfile.user for baking into the image (system paths only, BuildKit secrets, host-network caveat) and app-user-init.d/ for start-time work that must run inside the sandbox's egress controls. Devcontainer features are noted as a direction for the multi-project case. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YKma722KMnAX3LcDLUYDQ5
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A design document only,
plans/2026-09-21-file-ownership-and-upgrades.md. Draft for discussion, not scheduled.It inventories every file sandcat writes and the contract each is under (regenerate / create-once / managed region), calls out the accidental fourth category — files
initregenerates but the tool also invites you to edit (settings.json,compose-all.yml,Dockerfile.app) — and proposes:upgradeare reproducible (ships alone, additive);compose.user.yml,Dockerfile.user, a managed key insettings.json) so no generated file is ever user-edited;destroykeepingsettings.local.json, user-settings merge for every agent, generated-file headers.§6 records the template-engine change (
text/templatefor the generated files) as a related step gated on the port's bash-removal and parity-retirement, since it alters template sources the bash tree shares.Independent of the port stack;
plans/is also introduced by #3, same directory, different file, so the two merge cleanly in either order.🤖 Generated with Claude Code
https://claude.ai/code/session_01YKma722KMnAX3LcDLUYDQ5