The moat is a pile of read datasheets.
A part record takes 30 to 60 minutes against the datasheet. Every pin with its type, pads, aliases, rail reference and levels as rail ratios; rails with per-state currents and decoupling specs; thermal; strapping with consequences; sourcing IDs. Currents are captured at their absolute maximums as well as in operation, and every field carries a provenance tag.
What's in there, by category.
Today's category enum is coarse on purpose — other holds 106 records and sensor has no kind split. Fixing the taxonomy comes before the census becomes a live page.
You always know where the number came from.
A named person on the allow-list read the datasheet and signed the field.
Taken directly from the manufacturer's document, with the reference.
Generated at build time from the vendor's own database. Never hand-typed.
A model read the datasheet. Every finding that consumes it says so, by name.
Derived, not read. The weakest tier, and it degrades the whole report's trust.
Bring your own record
We can't curate every part, so the format is the contract. Your record is a part record against the same schema, run through the same invariant linter at intake — pad and alias collisions, rail reference integrity, strapping completeness, unit totality, trust consistency. A record that doesn't pass is refused with the findings, never loaded partially.
And it can't borrow our trust
Your record's provenance is whatever you tag it — human for your own datasheet reading, llm_extracted for an agent draft — and the report degrades accordingly. Verification identities stay bound to a policy allow-list, so a user record can never claim ours. Your record is yours; we never mirror it without your say-so.
Name the parts you need verified.
Verification is demand-driven. The parts on your list decide which datasheets we read next — and they go to the front of the queue.