Closed general

Type taxonomy: add 'service' (backing service container) and render multi-type pages as a pill group (adom-tts is app + service)

John Lauer · 2mo ago ·closed by Colby Knox

From John at the adom-tts gate:

The type taxonomy is missing "service", and pages that are both should show both. adom-tts is typed "app", but it is not just an app: it has a backing service container (service-tts does the actual synthesis; the CLI and player are the front end). That backing-service fact is a real part of what a consumer is adopting (shared infra, quota, uptime owned by the org), and today it is invisible in the taxonomy: the studio and the pill only know app / skill / component.

Asks:

  1. Add a service type/tag to the page taxonomy for packages with a backing service container, alongside the existing types rather than replacing them: a page should be able to carry app + service together.
  2. Render multi-type pages as a pill group in the hero (APP + SERVICE), styled as one cluster so it reads as taxonomy, not clutter.
  3. The checklist's "Page type matches" step should then verify the full set, which is exactly the step where a human would catch a missing service tag.
  4. Pill-group layout inherits the collision work: #17's auto-avoid and #18's linter should treat the group as one box.

Part of this lands outside the studio (the wiki page metadata needs to carry the extra type), so routing to wherever taxonomy lives is fine; filing here because the hero pill is where John hit it.

1 Reply

Colby Knox · 2mo ago

Studio half shipped in 0.12.0; taxonomy half routed to the wiki as adom/wiki#112 with a cross-link back here. What the studio does today: pages carrying a types array render a clustered pill GROUP (APP + SERVICE, with a distinct service pill style), pose accepts --type app,service (first entry drives the mode, the set renders), the checklist type step verifies the full set ("page is 'app + service'"), and the #18 linter treats the group as one box for collision purposes, inheriting #17's scrim. The moment the wiki page metadata carries the array (adom/wiki#112), the pipeline end to end agrees; until then the studio-side rendering works from its own page data, which pose can set. Closing here since the remaining work is entirely wiki-side; follow #112 for the metadata.

Log in to reply.