stack: Upgrade-Pfad bekommt eine eigene manual-Instruktion, INSTALL.md verweist darauf (#108)
Files changed: - CHANGES.md - INSTALL.md - VERSION - instructions/session-setup.md - instructions/upgrade-instance.md - tools/CONTRACT.md - tools/chemenu/commands/dist_cmd.py - tools/chemenu/tests/test_dist_upgrade.py
This commit is contained in:
1 parent
f3c80747a5
commit
504149c7c4
8 files changed
+359
-69
No files matched your search
@@ -1045,8 +1045,13 @@ def run_upgrade(
|
||||
summary += (
|
||||
f" {len(migration_chain)} migration(s) now outstanding - run `wikitool migrate status`."
|
||||
)
|
||||
# One pointer rather than a second copy of the order: the steps after the
|
||||
# swap live in instructions/upgrade-instance.md, which ships with every
|
||||
# instance. Naming the resume *command* rather than a step number keeps this
|
||||
# line correct when that file's numbering moves.
|
||||
summary += (
|
||||
" Nothing was committed. Now run, in order: `wikitool instructions sync`, `doctor`, "
|
||||
"`docs verify`, `instructions verify`, `lint` - then restart the agent session."
|
||||
" Nothing was committed and nothing is verified yet."
|
||||
" `instructions/upgrade-instance.md` carries the order for everything that follows"
|
||||
" and resumes at `wikitool instructions sync`."
|
||||
)
|
||||
success(summary)
|
||||
@@ -192,6 +192,24 @@ def test_unchanged_and_new_files_are_written_silently(instance, tmp_path):
|
||||
assert stamp["files"]["types/entity.md"] == _digest("new\n")
|
||||
|
||||
|
||||
def test_closing_report_points_at_the_upgrade_instruction(instance, tmp_path, capsys):
|
||||
"""Everything after the swap has exactly one written order, and it is not
|
||||
this line: the report names the instruction that carries it and the command
|
||||
the run resumes at, rather than a second copy of the list that drifts
|
||||
(AGENTS.md invariant 8). A run that reads only this output must still be
|
||||
able to find the rest."""
|
||||
release = _release(
|
||||
tmp_path, "release", "1.1.0",
|
||||
{"AGENTS.md": "core\n", "tools/wikitool": "#!/bin/sh\n"},
|
||||
)
|
||||
|
||||
dist_cmd.run_upgrade(release)
|
||||
|
||||
out = " ".join(capsys.readouterr().out.split()) # rich wraps; rejoin first
|
||||
assert "instructions/upgrade-instance.md" in out
|
||||
assert "instructions sync" in out
|
||||
|
||||
|
||||
@pytest.mark.parametrize("preserved", [".wikitool-kb.json", "CHANGES.md", "kb/log.md", "raw/notes/.gitkeep"])
|
||||
def test_seeded_once_paths_are_never_written_even_if_the_release_stamp_lists_them(
|
||||
instance, tmp_path, preserved
|
||||
|
||||
Reference in new issue
Block a user