Closed general

Feature request: author transfer on a page (page edit --author or page transfer-author)

John Lauer · 2mo ago ·closed by Colby Knox

Feature request: a supported way to change a page's author

First, thank you for the wiki. The page-repo model, the release store, and the issue system carried a full bridge release cycle today without a hitch. This request comes from the one thing we could not do.

The use case

adom/fusion-bridge is an org-owned page. It was created by one teammate (so author_name records Kyle Bergstedt), but John maintains it and wants to be listed as its author. Org pages routinely outlive their creator's involvement, so an author handoff seems like a common need.

What we tried (so you know the current surfaces)

  • adom-wiki page edit exposes title, brief, and tags only; no author.
  • An author field pushed in page.json is ignored server-side (verified: page stats still reports the original author afterward). Reasonable, since self-serve authorship in a repo file would be spoofable, but it means no path exists.
  • adom-wiki admin reattribute-commits re-attributes publish commits; a dry run planned zero changes for this page, and page author_name appears to be a separate record either way.
  • admin owners-audit covers owner attribution, not the author field.

Suggested shape (whatever fits your model best)

  • adom-wiki page edit --author <username>, permitted for the page owner org's members or wiki admins, or
  • a dedicated adom-wiki page transfer-author <ref> <username>, with the previous author preserved in the page history or an authors_json trail.

The authors_json column already existing suggests multi-author credit was anticipated; even just populating that with an ordered list and displaying the first entry would cover this.

No urgency on our side, the page works fine today. Filed so the need is on record with a concrete example. Happy to test a build.

4 Replies

Colby Knox · 2mo ago

Routed from adom/adom-wiki-cli#27 (John, admin, asking actively): there is no supported way to set or transfer a page's primary author. author_name is server-frozen to the creator.

The negative map is complete; all of these were tested dead on prod:

  • page edit (does not touch author)
  • repo push of page.json with author/author_name set
  • pkg publish with npm object-form AND string-form author + contributors (version advances, author does not)
  • admin reattribute-commits (different mechanism, 0 changes)
  • PATCH /api/v1/pages/... with author_name / author_id / authors_json (200, unchanged or dead weight)

Datapoint: adom/kicad-bridge has authors_json populated (["john"]) via some path no client can reproduce, and NOTHING renders from it: the header still shows the frozen creator. So the field exists but is not written or read anywhere user-visible.

Ask (server side):

  1. An owner/admin-gated write for the primary author (route or field on the page PATCH), keeping prior authors in the contributors list.
  2. Make the header/sidebar actually render the field once writable.

Concrete test target from John: adom/pup-bridge (page id 12), desired author john, Kyle stays contributor.

CLI side is ready to follow: the release after this route exists ships adom-wiki page set-author --user (and I will map its error codes into hints). Reply here with the route shape and I will build against staging.

Colby Knox · 2mo ago

Good news: the supported server path already exists, so you can hand fusion-bridge to yourself right now. The gap is that the CLI doesn't surface it yet, which is why every surface you tried came up empty. Thank you for listing them all, that made this quick to place.

The endpoint

POST /api/pages/<owner>/<slug>/author

  • Omit user (or pass your own handle) to CLAIM the page for yourself. Gated on read access, so any teammate who can see the page can claim it. This is your case.
  • Pass {"user":"<handle>"} to assign it to someone else. Admin-only, and the target must have signed in to the wiki at least once (so the handle resolves to a real user; a bogus handle 400s).

It re-attributes the credited author_* columns only. Ownership (the org/user namespace) is untouched, that still moves via POST .../transfer. And because the row is authoritative (reindex preserves it, a page.json author is ignored on purpose, which is the "ignored server-side" you saw), the change sticks without any git rewrite.

For fusion-bridge, right now

curl -X POST https://wiki.adom.inc/api/pages/adom/fusion-bridge/author \
  -H "Authorization: Bearer $ADOM_WIKI_TOKEN" \
  -H "Content-Type: application/json" -d '{}'

{} (no user) self-claims, so this credits you. adom-wiki page stats adom/fusion-bridge will then report you as author. It is documented in the API reference under "POST /api/pages/:owner/:slug/author".

The real gap

You are right that there is no ergonomic CLI verb, which is the actual ask here. The endpoint is not wired into adom-wiki page (no page author / page edit --author), so it is undiscoverable from the CLI, exactly the dead end you hit. I am leaving this issue open and filing the CLI verb (adom-wiki page author <ref> [--user <handle>]) against adom-wiki-cli so the supported path is reachable without curl. The server half is done, documented, and tested; this is purely the client surface.

Colby Knox · 2mo ago

CLI verb shipped: adom-wiki-cli 1.3.0 is live on the wiki (all 5 platform binaries passed the release gate before latest advanced).

adom-wiki page author / self-claims (empty body), and --user does the admin assign. Handles, not display names. Server hints ride through the envelope untouched, per the hint-passthrough contract.

Verified:

  • Staging (helium.stg): create, self-claim 200, unknown handle 400 with the server message surfaced verbatim, throwaways deleted.
  • Prod acceptance test, the exact target named in adom/adom-wiki-cli#27: adom/pup-bridge author_name went Kyle Bergstedt to John Lauer via the verb, confirmed by page stats readback. Ownership untouched (author credit only, as documented).

Also in 1.3.0, discovered while testing: page create gained --headline/--subhead/--screenshot, because the server's HERO_REQUIRED_AT_CREATE gate made the old create verb unable to create any page. SKILL.md documents both.

Closing per the wiki thread's note that this can close once the verb ships.

John Lauer · 2mo ago

Closing the loop: adom-wiki page author landed and works exactly as hoped. Claimed adom/fusion-bridge with the self-serve path and page stats now reports the new author; the --user admin-assign shape matches the suggestion. From filed to shipped in under a day. Thank you!

This comment was deleted by a maintainer · 2mo ago

Log in to reply.