Skip to content

tulipcc-pin: fold the refreshed refdocs/amy snapshot into the bump commit#957

Merged
bwhitman merged 1 commit into
mainfrom
pin-workflow-refdocs
Jul 20, 2026
Merged

tulipcc-pin: fold the refreshed refdocs/amy snapshot into the bump commit#957
bwhitman merged 1 commit into
mainfrom
pin-workflow-refdocs

Conversation

@bwhitman

Copy link
Copy Markdown
Collaborator

Problem

Every auto-opened tulipcc pin PR starts red on tulipcc's refdocs-fresh check (e.g. shorepine/tulipcc#1215): moving the amy gitlink stales tulip/server/refdocs/amy/_VENDORED_FROM.txt — it stamps the source SHA — and this workflow never regenerated the snapshot, so a human had to push a fix-up commit to every pin PR.

Fix

New step between gather and pin:

  • Clones shorepine/tulipcc@main (trusted; still never checks out or executes this repo's PR code — the pull_request_target safety note in the header holds) and runs its tulip/server/sync_amy_docs.py --sha <merged-sha>. With no submodule in the shallow clone, the script sources doc content from GitHub raw at that SHA.
  • Emits the changed snapshot files as a git diff --cached --name-status list; the Git Data API step now includes them in the bump commit's tree as inline blobs (or sha: null deletions) alongside the gitlink.
  • Best-effort: any failure (e.g. tulipcc@main's script predating --sha) leaves the list empty and the pin PR opens exactly as today — merge order between this and the companion tulipcc PR doesn't matter.

Companion tulipcc PR (adds the --sha flag): shorepine/tulipcc#1216

Testing

  • YAML validates; simulated the new step locally against a fresh shallow tulipcc clone: script exits 0 sourcing from GitHub raw, and the name-status output is the exact tab-separated format the tree-builder parses.
  • End-to-end validation happens on the next real amy merge (this PR touches the workflow's own path filter, so merging it will itself open a pin PR).

🤖 Generated with Claude Code

Every auto-opened tulipcc pin PR was starting red on tulipcc's
refdocs-fresh check: moving the amy gitlink stales
tulip/server/refdocs/amy/_VENDORED_FROM.txt (it stamps the source
SHA), and the workflow never regenerated the snapshot.

Add a step that clones shorepine/tulipcc@main (trusted -- never this
PR's code), runs its sync_amy_docs.py --sha <merged-sha> (falls back
to GitHub raw for doc content), and hands the changed files to the
Git Data API step, which now includes them as blobs (or deletions)
in the same tree as the gitlink bump. Best-effort: any failure (e.g.
a tulipcc@main script without --sha yet) leaves the changes list
empty and the pin PR opens exactly as before.

Companion tulipcc PR adds the --sha flag to sync_amy_docs.py.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@bwhitman
bwhitman merged commit 2793cd3 into main Jul 20, 2026
11 checks passed
@bwhitman

Copy link
Copy Markdown
Collaborator Author

⛓️ tulipcc integration PR opened

This merge was pinned into tulipcc for full-system CI: shorepine/tulipcc#1217

Test it there and merge that PR to move tulipcc onto this AMY.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant