Repository navigation
v0.5.1
-
Upstream sync: bump pin
64903f9→3bc038d(upstream v0.5.1). A patch release, and only two of its twenty-two commits touch mapped paths. Every prompt source and every lifecycle module this port maps is byte-identical to 0.5.0 — checked file by file rather than inferred from the commit list. Out of scope: the broad dependency modernization (#810/#783/#808/#784),.envvalue unescaping (#794), both visualizer fixes (#796/#806), the debug diagnostics stack panel (#832), openai-compatible stream chunks and top-level model-request rendering (#817/#846 — provider and stream plumbing this port has no runtime for), MCP connector env resolution (#838), the release-workflow fix (#851), upstream's own wiki updates (#798/#805/#814/#816/#825/#843), and the version-packages chore (#852). -
A CLAUDE.md that only imports AGENTS.md is now left alone upstream too, and this port's rule narrows to match (#841) —
skills/openwiki/SKILL.mdStep 0. This port has carried an[adapted]exception here since before upstream had an opinion: a CLAUDE.md that pulls in AGENTS.md needs no OpenWiki pointer block, because the import already does the pointer's job. Upstream now agrees, with a stricter condition — the file's entire trimmed content must be exactly@AGENTS.md, and then it is not written at all, not even to normalize a trailing newline. So the port drops its broader "an@AGENTS.mdline anywhere counts" reading and follows upstream: a CLAUDE.md carrying the import plus other content gets the managed pointer block appended like any other file. That is a real behavior change for exactly one shape of file, and it is the right trade — the block is marker-managed and idempotent, so the redundancy costs nothing, while divergence would cost byte-identical setup against the native CLI. (The narrow case is not hypothetical: this repository's ownCLAUDE.mdis that one line.) -
Upstream's auto-merge CI recipe is ported, with the one gate it needs here and does not need there (#842) —
references/automation.md§3. Upstream added a second GitHub Actions example that requests GitHub auto-merge on the docs PR after a successful run, plus the README setup prose that makes it safe (allow auto-merge, protect the branch, and a dedicatedOPENWIKI_PR_TOKEN— because a PR opened with the defaultGITHUB_TOKENdoes not start mostpull_requestworkflows, so the checks meant to gate the merge may never run). All of that is ported. The adaptation is the gate, and checking upstream's exit path turned it from a port workaround into a real fix: upstream arms auto-merge on the job's outcome, which catches a hard failure but not a finalized partial run — a skipped page or mid-run source drift finishes the run, soopenwiki code --updateexits 0 while writingstatus: "interrupted"into its own metadata, because the CLI maps a successful run straight to exit 0 and never reads that status back.claude -pdoes the same. So the hole is upstream's too, not this port's, and unattended it means a partial wiki merges itself while its rewoundgitHeadsilently becomes the baseline. So the port's recipe reads the real signal SKILL.md Step 6 writes,openwiki/.last-update.json'sstatus, and arms auto-merge only for a run that finished what it planned; anything it cannot read counts as not-complete, and the disable arm is widened to clear a pending auto-merge on a partial run. Two smaller deltas are recorded in place: upstream'sExclude workflow changesstep has nothing to do here (this port never writes CI files andadd-pathsalready excludes them — and auto-merging an executable workflow file is precisely what an unattended job must not do), and upstream's own two examples disagree on thecreate-pull-requestpin, which the port mirrors rather than silently unifying. -
The pin is deliberately the tag, not upstream HEAD, and one pending commit is worth knowing about:
cf0700f(#777) replaces the CLAUDE.md block'sSee [AGENTS.md](AGENTS.md)link with an@AGENTS.mdimport, having found that Claude Code expands only its own@pathsyntax — so the pointer upstream has shipped since 0.3.3 reached Codex and never reached the host it was written for. It lands in the next release andUPSTREAM.md's next-sync note carries the details, including why it does not collide with #841.