chore: accumulated crumbs pass — README counts, format list, extra naming, smoke -q, bench comment - #502
Merged
Merged
Conversation
…ming, smoke -q, bench comment Docs, comments and one workflow flag. No behaviour changes. - README carried three counts that had gone stale: the export list named three formats where nine plugins are registered, "39 MCP tools" against a generated reference listing forty, and "one" destructive tool where two are gated. The numbers are gone rather than corrected where a count was never the point. - docs/install.md showed a four-entry `format list` output as a comment. The set is a property of an installation — third-party distributions register into the same entry-point group — so the prose now says to run it. - docs/architecture/backend/inference.md called `local-inference` a dependency group. It is an extra, a distinction pyproject.toml spends a paragraph on. - `format-smoke` passed `-q` on top of pyproject's `addopts = "-q"`, running at `-qq` and suppressing the count line that would show it shrinking to nothing. - The `annotator-bench` comment was split across ~250 lines, with two whole jobs between a sentence's halves. Rejoined above the job it describes.
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.
Docs, comments and one workflow flag. No behaviour changes — no file under
src/orfrontend/is touched, and the one workflow edit that is not a commentis a dropped
-q.Each item below was re-verified against
b7dd21dbefore editing; two of theseven turned out to need nothing, and the verification of a third found three
separate staleness bugs the item had not named.
1. README —
visionset uiwas already gone; three counts were notgit grep "visionset ui"overREADME.mdanddocs/returns nothing at HEAD:the
visionset serverrename (#329) is fully landed, the quickstart is correct,and the install snippet reflects reality. Nothing to do for the item as
written.
Verifying it did surface three stale facts in the same file, all fixed here:
[project.entry-points."visionset.formats"], including the five-plugin lane familydocs/mcp-tools.mdlists 40 — 38 always offered, 2 gated--allow-destructive"delete_batchanddelete_projectThe two numbers were removed rather than corrected: a count in prose beside a
generated listing is a second encoding, and it had already drifted twice.
2.
docs/install.md— the format countThe block showed
visionset format list # coco, dummy, voc, yolo. Actualoutput, read from installed entry-point metadata at HEAD:
Replaced with prose that cannot go stale, since the honest answer is not a fixed
list at all — third-party distributions register into the same entry-point group,
so what a given installation can write is a property of that installation.
3.
docs/architecture/backend/inference.md— extra, not dependency group"The optional dependency group is
local-inference" → an extra, with theone-clause reason
pyproject.tomlgives: a group is for developing thisrepository, an extra is something a user installs.
4.
format-smokeran at-qqpyproject.tomlsetsaddopts = "-q"and the step added another, whichsuppresses the
N passed, M skippedline. The explicit-qis dropped, with acomment carrying the reason — the same choice
inference-smokemade and for thesame reason: the count line is what shows a smoke job quietly shrinking to
nothing.
cf. #490.5. The
annotator-benchcomment is reunited with its jobIts first half sat above the
wheeljob and its second half aboveannotator-bench, withwheelandformat-smokein between — a sentence brokenacross ~250 lines, one half ending "was taken on a" and the other opening
"developer machine". Moved as a block; the
wheelcomment now begins cleanly atits own job.
Proof the move is inert. Both revisions of the file were parsed and their job
trees compared:
Exactly one string differs across the whole workflow, and it is item 4. Every
comment change is invisible to the parser.
6. The order-dependent test — filed as #501
No issue existed. Filed, and it is worse than "order-dependent": it is a
current, reproducible failure, not a latent one.
test_configuring_a_connection_reaches_no_model_runtimeends withassert not {"torch","transformers","huggingface_hub"} & set(sys.modules), aprocess-global fact.
tests/inferencesorts beforetests/kernel, andprovider_foron a ready connection calls_extra.require(), which imports allfive modules. Verified at
b7dd21dwith the extra installed:So
uv run pytestcannot be run green by any contributor carrying the extra —the one environment where the assertion means anything. CI is unaffected, which
is why it went unnoticed: the
pythonjob installs no extra andinference-smokeruns a directory subset excludingtests/kernel. Not fixedhere, per this pass's bounds.
7. The Docker CPU-inference overlay — verified landed, no action
Present and documented at HEAD:
docker/compose.cpu-inference.yamlanddocker/api-cpu-inference.Dockerfileboth exist.
docs/inference.md(the threedocker compose -f …invocations side by side) and in the overlay's own headercomment, which tabulates plain /
+compose.gpu.yaml/+compose.cpu-inference.yamland notes all three share one
workspace-data/.Test plan
Ran in the worktree; exit codes verbatim.
uv run pytest(base environment,VISIONSET_REQUIRE_FFMPEG=1)3139 passed, 13 skipped— exit 0ruff check ./ruff format --check .mypy src/visionset/kernel/mypy src/visionsetlint-importsexport_openapi.py+git diff --exit-code openapi.jsonexport_mcp_tools.py --checkpnpm -r buildpnpm testpnpm -r lintpnpm testis the load-bearing one here, and deliberately so: it carriesdocs_links.test.mjs, which resolves every internal link and#anchoracrossthe tracked Markdown — including the new
docs/releases.md#the-lane-formatsanchor in the README — and
cooldown.test.mjs, which reads.github/workflows/ci.ymland asserts everyuv syncline is--locked.The two browser suites were not run, and the justification is the same shape
as #490's: the diff is four files — one README, two docs, one workflow — and
touches no frontend source, no bundle, no route, no generated artifact and no
Python. Neither suite has an input that moved. CI's
annotator-e2eandcycle-e2ejobs are the arbiter.A note on the title
The dispatch specified
docs/ci:as the type. That is not a Conventional Committype, so this uses bare
chore:— the precedent being #476, a docs-and-toolingpass under the same type. The words are otherwise the dispatch's.
Found, not fixed
in this diff.
cf. #490, #500, #501