Repository navigation
fix: 0.6.0 follow-ups (audit wire, honest PE build, DELETE 409, dispatcher orphan runs, assist gaps) - #333
Merged
Conversation
audit_sample, audit_batch_id, audit_sampled_at, audit_label_name, audit_label_source, audit_outcome and audit_human_name go through serialize_item, ItemDoc and the contracts; the audit queue shows the machine label a crop was drawn with.
…277) The verification report was half right: build_pe_trt.sh already adds the uint8 input (PE_NORMALIZE matches the installer). What was real is the silent FP32 fallback when the FP16 bake or FP16 trtexec build failed. It now exits 4 with the cause; ALLOW_FP32=1 is the explicit opt-in. A failed uint8 step also stops with a clear message. Tests stub python and trtexec.
… lands (#249) Diagnosis: the busy inventory itself is correct, but the detection worker's liveness file (inflight count) was only rewritten every 15 s, so a DELETE right after an ingest finished read the last non-zero count and answered 409 project_busy for up to a full interval. liveness_loop now polls each second and rewrites a project as soon as its count changes. The 409 message also names each running job and hints at a retry (it already listed them in jobs).
…han run
run_tick ran run_project_tick via to_thread, so spawn and the poll called
asyncio.create_task from a worker thread ('no running event loop') and no
poll, cron or webhook run ever started. Because claim_run had already written
the run, every tick re-claimed the interrupted run (refreshing its heartbeat)
and it stayed live: later /run calls and DELETE of the project answered 409.
The tick now runs on the loop, spawn marks a claimed run failed when it
cannot start, and cancel finalizes an orphan with no task.
…_agreement control GET /clusters cards carry subcluster_ids (sorted, capped at 200), and the cluster page's sub-cluster tabs use them instead of the ids seen on the loaded page. The assist dialog gets an Agreement needed field for a cluster classify run: empty uses the server default (echoed on the dry run), range pinned to the served schema by a contract test.
… item attributes brand (free text), colour and material (closed lists) on the generic item prompts, validated by the pack validation in a test and mentioned in the selective-assist and use-your-own-domain guides.
) New envnames check: a non-OP_ variable written in a code span on a line about env or variables must be read by compose, a script or code (case-insensitive, as pydantic settings are). #289 re-verified: the docs-site tsc passes (no TS5101), the openprocessor start comment no longer exists, and slow_request_threshold_ms is read (factory.py), so nothing to fix there.
…runs by microsecond ids The tick does blocking I/O and stays off the event loop (existing test); only the run and poll task creation is handed to the loop captured in run_tick. Assist run ids carry microseconds so two runs in one second sort newest first.
…ead its header simplejpeg raised 'Could not determine subsampling level' on 2 of 100k public JPEGs that Pillow decodes; only that header error now falls back to the Pillow path (same orientation and RGB handling). Other fast-decoder errors (damaged files) still fail. The GPU path already falls back to this CPU decode on any non-ok status, so no device accounting changes.
6 tasks
This was referenced Oct 16, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
0.6.0 follow-ups found by the issue verification and the live S3/MinIO check.
Closes #166
Closes #277
Closes #249
Closes #287
Closes #289
audit_*fields are on the item wire through the single serializer; the audit queue shows how each crop was drawn.export/build_pe_trt.shexits 4 with the cause when the FP16 bake falls back or fails;ALLOW_FP32=1is the explicit opt-in.project_busynames what is running.queuedrun that blocked/runand project DELETE. The tick runs on the loop, a failed spawn marks the run failed, and cancel finalizes orphans.examples/prompt_packs/general_objects.jsondeclares brand, colour and material attributes.check_docs_vs_code.pygains anenvnamescheck (test(docs): close the docs-guard gaps #287); chore: stale code comments and citations #289 re-verified (nothing left to fix).Tests written first and seen failing for the fixes (exceptions are noted in the commit messages). Full suite runs once here in CI.