package manager: torb audit advisory database #309
Loading…
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?
Context
torb audit(#23) reports yanked and deprecated versions of the locked graph, which the registry index already carries. RELEASE.md section 7.6 also describes a public advisory database (one TorbScript file per advisory, OSV export) thattorb auditis to check the lock against (CONCEPT: "torb auditchecks the locked graph against the advisory database of the registry"). That database does not exist yet.Source
Acceptance criteria
compiler/src/package/torb auditadditionally reports every locked version an advisory covers, with the advisory id and summary, and exits non-zerodocs/tooling/torb-audit.mdDependencies
torb auditfor yanked and deprecated versions)torb audit#23torb audit#23torb audit#23[loop:torbscript] claim refine by session:loop-torbscript-20261024 until 2026-10-24T03:50Z
torb audit --advisories <directory>(step 1 of #309) #451[loop:torbscript] intake: in scope (author orion, label loop). No duplicate: #23 is closed and split this part off; no other open issue covers advisories. No collision with a design record: RELEASE.md 7.6 announces the database but leaves the file format open. The only owner-reserved part is publishing the public advisory repository and the endpoint that serves it (public commitment, external service); that is not needed for a first step.
[loop:torbscript] decided by the loop: this issue is an epic, too big for one PR. The format, the reader and a local-directory check need no public commitment, so they go first as #451 (ready). Steps, each filed just in time when the previous one landed:
torb audit --advisories <directory>- #451torb auditfetches it by default (mirrors, cache,--offline, signing like the index in 7.14 if served by a registry)Why this split: steps 1 and 2 are internal technical design (format follows the index and lock conventions: receiver script of literals, read statically) and testable with a fixture directory; only step 3 is a public commitment. Details of the format are in #451.
[loop:torbscript] refine: epic split, first step filed as #451 (labelled ready), claim released, next: waiting (epic; steps 2 and 3 are filed after #451 lands, step 3 needs an owner decision). Worker usage: RE sonnet/medium, about 60k tokens (estimate).