Merge pull request 'feat: propose-work — push, open the PR, and move the issue, in one command' (#21) from feat/propose-work into main

Reviewed-on: #21
This commit is contained in:
2026-09-12 14:30:05 +00:00
3 changed files with 330 additions and 4 deletions

View File

@@ -363,10 +363,12 @@ docker/port/sylph-port
Not blockers for Phase 7, but the workflow is not finished without them:
* **`propose-work`**, superseding `push-work` — push the branch *and* open the PR
with `Closes #N` *and* set the label, in one step. Today `push-work` does the
first third; the other two thirds being manual is how they get skipped. Its
existing refusals stay: no `main`, no force-push.
* ~~**`propose-work`**~~ — done, as `docker/{decoder,port}/bin/propose-work`:
pushes through `push-work` (so its refusals stay in one place — no `main`, no
force-push), opens the PR with `Closes #N` taken from the branch name, and moves
the issue to `state/needs-human`. What is still missing is an *end-to-end* run:
everything before the network calls is exercised, the `POST`s are not, because
only the agent box holds a token that can make them. Its first real use is its test.
* **an attachment uploader** — the MCP exposes `attachment_read` only, so putting
a screenshot on an issue needs a direct `POST /repos/{owner}/{repo}/issues/{index}/assets`.
* ~~**`gitea-verify`**~~ — done, as `tools/gitea-protect --verify`: asserts every