Keeps both export sets in the kernel index, renumbers the process findings to
13 and 14 after the query-gaps findings, and regenerates the parity matrix from
the merged STATUS table.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The kernel gains a screen model (process/screen): each step's components in
declared order become neutral blocks both heads render - HELP_TEXT and HTML as
text, VIEW_FORM pairs on every step, RECORD_LIST paged through GET .../records,
the validation review with its preview and summary, PROCESS_SUMMARY_RESULTS
lines, DOWNLOAD_FORM references (GET /download), WIDGET through the widget
render model, and step help content.
The runner presents each screen, asks the provider on every input step
(validation review included), restarts at backStep with isStepBack=true when
the provider returns BACK, cancels on an abort signal with POST .../cancel,
and checks min/max input records before init. A step whose components are
only a VIEW_FORM no longer counts its formFields as inputs.
qqq process run prints intermediate screens to stderr and the last as its
output, asks validate-or-skip and Submit? on a terminal, saves downloads to
--out-dir, and turns Ctrl-C into a server cancel (exit 130). Verified live on
sleepInteractive, greetInteractive, clonePeople, simpleThrow, placeAddressPick
and person.bulkEdit's review screen; findings 11 and 12 recorded.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
The orb's node_install_dependencies runs npm run prepublishOnly (now the workspace build) and
node_run_tests runs npm test then npm run lint. lint checks license headers and that no
package imports another package's src. Also records finding 10: the sample app has no
uploaded-file archive table, so bulk load cannot be exercised against it.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
docs/parity/feature-matrix.md keeps the 401 Next UI row ids and adds a CLI and a TUI column
(pass, todo, partial, n/a with reasons), computed by scripts/parity-matrix.py from the copied
Next matrix (docs/parity/next-feature-matrix.md) and the status table in the script. First fill
of the CLI column after the M1 work so far.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
widgets/render-model.ts turns any WidgetData shape into neutral blocks (heading, stat, table,
series, pairs, steps, alert, link, rule, children) and prints them for a terminal: one-dataset
charts as bars, several datasets as a labels-by-datasets table, html through its text sibling or
stripped, composites nested, permission refusals as a warning. qqq widget get renders or
exports --csv; report run saves a report; prefs list/get/set/action and help-search wrap the
preferences and help operations. docs/server-findings.md lists the candidate qqq issues found
so far.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>