Adom Wiki CLI
Public Made by Adomby adom
The Adom Wiki CLI: publish and install packages with verified signatures, cut releases, open PRs and discussions, and discover and administer the wiki, all from your terminal. Replaces adompkg.
Bloat gates: repo undelete --confirm-not-bloat + page create --because
CLI half of wiki.adom.inc/adom/wiki/issues/106 (the wiki server half is live). From a real incident: an AI thread resurrected a bloat-deleted page with repo undelete and pushed content into it, bypassing every creation checkpoint.
1. repo undelete: surface the new server gate
The server now refuses POST /undelete without ?confirm=<owner>/<slug>, returning:
409 { code: "UNDELETE_NEEDS_CONFIRM", data: { owner, slug, deleted_by, deleted_at } }
The hint prose already names the exact retry, so nothing is broken today. The CLI should make it first-class:
- Print the disclosure prominently: who deleted the page, when, and the bloat framing ("a soft-delete is often a judgment someone already made").
- Add
--confirm-not-bloat, which maps to?confirm=<owner>/<slug>. Keep the flag name explicit about what the caller is asserting. - Without the flag: show the disclosure and exit non-zero. No interactive prompt needed; the reprimand IS the interface for AI callers.
2. page create (and first-publish flows): the bloat question
Per John's ask on the wiki issue:
- Require
--because "<why no existing home fits>"on page creation. Reject placeholder justifications the same way placeholder changelogs are rejected. - Print the wiki-bloat rule: before creating anything, first find where it should already live.
- The server now returns a
SIMILAR_PAGES_EXISTinfo hint on the FIRST publish of a slug (top related existing pages by title match). Hint passthrough shows it automatically on 1.0.33+; nothing to build for that part, but--becauseshould print BEFORE the network call, so the AI answers the question before creating anything.
This is client-side UX only; no server change is needed for the --because gate, which is deliberate: a server-side mandatory-justification field would break every existing client.