Shareable RFD, Ticket, and Site Tooling
Done2026-10-14Jean Mertz
Tracking ticket for RFD 116.
Implementation plan
- Add ticket config, commands, and plugin tools:
jp ticketreadsdir,assistant, andboard.done_limitfrom its options. It gainsrename,status,block,board,rank, andinit, dropsmigrate, and requires--repoonimport. Theticket_*tools are served as plugin tools withtools initandtools sync, andticket.rsandjust ticket-labels-syncare removed. The label vocabulary stays in.labels.jsonfor now. Mergeable on its own. - Create jp-rfd with read-only commands: Creates the
jp-rfdplugin, readingdirandcategoriesfrom its options. Ports the reading side of the board fromrfd-shared.mjsand addslist,show,tools init,tools sync, and the tools forlistandshow. Depends on Phase 1. - Port the RFD lifecycle commands: Writes the shared id resolver, metadata-header editor, and relationship writer. Ports
draft(including--from-ticket),rename,renumber,extend,require,supersede,abandon, andpromotewith their tools, and addsrankandinit. JP's recipes become one-line calls intojp rfd, and therfd_extendtool parameters follow the new argument order. Depends on Phase 2. - Port RFD tracking commands: Ports
track,start, andstopwith their tools, wheretrackreads the Implementation Plan through the host'squery. The dev server's/__rfd-developmentendpoint is pointed atjp rfd. Depends on Phase 3. - Create jp-vite and sync the site from the binary: Creates
jp-vitewith the site files embedded fromcrates/plugins/command/vite/site/, plusinit,sync,sync --check, the settings snapshot, andservewith its version-skew checks. The ticket board and priority writers go throughjp ticketand the snapshot's RFD directory. The label vocabulary moves intoplugins.command.ticket.options.labels, and CI runssync --check. Depends on Phase 2 and is independent of Phases 3 and 4. - Retire the ported justfile recipes: Removes the ported
rfd-*recipes andticket-promotefrom the justfile and points JP's RFD tool configuration atplugin.command.rfd. Updates the references in RFD 001 and RFD 100 to the new commands and the vocabulary location. Depends on Phases 1 to 5.