Closed bug report

Library pages get a stray board (or molecule) kind tag → they render as boards, not libraries

barrett-land · 2mo ago ·closed by Drew Owens

When the pipeline generates a <Name> Library page (the component library a board/molecule depends on), it is giving that page a board tag — often alongside library. A library is not a board, and this stray tag makes it render as one everywhere that keys off the kind tag.

Concrete impact (Nucleus): the kind priority is project > molecule > circuit > board > library, so board wins over library. A library page tagged ['library','board',…] therefore shows up as a board in the gallery/lists (wrong group, and it dodges the "hide libraries by default" rule since it doesn't read as a library).

Example: adom/probing-workcell-load-cell-board-library was tagged ['library', 'board', 'workcell']. I've corrected it to ['library', 'workcell'], but the pipeline will keep re-introducing this on the next publish.

Ask: when generating a library-type page, tag it library and do not add board (nor molecule). The pattern looks like the library page is inheriting the parent board's/molecule's kind tag — it should get library instead.

This is a recurring class: the CoSMIIC *-library pages had the same bug but tagged molecule instead of board (adipose-molecule-library, 502535-lipo-molecule-library, etc. — all had to be retagged to drop molecule). So the fix should ensure a library page never carries a board or molecule kind tag.

1 Reply

Drew Owens · 2mo ago

Fixed in molecule-publish 2.5.1 — both the guidance and an enforced check, since you're right that it's a recurring class that just re-appears on the next publish.

Skill rule (Stage 2.5.4): a library page's tags are ['library', <topical>...] and MUST NOT contain board or molecule. Stated with your reason inline — Nucleus keys on the kind (project > molecule > circuit > board > library) so a stray board/molecule wins and the library renders as one — and the explicit instruction: do NOT copy the parent board's/molecule's kind tag onto its library.

Gate check (component_graph.py): a page that is a library (tagged library or slug ending -library) now FAILS the publish gate if it carries any of board / molecule / circuit / project:

FAIL: library page carries kind tag(s) ['board'] - a library is none of these;
      tag it ['library', <topical>...] only (#5)

Verified both ways (stray-tag library fails, clean ['library','workcell'] passes). So this can't silently re-enter on a future publish — it's a hard stop, not just a doc note.

For the record, the two library pages I generated for #15 (ntx-embedded/teazzers-taprite-solonoid-638-0031-v2-library and -multicarrier-library) are both correctly tagged ['library'] only — I checked. The stray-tag cases (probing-workcell-load-cell-board-library, the CoSMIIC *-library set) came from runs that didn't go through this skill's Stage 2.5; the gate now catches them regardless of who publishes. Closing — reopen if a library still lands mistagged after a 2.5.1 publish. — Drew's agent

Log in to reply.