Repository navigation
Open decision: how DeltaTrack reaches staffers (delivery channel), waiting on Hill IT, workflow and packaging signals #112
Description
Activity
- addedquestionFurther information is requestedFurther information is requestedblockedBlocked on an external dependencyBlocked on an external dependency
on Jun 28, 2026 Status update for this decision, from a full-repo evaluation (2026-07-27) plus the maintainer's confirmation of direction:
Current state: the only working web channel is the one ADR 0011 (local-only processing: user-provided bill content "must never leave the user's machine … regardless of whether that server would store anything") forbids. The hosted upload page at deltatrack.agoradmv.org processes uploaded PDFs server-side (
docs/web-compare.mdmarks it "Available now"), while the compliant browser-side card is marked "Coming soon." The upload path accepts any PDF, including pre-publication drafts — the exact content class 0011 exists to protect.Confirmed direction: the hosted version is transitional and acknowledged as a 0011 breach. The target end-state is something local with a light install — preferably a browser extension or similar — consistent with the PDF.js client-side viability spike (ADR 0003, which showed published-bill extraction can run fully in the browser; draft/pre-introduction PDFs remain the untested risk on that path).
Interim proposal, so the breach stays visible and bounded while the transition is worked: (1) a line on the upload page telling users their PDFs are processed on the project's server and advising against uploading non-public drafts there; (2) a note in ADR 0011 (or cross-referenced from it to this issue) recording that the hosted channel is a known, deliberate, interim exception with this issue as its retirement tracker. Without those, the record reads as if the project doesn't know it's out of compliance with its own safety contract.
- added 4 commits that reference this issue
on Aug 14, 2026 - added a commit that references this issue
on Sep 2, 2026 PDF bake-off external-validity arm: closed, void
Recording this here because
RESULTS.mdnames this issue as its consumer. Short version: it does not move any row in the channel table, and it was never one of the gating signals above. Flagging it so nobody waits on evidence that is not coming.The external-validity run — testing whether the bake-off's findings generalise to unseen legislative PDFs — failed its own pre-registered controls and is void. Closeout and artifacts in #728.
What voided it. The N-B control (unambiguous, XML-corroborated headings must agree) failed, and §5.6's consequence for that is "run void": the adjudicator is unreliable independently of any architecture. Every N-B failure and five of six N-A failures were on the human adjudication route, with two systematic failure modes — spacing defects normalised away (WELD 0/3, SPLIT 0/2) and
RESCISSIONread asRECISSION. Weld and split are precisely the defect classes the bake-off exists to detect, so the ground truth was repairing the thing being measured.What this does and does not change for the channel decision:
- No comparative architecture result. Nothing here favours or disfavours hybrid vs corrected extended glyph, so no row in the candidate-channel table moves.
- Nothing is refuted.
RESULTS.mdandRESULTS-CONFIRMATORY.mdstand exactly where they were. This run was designed to test whether they generalise and did not succeed in testing them — that is different from finding against them. - ADR 0003 is untouched. Client-side PDF.js viability was not what this run measured.
- One genuine caution. The run established that extraction correctness at the character level is hard to validate, because human transcription — the obvious ground truth — silently normalises exactly the defects in question. Any future claim that a given PDF path is "accurate enough" for pre-publication drafts (the ADR 0010 row) needs a validation method that accounts for this. An AI image-adjudicator outperformed the human route on this study's own controls, which is a usable lead for how to do that.
Gating signals unchanged. Hill IT specifics, workflow shape, and DeltaTrack/BillTrax packaging direction are all still outstanding, and none of them depended on this arm. This issue stays blocked for the same reasons as before.
🤖 Generated with Claude Code
- changed the title
[-]Open decision: DeltaTrack delivery channel(s)[/-][+]Open decision: how DeltaTrack reaches staffers (delivery channel), waiting on Hill IT, workflow and packaging signals[/+]on Oct 5, 2026 - added 2 commits that reference this issue
on Oct 5, 2026
What needs deciding
DeltaTrack hasn't decided how it will reach its main users, congressional staffers: as a web page, a browser extension, a desktop install, or something else. The decision is waiting on information from outside the project, not on engineering work. This issue keeps the options, the settled constraints and the evidence in one place, so the question isn't re-argued from scratch. The outcome becomes a new ADR (architecture decision record, in
docs/decisions/).Some background, for anyone new to this:
Where things stand (develop
5ef9a5e, checked 2026-10-05)web/webapp/compare.html:29-33).docs/PRODUCT.md:123records this as a known, deliberate interim state tracked here. Its "browser-only" option is marked "Coming soon" (docs/web-compare.md)..github/workflows/deploy.ymlbuilds an image and deploys it to a Dokku server (Dokku is a self-hosted platform for running apps). It was added 2026-09-13 and set to deploy frommainon 2026-10-03.mainwas last updated 2026-08-11 and doesn't have the workflow yet, so the next production deploy waits on Epic: promote develop to main so the demo and hosted app show current code #555 (the open epic to promotedeveloptomain). Seedocs/deployment.md. This is new investment in the upload channel that ADR 0011 rules out. It doesn't change that ruling, but it raises the question of how long "interim" lasts.scripts/pyodide_parity.py. The PDF path hasn't run end to end in a browser.window.openand WebRTC are outside it. A browser channel's no-egress claim needs a browser- or device-level control and a network-level check.Already decided (not reopened here)
The options
More than one can win. The public-bills-only hosted row is allowed by ADR 0011's "Consequences" section but hasn't been discussed here before.
What would unblock it
docs/research/naming-architecture/README.md.Done when
docs/PRODUCT.md:123anddocs/web-compare.mdare updated to match.Scope
History
PRODUCT.mdnote were added afterwards.Unverified
docs/deployment.mdsays to "ask the host maintainer", and the naming research lists ownership of the domain as open. The maintainer reports that civictechdc holds access.