Compare commits

...
Author SHA1 Message Date
james.maesandCodex 290948ae16 docs: record installed native printing acceptance
Co-Authored-By: Codex (GPT-6) <noreply@openai.com>
Signed-off-by: James Maes <james@kof22.com>
2026-10-31 15:23:18 -05:00
3 changed files with 19 additions and 10 deletions

No files matched your search

+5 -3
View File
@@ -63,14 +63,16 @@ Open `http://127.0.0.1:18082`. On Linux/macOS use `:` as the classpath separator
The protocol-only `PrintingDemo` and synthetic, mock-authenticated `PrintingUiDemo` remain separate. Do not point the synthetic demo at real paired printer data. The local host retains database document storage until an actual dedicated S3 binding is configured in a deployment-owned application; it does not claim a remote cloud deployment.
Local native deployment is accepted with authentication and access-denial checks, preserved pairing/history, connector reconnection and 365-day retention. The previously accepted 0.1.4-rc.1 release passed 73 tests and zero Checkstyle violations; the user confirmed all three Query diagnostic outputs good. Production S3/IAM and remote deployment remain separate qualification work. The 0.2.0 controls/authentication release passed 25 real client/native QQQ interoperability checks; installed Windows acceptance remains in progress.
Local native deployment of 0.2.0-rc.1 is accepted with authentication and access-denial checks, preserved pairing/history, connector reconnection and 365-day retention. The exact published Windows MSI is installed; standard QQQ table-based sign-in and explicit existing-pairing association succeeded. Both endpoints observed pause, disconnect, reconnect and resume, and inventory refresh returned `SUCCEEDED` / `INVENTORY_REFRESHED`. Native QQQ processes delivered a Letter PDF and a 4 × 6-inch, 300-dpi ZPL label to `SPOOLED` with the reviewed content hashes. Physical confirmation of these two outputs is pending.
The release passed 25 real client/native QQQ interoperability checks. Current Windows visual UI acceptance remains unverified, and a requested service restart was canceled before execution. Configured Authentik/provider renewal, production S3/IAM, remote deployment and 1.0 readiness remain separate qualification work. See the [installed-client acceptance scope](https://github.com/QRun-IO/qqq-print-agent/blob/main/docs/ACCEPTANCE.md). The historical 0.1.4-rc.1 release passed 73 tests and zero Checkstyle violations; the user confirmed all three of its Query diagnostic outputs good.
## Add to a QQQ application
For a source checkout, `mvnw.cmd install` (or `bash ./mvnw install`) installs the verified library into your local Maven repository. For a GitHub release, download the JAR, matching POM and `SHA256SUMS`, verify the checksums, then install those artifacts locally or through your organization's artifact repository. Example using the release files in the current directory:
```powershell
.\mvnw.cmd install:install-file '-Dfile=qbit-printing-0.1.4-rc.1.jar' '-DpomFile=qbit-printing-0.1.4-rc.1.pom'
.\mvnw.cmd install:install-file '-Dfile=qbit-printing-0.2.0-rc.1.jar' '-DpomFile=qbit-printing-0.2.0-rc.1.pom'
```
After the artifact is available in your configured repository, add:
@@ -79,7 +81,7 @@ After the artifact is available in your configured repository, add:
<dependency>
<groupId>com.kingsrook.qbits</groupId>
<artifactId>qbit-printing</artifactId>
<version>0.1.4-rc.1</version>
<version>0.2.0-rc.1</version>
</dependency>
```
+8 -4
View File
@@ -1,12 +1,16 @@
# Session state — 2026-10-31
## Active device controls and standard QQQ authentication
## Published 0.2.0-rc.1: local native happy path
Implementation is in the isolated device-controls worktree. Native device/table actions support pause, resume, disconnect, reconnect, revoke, inventory refresh and queued-job clearing; job records support exact owned Windows-job cancellation. Related printers, jobs, pending queue and bounded command history are registered. Derived status separates connection presence, desired state and observed revision. Domain writes use current QQQ permissions; clearing a queue checks every affected job before the transactional mutation.
The published release includes native device/table actions for pause, resume, disconnect, reconnect, revoke, inventory refresh and queued-job clearing; job records support exact owned Windows-job cancellation. Related printers, jobs, pending queue and bounded command history are registered. Derived status separates connection presence, desired state and observed revision. Domain writes use current QQQ permissions; clearing a queue checks every affected job before the transactional mutation.
The primary client transport is the discovered `/qqq/v1/qbit/printing` semantic extension with standard QQQ user sessions and secondary device proof. Authentik requires the shared advertised native PKCE session grant; no private bearer-only fallback substitutes for that authorization. The final isolated Java 21 gate passed **110 tests**, zero failures/errors/skips and zero Checkstyle violations. All 204 runtime dependencies match the frozen approved hashes. Native HTTP, proof/binding denials, explicit permission enforcement, selection count/extraction, FIFO eligibility, queue races, cancellation replay and offline command expiry are covered. Bound device tokens are rejected on legacy routes, and new legacy enrollment defaults off; real HTTP regressions prove there is no secondary-proof downgrade. The actual .NET client passed 23 native table-based authentication/binding/control/logout checks without printers or jobs. Current protected CI and installed/provider acceptance remain pending. No new feature release or local installation has occurred.
The primary client transport is the discovered `/qqq/v1/qbit/printing` semantic extension with standard QQQ user sessions and secondary device proof. Authentik requires the shared advertised native PKCE session grant; no private bearer-only fallback substitutes for that authorization. The tagged Java 21 gate passed **110 tests**, zero failures/errors/skips and zero Checkstyle violations. All 204 runtime dependencies match the frozen approved hashes. Native HTTP, proof/binding denials, explicit permission enforcement, selection count/extraction, FIFO eligibility, queue races, cancellation replay and offline command expiry are covered. Bound device tokens are rejected on legacy routes, and new legacy enrollment defaults off; real HTTP regressions prove there is no secondary-proof downgrade. The actual .NET client passed 25 native table-based authentication/binding/control/logout checks without printers or jobs. Protected CI, release checksums and exact-tag asset attestations passed.
The user confirmed all three current Query test prints good. Barcode catalog expansion was removed from printing scope and belongs to document/barcode generation.
Local server migration and deployment preserved existing data, pairing and retention. The exact published Windows MSI installed with pairing, printer exposure and journal history preserved. Standard table-based sign-in and explicit association of the existing pairing succeeded through the installed service. Both service and server observed pause, disconnect, reconnect and resume at revisions 1–4; inventory refresh has a confirmed `SUCCEEDED` / `INVENTORY_REFRESHED` receipt.
Native QQQ processes submitted one Letter PDF and one 4 × 6-inch, 300-dpi ZPL label. Both reached `SPOOLED` with reviewed content hashes; no active server queue remained. Physical confirmation is pending. Current Windows visual UI acceptance is unverified, and a requested service restart was canceled before execution. Configured Authentik/provider renewal, remote deployment and 1.0 readiness remain unqualified. See the [installed-client acceptance scope](https://github.com/QRun-IO/qqq-print-agent/blob/main/docs/ACCEPTANCE.md).
The user previously confirmed all three 0.1.4 Query test prints good; that historical output does not confirm the two current-release requests. Barcode catalog expansion remains outside printing scope and belongs to document/barcode generation.
## Query mascot correction
+6 -3
View File
@@ -2,9 +2,12 @@
- [x] Complete native device controls, per-record/selection actions, queue/history, dashboard and legacy-boundary integration tests; 110 tests pass with zero Checkstyle violations.
- [x] Complete 25 actual Windows Core client/native QQQ interoperability checks with table-based authentication, no printers and no jobs.
- [ ] Complete installed candidate acceptance after protected CI.
- [ ] Complete standard QQQ discovery/session/device-binding security checks and Windows auth integration; qualify the shared Authentik native grant without a private authentication fork.
- [x] Review and merge immutable protocol inputs (cc3c4e5), pass protected CI and merge the server and Windows implementations normally. Release tagging and installed acceptance remain separate.
- [x] Publish and verify 0.2.0-rc.1 assets; deploy the local server and install the exact published Windows MSI with existing state preserved.
- [x] Qualify local installed-service table-based sign-in, explicit existing-pairing association, observed pause/disconnect/reconnect/resume and successful inventory refresh.
- [x] Run native QQQ Letter PDF and 4 × 6-inch, 300-dpi ZPL test processes; both reached `SPOOLED` with reviewed content hashes.
- [ ] Obtain physical confirmation of the two current-release outputs; qualify the current Windows visual UI and an actual service restart (elevation was canceled before execution).
- [ ] Qualify the shared Authentik native grant and long-lived renewal without a private authentication fork; local table-based acceptance does not cover the configured provider.
- [x] Review and merge immutable protocol inputs (cc3c4e5), pass protected CI and merge the server and Windows implementations normally.
- [x] Replace the test-document logo with the exact official Query dog asset; preserve aspect ratio and verify all PDF/thermal profiles with 73 passing tests, zero Checkstyle violations and reviewed previews.
- [x] Publish v0.1.4-rc.1 after all required release gates, verify checksums and all three asset attestations, and complete local native deployment acceptance.