feat: Publish-Remote Gate und die Anleitung fuer eine private Instanz (2.2.0)
Files changed: - .gitignore - AGENTS.md - CHANGES.md - VERSION - instructions/gates.md - instructions/private-instance.md - tools/chemenu/commands/doctor.py - tools/chemenu/commands/git_publish.py - tools/chemenu/config.py - tools/chemenu/tests/test_git_publish.py
This commit is contained in:
@@ -20,7 +20,9 @@ tools/wikitool instructions sync
|
||||
Full procedure, including the tool environment: [instructions/bootstrap.md](instructions/bootstrap.md).
|
||||
Setting up a brand-new, empty instance instead of cloning this one: `tools/wikitool dist export`
|
||||
and [instructions/setup-instance.md](instructions/setup-instance.md) - see
|
||||
[INSTALL.md](INSTALL.md).
|
||||
[INSTALL.md](INSTALL.md). A *private* instance that keeps taking stack updates from a public
|
||||
upstream is a third shape, with a safeguard the other two do not need:
|
||||
[instructions/private-instance.md](instructions/private-instance.md).
|
||||
|
||||
## Invariants
|
||||
|
||||
@@ -177,16 +179,19 @@ tools/wikitool search --field entity_type=system --field 'confidence<0.6'
|
||||
|
||||
## Gates
|
||||
|
||||
Two limits are enforced in code rather than by instruction, because a prompt-level limit is
|
||||
Three limits are enforced in code rather than by instruction, because a prompt-level limit is
|
||||
one an agent can talk itself past.
|
||||
|
||||
- **Mass-Update Gate.** `publish` exits **42** on a change touching too many files, printing
|
||||
the file list and the `--confirm <token>` line that publishes it once the user approves. The
|
||||
threshold and the rule live in [instructions/gates.md](instructions/gates.md).
|
||||
- **Publish-Remote Gate.** `publish` exits **42** on a push to a URL this checkout has not
|
||||
declared in `.wikitool-remotes.json`. It has no token and no flag: the way past it is a
|
||||
deliberate edit by the user, never by an agent.
|
||||
- **Iteration Budget Gate / Loop-Breaker.** Past 60 `wikitool` calls in a session, or after 3
|
||||
identical calls in a row, further calls are refused.
|
||||
|
||||
Both refuse with exit 1. **Do not retry, and do not open the gate.** Stop, summarize the
|
||||
The last refuses with exit 1. **Do not retry, and do not open a gate.** Stop, summarize the
|
||||
situation to the user, and get explicit approval. The full procedure - including why
|
||||
`budget reset` is not the escape hatch - is [instructions/gates.md](instructions/gates.md).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user