01 — What you start with
A document nobody has checked
Northstar Analytics — 2027 renewal brief
…
Vendor: Northstar Analytics
Annual renewal fee USD: 48000
Renewal date: 2027-04-01
Renewal posture: automatic
Notice period days: 45
Security assurance: SOC 2 Type II report requested, 2026 report not yet received
Hosting region: United States
Open questions for the reviewer:
The signature page of the executed agreement records a renewal date of
2027-05-15, which does not match the commercial schedule reproduced above.
…
Somebody has to get that renewal date into the system that will chase it — and this brief carries two dates. Today somebody retypes one of them, and nobody can tell afterwards which line they read. Lines are verbatim from thevendor-obligations source that ships in the package; each … stands for lines left out for length.
02 — What Fieldwork proposes
Seven values, each with its receipt
commercial.annualFeeUsd
48000
found in “Annual renewal fee USD: 48000”chars:332-361
renewal.date
2027-04-01
found in “Renewal date: 2027-04-01”chars:362-386
security.assurance
SOC 2 Type II report requested, 2026 report not yet received
found in “Security assurance: SOC 2 Type II report requested, 2026 report not yet received”chars:437-517
Three of the seven, above. None of this is data yet: every row lands in a review queue with the source open beside it, andchars:362-386 is the exact stretch of the document the value was read out of — so checking a value means reading one line, not trusting a score. Five of the seven confirm on sight. The renewal date is contradicted further down the same document, and the security assurance names a report nobody has received.
03 — What you can’t do until you’ve looked
The export refuses
export with one row still open npm exec -- fieldwork export .fieldwork/runs/run-cdecb02ac92d8fa1 --output reviewed.json --json
{"ok":false,"error":{"code":"FIELDWORK_ERROR","message":"Export refused: unresolved-review-item"}}One refusal per row nobody has settled — seven of them on a fresh run, and still one here after five accepts and acould not confirm, because the contested date is open.reviewed.json is never written. Resolve the last row and the file exists: each value carries the line it came from (sourceLocator, excerptOrSummary), who settled it, and when — and the assurance nobody could confirm stays"status":"proposed" rather than passing itself off as verified.