fix: publish/sync merge generated files mechanically and carry non-overlapping uncommitted work through a rebase (#180)
Overlap only in kb/index.md, kb/log.md, kb/provenance.md and kb/**/INDEX.md no longer fails a reconcile or reaches the rebase-review gate: the log keeps both sides' entries, the catalog and provenance are regenerated. Uncommitted work no incoming commit touches rides through the rebase via --autostash; the working tree is backed up under refs/wikitool/reconcile-backup first. is_generated is narrowed to kb/. Files changed: - CHANGES.md - VERSION - instructions/gates.md - instructions/session-setup.md - tools/CONTRACT.md - tools/chemenu/commands/git_publish.py - tools/chemenu/commands/index_build.py - tools/chemenu/commands/provenance_cmd.py - tools/chemenu/tests/test_git_publish.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
40839d956d
commit
d4638bacde
9 files changed
+907
-58
No files matched your search
@@ -85,7 +85,11 @@ than one machine or session writes to. Running `sync` first shrinks that window
|
||||
the session instead of discovering the drift only at the very end.
|
||||
|
||||
`sync` fetches the remote and fast-forwards or rebases automatically when that is safe; it
|
||||
never commits and never pushes. **Exit 42 (rebase-review)?** Same as any exit 42 - read the
|
||||
never commits and never pushes. Files `wikitool` generates are never a reason to stop: when the
|
||||
catalog or `kb/log.md` changed on both sides, `sync` keeps both sides' log entries and
|
||||
regenerates the catalog and `kb/provenance.md`, which it leaves as an uncommitted change for the
|
||||
next `publish`. Uncommitted work that the incoming commits do not touch stays where it is.
|
||||
**Exit 42 (rebase-review)?** Same as any exit 42 - read the
|
||||
diff it prints, judge whether it conflicts with what you are about to do, summarize that to the
|
||||
user, then `tools/wikitool sync --confirm-rebase <token>` before continuing. See
|
||||
[gates.md](gates.md).
|
||||
|
||||
Reference in new issue
Block a user