tools: export run/upload collect - Fehlertexte im Kommandovertrag nennen die Backup-Ordner und die Laufzeit-Ablehnung von Backup- und Exportdaten (#216); 10.1.0-beta.17
Files changed: - CHANGES.md - VERSION - docs/reference/commands/exports.md - docs/reference/commands/raw-material-and-uploads.md - tools/CONTRACT.md - tools/chemenu/commands/export_cmd.py - tools/chemenu/commands/upload_cmd.py Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
This commit is contained in:
1 parent
02bf3b0403
commit
77fb427efd
7 files changed
+21
-17
No files matched your search
+2
-1
@@ -14,7 +14,7 @@ place only: `instructions/dev/version-parts.md` § The candidate model.
|
||||
|
||||
---
|
||||
|
||||
## 10.1.0-beta.16 - 2026-10-16 - Export- und Eingangsordner dürfen im Backup-Ziel neben git/ und den Maschinenordnern liegen: die Überschneidungsregel gilt nur noch für <ziel>/git und den eigenen Maschinenordner, upload collect und export run weisen Ordner in oder unter Backup-/Export-Daten fremder Maschinen zur Laufzeit ab
|
||||
## 10.1.0-beta.17 - 2026-10-16 - export run/upload collect: Fehlertexte im Kommandovertrag nennen die Backup-Ordner statt backup.target und die Laufzeit-Ablehnung von Backup- und Exportdaten (#216)
|
||||
|
||||
**Author:** Torben Nehmer
|
||||
|
||||
@@ -38,6 +38,7 @@ place only: `instructions/dev/version-parts.md` § The candidate model.
|
||||
- read-page-images: liest der Harness mit Subagenten, öffnet die Ingest-Sitzung die Seitenbilder gar nicht selbst, auch nicht zur Kontrolle (#234)
|
||||
- wiki-ingest step 1 sends the session to read-page-images.md before the discussion, so up to the threshold the page images are no question for the user
|
||||
- gates.md/session-setup.md: die Regel für eine neue Session-Id steht nur noch in gates.md, mit dem ausdrücklich gewünschten weiteren Ingest-Lauf als zweiter Grenze neben plan.md (#219)
|
||||
- export run/upload collect: Fehlertexte im Kommandovertrag nennen die Backup-Ordner statt backup.target und die Laufzeit-Ablehnung von Backup- und Exportdaten (#216)
|
||||
<!-- /wikitool:bumps -->
|
||||
|
||||
### Konverter-Tests gegen echte Dokumente im privaten Repository
|
||||
|
||||
@@ -130,9 +130,9 @@ tools/wikitool export run work-notes
|
||||
**Exit codes**
|
||||
|
||||
- `0` - success
|
||||
- `1` - No `export` section, an unknown target name, or a broken section (a predicate that does not parse, a path inside the instance or in the way of another target, an `intake` folder or the backup target)
|
||||
- `1` - No `export` section, an unknown target name, or a broken section (a predicate that does not parse, a path inside the instance or in the way of another target, an `intake` folder or a folder the backup writes into: `<backup.target>/git` or this machine's folder)
|
||||
- `1` - `kb/` or `types/` has uncommitted changes, the instance is not a git checkout, or a page under `kb/` has unreadable frontmatter
|
||||
- `1` - A target failed: a foreign folder, a file changed in the target, an empty selection, an unknown field, a converter that did not exit 0
|
||||
- `1` - A target failed: a foreign folder, a folder in backup data, a file changed in the target, an empty selection, an unknown field, a converter that did not exit 0
|
||||
|
||||
**See also**
|
||||
|
||||
|
||||
@@ -548,7 +548,7 @@ tools/wikitool upload collect onedrive
|
||||
|
||||
- `0` - success
|
||||
- `1` - Unknown channel name, an `mcp` channel as argument, a malformed `intake` section, or an `mcp-upload/` that still holds submissions
|
||||
- `1` - A channel or a file failed (folder missing, program exited non-zero, timed out or could not be started, a source that could not be removed)
|
||||
- `1` - A channel or a file failed (folder missing, a folder in backup or export data, program exited non-zero, timed out or could not be started, a source that could not be removed)
|
||||
|
||||
**See also**
|
||||
|
||||
|
||||
+6
-6
@@ -1896,12 +1896,12 @@ Pull material from the configured `folder` and `command` intake channels into th
|
||||
|
||||
- 0 success
|
||||
- 1 Unknown channel name, an `mcp` channel as argument, a malformed `intake` section, or an `mcp-upload/` that still holds submissions
|
||||
- 1 A channel or a file failed (folder missing, program exited non-zero, timed out or could not be started, a source that could not be removed)
|
||||
- 1 A channel or a file failed (folder missing, a folder in backup or export data, program exited non-zero, timed out or could not be started, a source that could not be removed)
|
||||
|
||||
**ON FAILURE**
|
||||
|
||||
- Unknown channel name, an `mcp` channel as argument, a malformed `intake` section, or an `mcp-upload/` that still holds submissions -> Fix the named cause and retry once
|
||||
- A channel or a file failed (folder missing, program exited non-zero, timed out or could not be started, a source that could not be removed) -> Not fixed by retrying unchanged - read the per-channel lines, fix the channel's folder or program, then run `collect <channel>` for that channel only
|
||||
- A channel or a file failed (folder missing, a folder in backup or export data, program exited non-zero, timed out or could not be started, a source that could not be removed) -> Not fixed by retrying unchanged - read the per-channel lines, fix the channel's folder or program, then run `collect <channel>` for that channel only. A folder in backup or export data is the user's to move; never remove a manifest to make it pass
|
||||
|
||||
**NEVER**
|
||||
|
||||
@@ -2439,15 +2439,15 @@ Write the derived, read-only reading copy of `kb/` into the folders the `export`
|
||||
**EXIT STATUS**
|
||||
|
||||
- 0 success
|
||||
- 1 No `export` section, an unknown target name, or a broken section (a predicate that does not parse, a path inside the instance or in the way of another target, an `intake` folder or the backup target)
|
||||
- 1 No `export` section, an unknown target name, or a broken section (a predicate that does not parse, a path inside the instance or in the way of another target, an `intake` folder or a folder the backup writes into: `<backup.target>/git` or this machine's folder)
|
||||
- 1 `kb/` or `types/` has uncommitted changes, the instance is not a git checkout, or a page under `kb/` has unreadable frontmatter
|
||||
- 1 A target failed: a foreign folder, a file changed in the target, an empty selection, an unknown field, a converter that did not exit 0
|
||||
- 1 A target failed: a foreign folder, a folder in backup data, a file changed in the target, an empty selection, an unknown field, a converter that did not exit 0
|
||||
|
||||
**ON FAILURE**
|
||||
|
||||
- No `export` section, an unknown target name, or a broken section (a predicate that does not parse, a path inside the instance or in the way of another target, an `intake` folder or the backup target) -> Show the message to the user; the section is theirs to write by hand, never yours
|
||||
- No `export` section, an unknown target name, or a broken section (a predicate that does not parse, a path inside the instance or in the way of another target, an `intake` folder or a folder the backup writes into: `<backup.target>/git` or this machine's folder) -> Show the message to the user; the section is theirs to write by hand, never yours
|
||||
- `kb/` or `types/` has uncommitted changes, the instance is not a git checkout, or a page under `kb/` has unreadable frontmatter -> Fix the named pages, or publish the changes first, then retry once
|
||||
- A target failed: a foreign folder, a file changed in the target, an empty selection, an unknown field, a converter that did not exit 0 -> Show the target's reason to the user; the other targets were still served. Never delete or edit files in a target folder to make a run pass
|
||||
- A target failed: a foreign folder, a folder in backup data, a file changed in the target, an empty selection, an unknown field, a converter that did not exit 0 -> Show the target's reason to the user; the other targets were still served. Never delete or edit files in a target folder to make a run pass
|
||||
|
||||
**NEVER**
|
||||
|
||||
|
||||
@@ -506,7 +506,8 @@ def export_guidelines_command(
|
||||
cli_contract.Failure(
|
||||
cause="No `export` section, an unknown target name, or a broken section (a predicate "
|
||||
"that does not parse, a path inside the instance or in the way of another target, an "
|
||||
"`intake` folder or the backup target)",
|
||||
"`intake` folder or a folder the backup writes into: `<backup.target>/git` or this "
|
||||
"machine's folder)",
|
||||
reaction="Show the message to the user; the section is theirs to write by hand, never "
|
||||
"yours",
|
||||
),
|
||||
@@ -516,8 +517,8 @@ def export_guidelines_command(
|
||||
reaction="Fix the named pages, or publish the changes first, then retry once",
|
||||
),
|
||||
cli_contract.Failure(
|
||||
cause="A target failed: a foreign folder, a file changed in the target, an empty "
|
||||
"selection, an unknown field, a converter that did not exit 0",
|
||||
cause="A target failed: a foreign folder, a folder in backup data, a file changed in "
|
||||
"the target, an empty selection, an unknown field, a converter that did not exit 0",
|
||||
reaction="Show the target's reason to the user; the other targets were still served. "
|
||||
"Never delete or edit files in a target folder to make a run pass",
|
||||
),
|
||||
|
||||
@@ -341,10 +341,12 @@ def _result_lines(result: collect_module.ChannelResult) -> list[str]:
|
||||
reaction="Fix the named cause and retry once",
|
||||
),
|
||||
cli_contract.Failure(
|
||||
cause="A channel or a file failed (folder missing, program exited non-zero, timed out or "
|
||||
"could not be started, a source that could not be removed)",
|
||||
cause="A channel or a file failed (folder missing, a folder in backup or export data, "
|
||||
"program exited non-zero, timed out or could not be started, a source that could not be "
|
||||
"removed)",
|
||||
reaction="Not fixed by retrying unchanged - read the per-channel lines, fix the channel's "
|
||||
"folder or program, then run `collect <channel>` for that channel only",
|
||||
"folder or program, then run `collect <channel>` for that channel only. A folder in "
|
||||
"backup or export data is the user's to move; never remove a manifest to make it pass",
|
||||
),
|
||||
),
|
||||
examples=(
|
||||
|
||||
Reference in new issue
Block a user