~ knotless Search/
↑↓ move↵ open⇧↵ all results

chadtmiller.com/knotless

git that lives in your Atmosphere account

knotless.dev
1 collaborator

knotless 0.13.0 Latest 2 packages, 1 image

1
10

A pull opens as a draft, and its author makes it a draft again, from its page

Merged
Merged chadtmiller.com asked to merge into main from chadtmiller.com/knotless:web/pull-draft

What changes

Opening a pull as a draft. The form that opens a pull has Open as draft beside Open pull. A pull opened so is a draft from the start, as knotless pull --draft makes one.

Making a pull a draft again. The merge box's More menu has Convert to draft for the pull's author, beside Retarget. The merge box's draft row already had Ready for review, so a pull now moves both ways from its page. Both write draft on the pull record through editItem, as knotless edit --draft and --ready do. Retarget gets its icon, as menu items have.

Docs and comments say what knotless does, not where it came from. The "as GitHub's does" asides are gone from the design pages, the reviews guide, and the comments these pulls added. What stays names a format a reader relies on: the search words, the eight reactions, CODEOWNERS syntax, and the precedents in packages.md and runner.md.

Why

A pull could be opened as a draft, made one again or marked ready from the CLI and MCP, but on the pages it could only be marked ready. Close and reopen were already there. The draft controls sit where readiness is already shown, so the merge box holds every change of a pull's stage. The pull page has no sidebar for Convert to draft to sit in.

How it was checked

  • The e2e flow that opens a pull from a fork now opens it with Open as draft and reads draft: true back from bob's PDS.
  • A new flow marks that pull ready, converts it to a draft from the More menu, and marks it ready again. Each step is read back on the page and from the PDS.
  • svelte-check passes.
  • The More menu and the open form are pictured below, desktop light and phone dark. The shots check does not draw either state.

Shortcomings

Only a pull's author changes its stage, as the record is theirs. GitHub also lets anyone with write access do it, which needs a record of the maintainer's own.

🤖 Generated with Claude Code

convert-pull-open-desktop-light.png

convert-pull-open-phone-dark.png

open-alice-test-tally-pulls-new-branch-words-expand-1-desktop-light.png

open-alice-test-tally-pulls-new-branch-words-expand-1-phone-dark.png

Approved

This adds Open as draft to the open-pull form and Convert to draft to the merge box's More menu. The menu item is shown only to the pull's author, and only when the pull isn't already a draft. Both go through editItem / createPull with draft, as the CLI does. The docs in collaboration.md are updated, and the e2e flow covers ready → draft → ready, read back from the PDS.

I found nothing that must change. Two things I couldn't confirm. The full diff is mostly the two pulls this one is built on, so I read only the parts this pull adds (MergeBox.svelte, OpenForm.svelte, the new-pull page, and the e2e flow and docs). The web, shots, e2e, docs, lexicons and test checks were still queued or running when I looked. Only check had passed, so wait for the rest. The Shots-moved: settings-labels line comes from the label-dialog work merged in, and I didn't verify it.

Approved

Since my last review the only change is a merge of main into the branch (18a54a1), so the draft work is the same as the version I approved. That work is Open as draft on the open-pull form and Convert to draft in the merge box's More menu. My earlier review asked for nothing to change, and nothing is left open. The check and test workflows pass on this commit. web, shots, e2e and docs were still queued when I looked, so they are unconfirmed. The pull is already in the merge queue, which re-runs the checks on the batch before it lands.

Merged as 5963ad1