raw accept: Stem-Eindeutigkeit im Typverzeichnis erzwingen, --replaces als einziger Weg daran vorbei (schliesst #64)
CI / verify (push) Successful in 55s
Release / release (push) Successful in 35s

Files changed:
- CHANGES.md
- VERSION
- instructions/wiki-ingest/SKILL.md
- raw/CONTRACT.md
- tools/CONTRACT.md
- tools/chemenu/commands/raw_cmd.py
- tools/chemenu/tests/test_raw_cmd.py
This commit is contained in:
2026-09-05 08:51:41 +02:00
parent 36d2128f29
commit 0b3c496fff
7 changed files with 454 additions and 7 deletions
+8
View File
@@ -30,6 +30,14 @@ pages should never have cost the concept contract. Field-level requirements alwa
in the same call, so they land bundled together rather than as two independent promotions. A
file already in `raw/` skips this step entirely.
**If this refuses because the name is already claimed** (a file stem or a bundle directory
already occupies it at `raw/<type>/` level, Gitea #64), that is not this session's call to
make: whether the incoming file is a later edition of the existing source or a second,
separate one is a judgment about the world, and the command's message names both routes -
`--replaces` and renaming in `incoming/` - without recommending either. Show the message to
the human and wait, the same way a session halts at an exit-42 gate (AGENTS.md invariant 6),
even though this refusal is a plain exit 1, not a gate.
2. **Read the source.** Read the file completely; if it is binary or an image, note its
presence and what it shows.