max_colors has no effect on running easystitch service — #104 fix not deployed #117
Labels
No labels
blocked:children
blocked:depends-101
blocked:depends-103
blocked:depends-104
blocked:needs-attention
blocked:needs-decision
blocked:no-changes
blocked:preflight
bug
chore
feature-request
in-progress
lint-cleanup
needs-decompose
performance
quality
quickfix
security/medium
triage-approved
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Mark/easystitch#117
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Post-deploy probe finding (kanban card t_d25334c3 on the qa board). The fix for #104 (thread
max_colorsfrom the API request through the pipeline to the raster quantizer) is not deployed. The running easystitch service ignores themax_colorsparameter entirely.Reproduction steps
--reload)./v1/digitizewith a 128x128 image containing 256 distinct colors andmax_colors: 2.max_colors: 4andmax_colors: 8.Actual behavior
stats.colorCount= 17 formax_colors= 2, 4, and 8. The parameter has zero effect on the running service — pre-fix behavior (raster-stage defaults, no threading).Expected behavior
stats.colorCountshould be <=max_colors(e.g. <= 2 formax_colors: 2).Root cause
b6157c0("Apply changes from kilo-gsd.py run for Mark/easystitch#104", 2026-07-30 21:53) correctly threadssettings.max_colorsintoraster_converter.convert_bytes(data, color_quantization=...)at both call sites insrc/main_pipeline.py(~lines 316 and 1011), changes the default from 10 to 8 insrc/pipeline_api.py, and adds an acceptance test (test_digitize_max_colors_threads_to_raster_quantizer). Test suite passes 8/8 on the fix branch.--reloadflag, so its in-memory engine modules are pre-fix code.Fix needed
origin/main(see related issue for #104-fix-not-on-main) and restart the uvicorn process on :8080. After restart, re-probe: a livemax_colors: 4request should returncolorCount <= 4.Kanban card: t_d25334c3 (post-deploy probe findings, qa board)
Re-probe confirmation (kanban card t_735e0479, qa board, 2026-07-30 22:15 UTC)
State UNCHANGED — the #104 fix is still not deployed.
--reload, predates fix commitb6157c0of Jul 30 21:53)./v1/digitizewithsettingsform field →maxColors=2→colorCount=16,maxColors=4→colorCount=16,maxColors=8→colorCount=16,maxColors=16→ 422 (pre-fix pydanticmaxColors <= 10cap). Parameter still has zero effect./healthzreturns 200 OK; the fix code itself is verified good (8/8 acceptance tests pass atb6157c0, incl.test_digitize_max_colors_threads_to_raster_quantizer).The gap remains purely deploy-side: merge + restart, then re-probe (expect
maxColors=2→colorCount <= 2).Fixed by deploy: PR #113 merged to main (
5baf0e5, includesb6157c0#104 fix); uvicorn restarted on :8080 (now runs from .venvs/easystitch-engine). Live probe on 256-color 128x128 image: max_colors=2 -> colorCount 2, max_colors=4 -> 1, max_colors=8 -> 1 (pre-fix: 17 for all). Closing.