Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

vole
Clone

Read only, no credentials:

https://rodent.software/vole.git

Write over SSH with a registered key:

git clone ssh://git@rodent.software:2222/vole.git

A free and open-source forge that lives in your Git repo.

#181

Edit issue and change descriptions in the browser

merged · by keenan 6d ago · merged into main at a4e7a99a by keenan 6d ago

keenan opened this 6d ago

Why

The browser could file, discuss, triage, close, and reopen an issue or a change, but it could not correct what one of them said. An issue needed vole issue edit, and a change request’s title or description could not be corrected after it was opened on either surface. Closes #180.

What changed

  • Added GET/POST /r/{name}/issues/{id}/edit and the matching change-request route, each with its own page.
  • Both pages are offered to the item’s author and to a maintainer. The GET form and the POST handler ask the same capability, and a signed-in stranger gets a 403.
  • Issue edits use the existing metadata.UpdateIssue. Change edits use a new metadata.SetRequestDetails, which validates the whole record and is not limited to an open request because the prose is not what an approval names.
  • The writes are audited as web.issue.edit and web.request.edit, and a change edit re-checks the request tree like the other change writes.
  • The item page gained an Edit action. Discussion, labels, assignees, checks, and approvals are untouched.
  • Documented the browser edit in the issue and change-request docs.

Verification

  • go test -tags libsqlite3,sqlite_fts5 ./metadata ./server/web
  • go test -tags libsqlite3,sqlite_fts5 ./server -run '^(TestIssueCanBeClosedAndReopenedInTheBrowser|TestChangeCanBeDiscussedAndClosedInTheBrowser|TestNewIssueAndChangePages|TestIssueAndChangeDetailsCanBeEditedInTheBrowser)$'
  • go vet -tags libsqlite3,sqlite_fts5 ./metadata ./server/web ./server
  • vole workflow check
  • vole workflow run verify

Discussion (0)

No discussion yet.