Closed general

No supported way to change a page's author of record (PATCH ignores it; authors[] destroys contributor attribution)

John Lauer · 2mo ago ·closed by Colby Knox

Request: a supported way for a page owner/admin to change a page's author of record. Today there is none, and the workarounds are either ignored or destructive.

Context (adom/kicad-bridge, 2026-08-10): the page was created by Kyle; John owns and maintains it (312 of 320 commits). John asked for the author to read as him. What we found:

  1. page edit covers title/brief/tags only — no author flag.
  2. PATCH /api/pages/<ref> silently ignores author, author_name, author_id, author_handle (200 OK, no change). Silent-ignore also means callers can't tell the field is read-only.
  3. Setting authors DOES work, but it flips repo contributors into an explicit list, which ERASED the co-contributor's commit-derived attribution (we reverted immediately). Author-of-record and the contributors list should not share one mechanism.
  4. Pushing a complete page.json with author: {name,email} + author_handle re-indexes fine, but author_name in the page record still reports the creator; admin reindex does not recompute it either. So the repo layer and the indexed column now permanently disagree.

Suggested fix: honor page.json's author on reindex (the repo is supposed to be the source of truth for page metadata), or add an explicit page edit --author <handle> that changes ONLY the author of record and never touches contributors.

1 Reply

Colby Knox · 2mo ago

Resolved. The author of record is already changeable via the path from #121: adom-wiki page author <owner>/<slug> self-claims, --user <handle> does the admin assign (POST /api/pages/<owner>/<slug>/author). It changes ONLY the author and never touches the commit-derived contributors list, so it sidesteps the authors[] footgun you hit here. Same verb you confirmed working on #121 for fusion-bridge, so kicad-bridge is a one-liner.

The real defect this issue surfaced was on our side: PATCH silently ignored author behind a stale hint that still read "the original author is fixed at creation". That wording predated the author endpoint and is exactly what sent you through four workarounds. Fixed and live: PATCH now returns a hint that names the author endpoint and spells out that it never touches contributors. page.json author stays intentionally server-managed on reindex (a committed manifest must not be able to rewrite the author of record), so the endpoint is the one supported path, and the hint now says so instead of misdirecting.

Closing as resolved (the author-change half is the same as #121). If the reindex-honors-page.json behavior is something you still want as a separate capability, open a fresh issue and we can weigh it against the security reason it is server-managed today.

Log in to reply.