Repository navigation
v0.1.0 (preview)
Pre-release
Pre-release
Serving image: ghcr.io/professor3333/triggermap@sha256:0b9e2f30c328959d0ed8fe82677757b6276bef89ce322ebcc6b0d07ffce9adac (also in release-image.json).
A preview release, not a quality-gated one. The acceptance gates in
docs/targets.md are judged on hand-labelled test records. Only 4 exist,
because every annotation batch after the pilot was submitted from model drafts. No gate has
been evaluated, and the test split has not been read
(docs/test-access-log.md has no entries).
What is in it
- Serving image: built by
release.ymlfrom this tag withEXTRAS="serve baselines", so it
serves both the rules model and the CRF. Its digest is in the attachedrelease-image.json. - Default model:
crf-batches-01-02, a CRF tagger with logistic-regression category, role and
group classifiers. Its bundle weights SHA-256 is
d1f8cb5a94b0ba4540c585d902543e13e8b4252b9c21891f29bf6381b0c07056.- Trained on 239 train-split records: 7 hand-labelled, 232 model drafts.
- Preprocessing version
1.
- Review policy:
review-policy-0, uncalibrated, so every prediction is flagged
Review required. Thresholds fitted on model drafts measure agreement, not accuracy, so
none is applied.
What was measured (dev split only)
- Agreement with model drafts, held-out half (61 documents; not accuracy):
- CRF typed F1 0.127 [0.054, 0.201];
- DeBERTa-v3-small 0.185 [0.145, 0.235]; the paired difference is not clear.
- Hand-labelled accuracy (10 dev documents): CRF typed F1 0.370 [0.000, 0.640].
- Why the CRF, not DeBERTa: after calibration DeBERTa keeps more agreeing conditions at the
same precision. It is not clearly more precise, and it does not invent fewer prerequisites,
which was the pre-set condition for switching
(reports/calibration/). - Deployment checks, local Docker on 2026-11-06:
- the container smoke test passed;
app verifypassed: ready check against the manifest, extraction, idempotent review save,
retrieval and export;- the rollback drill
r1(rules) →v0.1.0(CRF) →r1passed in 15 seconds, with
reviews kept.
- Not measured: the 2 vCPU / 4 GB target-host benchmarks.
Model bundle
crf-batches-01-02.tgz (attached to the release) holds the bundle directory
crf-batches-01-02/, with tagger.crfsuite, classifiers.joblib and metadata.json.
- Archive SHA-256:
65677a7413e02a8da4ba3b920ac7eb8e02a8cba874876d93810d4ae5fc76d29a. - Bundle weights digest:
d1f8cb5a…07056, whichrelease.jsonrecords and the app checks
at start-up. - Trust:
classifiers.joblibis a pickle, so load it only from this release, after
checking the SHA-256. - License: the CRF's feature vocabulary is derived from GitHub Advisory Database text and
the TriggerMap annotations (CC BY 4.0, modified). Attribution and licence details are in
annotations/README.md.
Deploying it
Follow docs/deployment.md with the image digest from
release-image.json:
gh release download v0.1.0 --pattern crf-batches-01-02.tgz
shasum -a 256 crf-batches-01-02.tgz # must match the SHA-256 above
tar -xzf crf-batches-01-02.tgz
uv run triggermap release create v0.1.0 --image ghcr.io/professor3333/triggermap@sha256:<digest> \
--model crf --model-dir crf-batches-01-02