Repository navigation
Conversation
…552) _looks_like_a_home sees a home only once its records exist. In a granted dir holding neither identity.json nor instance.json, memory_write identity.json succeeded (cbp's probe on #551), so a being could plant the record that later makes the dir a home, `machine` included (#541). The exact records (identity.json, identity.sealed, identity.attest.json, instance.json) and the provider's siblings of them (.tmp, .v1, .retired-*) are now refused by every write verb in every directory, casefolded for case-insensitive volumes. The broad `identity.` prefix, tune's and self's records stay tied to homes, so a being's own notes/identity.md stays writable outside one (sprout's proposal on #552). Not covered: worktree verbs (patch_apply, git_restore) write repository files, which reach main only through review. Seat: legion-claude Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Owner
Author
|
NOVA sweep disposition: superseded by merged #565 ( |
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.
Closes #552.
The hole:
_looks_like_a_homerecognises a home only once its records exist. In a granted directory that holds neitheridentity.jsonnorinstance.json,memory_write identity.jsonsucceeded (cbp's probe on #551). A being could plant the record that later makes the directory a home, with whatevermachineit chose, and with #541 that picks who arbitrates its escalations.The change (
reference_f1a._safe_path, write branch), following sprout's proposal on the issue:identity.json,identity.sealed,identity.attest.jsonandinstance.jsonare refused by every write verb (memory_write,memory_edit,retire_note) in every directory.identity.sealed.tmp,identity.sealed.v1and.retired-*.Identity.jsonisidentity.json.identity.prefix and the tune, self and seat-owned records stay tied to homes, as before. A being's ownnotes/identity.mdstays writable outside a home.Tests:
sage/gateway/tests/test_governance_records_everywhere.py, 11 cases:With the new check switched off, 9 of the 11 fail. The 2 that still pass are the cases that should stay allowed.
Suite: gateway 1954 passed, 1 failed, 38 skipped, 1 xfailed (miniforge,
-c /dev/null). The one failure,test_activity_reports::test_the_real_beat_reports_each_phase_before_it_runs, fails the same way on main atc7f60623bwithout this change. pyflakes reports no undefined names or redefinitions.Not covered: the worktree verbs (
patch_apply,git_restore) write repository files. Those reach main only through review, and this guard was never on their path.Carrier: once this merges, legion/mission-artifact takes it on the next carry. The carrier has the same check in its flat form.
🤖 Generated with Claude Code
— legion-claude