# Build-vs-buy record · Library staff assistant · MVP 1

*Specimen: real structure, dummy content. The product, the options and every number on this page are
invented to show how a decision record is kept. Options are named by kind, not by vendor. † marks a
dummy value.*

**Header block:** product · *Library staff assistant* · version 1.0 · 2026-04-10† · owner: tech lead ·
approved by: product owner · constraints that decide most rows: data residency in-country (PRD NFR-5),
no patron data (PRD §2), monthly cost cap ₹ 20,000† (risk register R-07)

## 1 · Adopted
| Need | Option adopted | Build or buy | Why this one | Revisit when |
|---|---|---|---|---|
| Store and search passages | One relational database with a vector extension and full-text search | Buy (open source, self-hosted) | Both search legs in one store; runs in-country; one thing to back up | Corpus passes 100,000† passages |
| Embed passages | An open-weight embedding model, run locally | Buy (open weights) | No passage leaves the deployment | A model scores ≥ 5 points† higher on E-ANS |
| Generate answers | A hosted model in an in-country region | Buy (API) | Meets NFR-5; cost within cap at projected volume | Cost passes 80 %† of the cap |
| Classify patron-data questions | Rules written in the service | Build | Testable case by case; no model to evaluate | Refusal floor missed |
| Eval gate | A script over fixed case sets | Build | The floors are ours; it runs before every sign-off | — |

## 2 · Declined
| Option | Reason recorded | Kind of reason |
|---|---|---|
| A hosted vector-search service | Stores passages outside the country | Environment (NFR-5) |
| A document-parsing library under a copyleft licence | The licence would reach the delivered service | Licence |
| An agent framework that lets the model choose its next step | The answer path is fixed: classify, retrieve, threshold, generate. Model-decided control flow is kept out, by decision | Fixed control flow |
| A hosted tracing service for model calls | Question logs would leave the deployment, and staff questions can contain patron details (R-08) | Environment and data |
| Fine-tuning a model on the handbook | The handbook changes monthly; retrieval reflects a change the day it is published, a fine-tune does not | Fit |

---
*What is real here: adopted and declined kept in one record, each declined option with its reason, the
reason named by kind (licence, environment, fixed control flow), and a condition for revisiting each
adopted choice. Everything inside the tables is invented.*
