Skip to content

chore(drafts): publish.sh only uploads - #8441

Queued
kixelated wants to merge 3 commits into
mainfrom
quest/m1/drafts-publish-trim
Queued

kixelated wants to merge 3 commits into
mainfrom
quest/m1/drafts-publish-trim

Conversation

@kixelated

@kixelated kixelated commented Nov 10, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

sh/drafts/publish.sh now does two things: it builds the XML, rewriting -latest to the version, and uploads it to the datatracker. The changelog heading rewriting is gone. sh/drafts/publish.test.sh (653 lines) is deleted, and just drafts check no longer runs it. publish.sh refuses to upload while a heading still ends in (in progress), and drafts/README.md says to close that heading by hand before publishing and open the next section after. This PR finishes quest/m1/drafts-publish-trim.md.

Choices made without asking:

  • Deleted the test entirely instead of keeping a fake-curl upload test. The upload is now a single curl --fail-with-body call, so a non-2xx response already exits nonzero, and a mock would only test curl again.
  • A failed submission is now caught by --fail-with-body instead of a manual case on the HTTP code. The response body is still printed.

Public API: none. Wire: none.

Caused by

No single PR. This removes automation that is no longer worth its cost (deletion audit).

Checks

  • just check: pass (exit 0). shellcheck on sh/drafts/publish.sh, quest check: pass.

Models

Size: S
Implementer: Claude Code, claude-opus-5-5, low effort
Implementer: Claude Code, claude-opus-5-5, low effort (iterate, S)

(Written by Opus 5.5 with low)

🤖 Generated with Claude Code

Review

Rewritten by quest review after each round.

  • Reviewer: Codex, gpt-6.1-sol, medium effort
  • Session: 01a1c621-2e61-7521-a6f8-cd33282275ff, round 1
  • Head: fa72788
  • Base: origin/main at cd560bd
  • Score: 9/10, Source inspection found no actionable defects, but readiness remains unverified by builds or tests.
  • Findings: none

kixelated and others added 2 commits November 10, 2026 01:17
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated kixelated changed the title Draft publishing keeps the upload and drops changelog rewriting chore(drafts): publish.sh only uploads Nov 10, 2026
@kixelated
kixelated marked this pull request as ready for review November 10, 2026 15:28

@kixelated kixelated left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated review by review (OpenAI)

Reviewed the complete patch at 1cc420e and the remaining draft check/publish entrypoints. No actionable findings.

Direction: removing changelog rewriting directly implements the planned simplification. Version/source validation and pipeline failure propagation remain, curl reports HTTP 4xx/5xx failures with their response bodies, and source editing is explicitly manual. The separate draft XML validation check remains in place.

Verification limits: GitHub-only static review. I did not execute shell checks, build drafts, or submit anything to the datatracker; reported passing checks were not independently verified.

@coderabbitai

coderabbitai Bot commented Nov 10, 2026 •

Copy link
Copy Markdown
Contributor

Explain Change →

No actionable comments were generated in the recent review.

Walkthrough

The publishing script now validates the version and draft file, generates XML, and submits it without changing the source or changelog. Changelog headings must be updated manually. The publishing test script and draft-publishing quest materials were removed. The check recipe now runs only check.sh.

Merge Risk: Minimal · up to 1cc42

This change narrows the draft publishing script to building and uploading the XML, and changelog headings are now updated by hand as the README documents. I found no concrete risk to merging; the main trade-off is the intentional removal of the publish test coverage.

Pre-merge checks: Passed 5

Check name Status Explanation
Title check Passed The title clearly summarizes the main change: publish.sh now only builds and uploads drafts.
Docstring Coverage Passed No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentat…
Linked Issues check Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check Passed Check skipped because no linked issues were found for this pull request.
Description check Passed The description covers the publishing changes and test removal. However, its claim that publish.sh refuses uploads while a changelog heading is marked “(in progress)” conflicts with the file summary, …
Full details: Docstring Coverage

Explanation

No eligible functions found in the changed files. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff with cyclomatic complexity of at least 2. Documentation-only edits and deletions within surviving functions are included; unchanged diff context and fully deleted functions are excluded. Analyzed 0 functions across 1 files. (2 skipped: 2 unsupported.)

Full details: Description check

Explanation

The description covers the publishing changes and test removal. However, its claim that publish.sh refuses uploads while a changelog heading is marked “(in progress)” conflicts with the file summary, which says changelog parsing was removed.

Finishing Touches

Simplify code

  • Commit to this branch
  • Create a new PR
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

Recent review info

Run configuration

  • Source mode: Auto
  • Repository: Unavailable
  • Branch: Unavailable
  • File: No configuration file from this repository applied
  • Commit: Unavailable
  • Layers: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 22ff22a9-93d5-42d7-b575-0ca2ea05db62
Commits

Reviewing files that changed from the base of the PR and between cd560bd and 1cc420e.

Files selected for processing: 6

  • drafts/README.md
  • drafts/justfile
  • quest/m1/README.md
  • quest/m1/drafts-publish-trim.md
  • sh/drafts/publish.sh
  • sh/drafts/publish.test.sh
Files with no reviewable changes: 3

  • quest/m1/drafts-publish-trim.md
  • sh/drafts/publish.test.sh
  • quest/m1/README.md

Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 1 remain after this review.

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Important

The submit is now verbatim, so the (in progress) heading the old render path used to close will be published as-is by five drafts on their next publish.

Reviewed changes

  • publish.sh shrinks to build-and-upload — open_next_section (heading rewriting, render/write modes, atomic rename) and the 200/201 case are gone; the source is sed-rewritten and piped straight to kramdown-rfc, then POSTed with curl --fail-with-body.
  • publish.test.sh (653 lines) is deleted — just drafts check now runs only check.sh, so publish.sh has no test.
  • drafts/README.md documents the manual changelog step — publishing no longer edits the source.
  • Quest completion — quest/m1/drafts-publish-trim.md and its quest/m1/README.md entry are removed; no stale references to the deleted test remain.

Pullfrog  | Fix all ➔ | Fix 👍s ➔ | View workflow run | Using deepseek-v4.1-flash-1017 (free via Pullfrog for OSS) | 𝕏

Comment thread sh/drafts/publish.sh Resolved
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@kixelated kixelated left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated review by review (OpenAI)

Reviewed head fa72788.

Compared with 1cc420e. No new actionable findings. The new guard catches the existing '(in progress)' changelog headings before XML generation or submission, and the README now requires closing the current heading before uploading and opening the next one afterwards. Direction: retain the explicit manual workflow rather than reintroducing source rewriting.

Verification limits: GitHub-only static review of the update and relevant surrounding source and prior discussion. No builds, tests, deployment, or publishing operations run.

@pullfrog pullfrog Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ No new issues found.

Reviewed changes

  • Added an (in progress) pre-upload guard — publish.sh now scans the source for any heading still ending in (in progress), prints the offending lines, and exits before building or submitting XML, so the five drafts that still carry ## Since <name>-00 (in progress) cannot be uploaded with that suffix.
  • Rewrote the publish section of drafts/README.md — it now says to close the submitted version's changelog heading before uploading and to open the next version's section only after the upload, matching the guard's ordering.

The prior review's inline concern about the verbatim upload is addressed by this guard and the README ordering, so that thread is resolved.

Pullfrog  | View workflow run | Using deepseek-v4.1-flash-1017 (free via Pullfrog for OSS) | 𝕏

@kixelated
kixelated added this pull request to the merge queue Nov 10, 2026
Any commits made after this event will not be merged.

This branch has not been deployed

No deployments
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