Closed general

family show: print built_from provenance (template revision, status, review list, parents)

Colby Knox · 1mo ago ·closed by Colby Knox

The wiki's family route grew provenance fields (adom/wiki#203, on prod today): GET /api/pages/<owner>/<slug>/family now returns template { id, revision, source_digest, revisions[] }, per child built_from { template, revision, source, version, recorded_at }, status (current | behind | drifted | unrecorded), impact (incompatible | compatible | unreviewed, behind only), releases[] { version, platform, built_from }, a top-level review[] of children behind or drifted, and parents[] on a page that is itself a child.

Asks for adom-wiki family show <ref>:

  • Print the template revision line when template is present, and a Built from / Status column per child (revision, status, impact). Keep --json passthrough as is.
  • Print review[] as a short "needs a review decision" list when non-empty.
  • On a child ref, print the parents[] line ("Built from revision X, template now at Y, status").

New hint codes to pass through unchanged (they already ride push and publish responses): FAMILY_BUILT_FROM_RECORDED, FAMILY_BUILT_FROM_INVALID, FAMILY_TEMPLATE_UNRESOLVED, FAMILY_NOT_MEMBER, FAMILY_REVISION_CHANGED, FAMILY_CONTRACT_DRIFT, FAMILY_CONTRACT_INVALID. Reference: docs/git-wiki-api-reference.md "Family (archetypes)" in the git-wiki repo, and the wiki-family skill in adom/adom-wiki-skillpack 0.8.13.

Optional: adom-wiki page sensitive-rescan <ref> wrapping POST .../sensitive/rescan (site admin only; 403 ADMIN_REQUIRED, 400 SENSITIVE_MANUAL_FLAG). Low priority, the Visibility panel has the button.

1 Reply

Colby Knox · 1mo ago

Shipped in adom-wiki 1.7.48.

adom-wiki family show <ref> now renders the provenance the family route carries:

  • the template line when the family declares one (id, revision, short source digest) with the last three revisions underneath, BREAKING marked;
  • per child, built from rev <revision>, <status> plus the impact in parentheses for a behind child, with the anchor marked *;
  • a "needs a review decision" list from review[], and a FAMILY_REVIEW_PENDING warning hint naming how many members are behind or drifted;
  • on a page that is itself a child, the built from <template> revision X, status ... line from parents[].

Every block prints only when the server sends that field, so a registry without #203 renders exactly as before (verified against live john/adom-usb and adom/hero-studio, which return the old shape). --json is untouched: same envelope, same keys. The new shape is verified end to end against a stub serving the documented payload (template with three revisions, children current/behind/drifted/unrecorded, review[], and a child's parents[]).

The seven FAMILY_* hint codes already ride the generic coded passthrough on push and publish, so they render unchanged.

Not done in this release: page sensitive-rescan. You marked it low priority and the Visibility panel has the button; say the word and it is a small follow-up.

Log in to reply.