Ranked purchase decisions with prices that are always traceable to a source
- Go 90.1%
- HTML 8.4%
- Nix 1.2%
- Makefile 0.3%
A Go service that turns a purchase question asked in the Claude app into a
ranked comparison page, and lets it be refined over rounds.
The design goal is that a fabricated price be structurally impossible rather
than merely discouraged. Three layers enforce it:
* the MCP tool surface has no price parameter anywhere — the model supplies
product URLs and judgement, never a number;
* the server reads prices itself from Prisjakt product pages, anchored on
/go-to-shop/ offer links so a struck-through was-price cannot be mistaken
for the current one;
* a database CHECK constraint refuses to store a showable price that lacks
an amount, a shop, a source URL and a fetch date.
A lookup that fails is recorded as a failure and renders as "unverified" with
a search link. The worst case is honest silence.
Ratings are words with a stated basis, never a composite score: a number
distilled from ordinal judgements is unfalsifiable in a way the words are not.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
||
|---|---|---|
| internal | ||
| .envrc | ||
| .gitignore | ||
| flake.nix | ||
| go.mod | ||
| go.sum | ||
| main.go | ||
| Makefile | ||