The sample server on 8077 still serves UI API 1.8.0, so the core document
is now qqq's committed openapi.yaml at develop 7825261ab (UI API 1.10.0)
instead of a live server, merged with each qbit's committed extension
document at origin/develop (qbit-printing: origin/main, it has no
develop). Collaboration now comes from develop, where per-session
presence is merged; assistant moves to 1.7.0 and printing to 2.3.0.
222 operations, 156 from extensions.
data-analysis 1.5.0 still carries FilterCriteria as it was before 1.9.0
(no `options`), which made the strict schema-equality rule fail the
merge. merge-spec now accepts an extension's older copy of a schema
(same schema minus later properties and enum values) and keeps the newer
one with a warning; any other difference still fails.
The client follows the UI API version, so it becomes 1.10.0
(UI_API_VERSION too). Servers on 1.9.0 now read tableVariant on writes,
so the CLI's --variant note names the versions that ignore it. The
"newer server" version tests move to 1.11.0.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Save as PDF… is the first printer-picker entry and saves through the download flow (file dialog or silent download folder, stamped names, overwrite confirmation); :print pdf; qqq print … --to-file [path]. On non-record, non-grid screens Ctrl+P asks Print what? (Content: panels as titled sections without sidebar, title bar, key lines or borders; Screen: the terminal as drawn). Every document carries the app header (instance, breadcrumb, server, user, time) and footer (client and server, filter/sort line, Page n of m), rendered by qbit-printing 2.2 (printingRenderToPdf).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
docs/packaging carries the real sha256 sums from the cli-v1.0.0 release. scripts/update-packaging.mjs now parses shasum lines strictly, requires 64 lowercase hex and non-zero sums for every target, validates both files before writing anything, and exits 1 with nothing written otherwise; covered by scripts/update-packaging.test.mjs (npm test runs test:scripts).
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
qqq 1.0.0: the command-line client and the full-screen terminal UI (qqq ui) for QQQ applications over the UI API (/qqq/v1), with @qrun-io/qqq-cli 1.0.0, @qrun-io/qqq-core 1.0.0, @qrun-io/qqq-ui-api-client 1.8.0 and @qrun-io/qqq-ui-api-conformance 1.6.0 going final together. Squash of the release/1.0.0 branch at 79ba68e (the branch is kept with the full signed history; the tags v1.8.0 and cli-v1.0.0 point at that commit, which is what the released binaries were built from). See CHANGELOG.md [1.0.0] and docs/release-notes/1.0.0.md.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
- @qrun-io/qqq-ui-api-client: typed client generated (openapi-typescript +
openapi-fetch) from the merged UI API document; device-flow sign-in, refresh,
UiApiError (BasicErrorResponseV1), SSE reader
- @qrun-io/qqq-cli: qqq login/whoami/apps/tables/query/get/run/jobs/tail,
only through /qqq/v1 with Authorization: Bearer
- @qrun-io/qqq-ui-api-conformance: black-box suite + qqq-dev-idp
- scripts/merge-spec.mjs, Prism mock, CI and GitHub Packages publish workflows
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>