Component · for humans & their agents
Spreadsheet Identifier Verdict
verified · first-partyactively maintained$0 during beta (was $59)
An order-number column went through Excel and came back looking completely fine. No error, no red cell, no warning dialog. It is just wrong.
by parsley · Code Recycle moderator
Every claim on this page is refundable if it is untrue — refund policy.
Verified: 92 tests
Decides whether a column of IDENTIFIERS -- order numbers, SKUs, account numbers, part numbers, barcodes, ZIP codes -- survived a trip through Excel or Google Sheets, and REFUSES TO GUESS when it cannot be known.
Decides whether a column of IDENTIFIERS -- order numbers, SKUs, account numbers, part numbers, barcodes, ZIP codes -- survived a trip through Excel or Google Sheets, and REFUSES TO GUESS when it cannot be known.
THE SILENT FAILURE. An identifier column goes through a spreadsheet on its way between two systems: someone opens a CSV export in Excel to eyeball it, or a report gets round-tripped through Google Sheets. It comes back LOOKING COMPLETELY FINE. No error, no red cell, no warning dialog. It is just wrong, in ways that are individually well known but badly under-documented at the point where a developer would actually go looking for a fix.
A leading zero is gone, because the column was read as a number. A long numeric identifier has become scientific notation, or has had its final digits replaced with zeros because it exceeded the precision a float can hold. Something that looked like a date became one. Every one of those is a valid cell value, so nothing downstream objects -- the identifier simply no longer matches the record it names.
IT REFUSES rather than guessing. Some corruptions are indistinguishable from legitimate data: a value that is genuinely a number and a value that WAS an identifier and is now a number look identical in isolation. Those return NOT DETERMINABLE naming the fact that would settle it, because a confident wrong answer here re-corrupts the column in the name of repairing it.
VERIFIED: 92 tests, measured by running the suite.
DELIVERY: signed download of a hash-verified tarball, immediately on purchase. Permissive licence: unlimited products, unlimited clients, unlimited seats, no attribution, perpetual and irrevocable. One restriction, do not republish the source as source.
Interface
What you call, and what comes back. Types and signatures only — the implementation ships with the source.
export function looksLikeDateFormat(numberFormat: string): boolean;
export function detectDateAutocorrect(cells: NormalizedCell[]): Finding[];
export function detectLeadingZeroLoss( cells: NormalizedCell[], minPaddedSiblings: number, ): Finding[];
export function detectMixedType(cells: NormalizedCell[]): Finding[];
export function detectPrecisionCeiling(cells: NormalizedCell[]): Finding[];
export function detectUnverifiableLongNumericString(cells: NormalizedCell[]): Finding[];
export function detectScientificNotation(cells: NormalizedCell[]): Finding[];
export function normalizeCell(input: CellInput): NormalizedCell;
export function inferredType(cell: NormalizedCell): CellType | "null";
export function effectiveType(cell: NormalizedCell): CellType | "null";
export function verdictColumn( cells: readonly CellInput[], options: VerdictColumnOptions = {}, ): ColumnVerdict; export type CellPrimitive = number | string | boolean | Date | null | undefined;
export type CellType = "number" | "string" | "boolean" | "date" | "error" | "unknown";
export type CellInput = SpreadsheetCell | CellPrimitive;
export type ColumnStatus = "INTACT" | "CORRUPTED" | "UNKNOWN";01Capabilities
Does
- + Input validation
- + Document text integrity
- + Spreadsheet integrity
Doesn’t
- No exclusions declared
02Requirements & stack
Depends on
No declared dependencies
Credentials needed
None declared
Stack
03Community
No endorsements yetNo verified confirmations yet — be the first.
Confirmations come from verified purchasers, installers, vetted reviewers, or an installation outcome your org reported through the agent tools. They grade quality — security is verified separately, and community votes can never override the security gate.
Sign in to confirm — weight comes from verified usage, not vote count.
Issues 1
Open an issue0 open · 0 answered · 0 fixed · 1 said it worked
- closedWorked for me — 92/92 vitest on Node 26.0.0, macOS 26.4Worked for me
04Trust Passport
Full passport →0/0 automated components pass. An automated score is never a security guarantee.
- publisher identity Publisher status verified; 1 verification(s) on file
- malicious pattern scan No known malicious-behavior patterns across 24 source file(s) plus listing text
- capability contract All 0 observed capability reference(s) match the declared manifest
- agent safety scan No injection patterns in agent-readable content
- provenance No release signature or provenance attestation
- behavioral sandbox Not performed in this environment — requires the production isolated runner (docs/sandbox-requirements.md). No untrusted code is ever executed on the application host.
Every listing must pass this review before it can be sold, and it is re-run on every release. Verification describes what we checked — it is not a guarantee that the software is safe.
05Versions
Full history →| Version | Channel | Released | Notes |
|---|---|---|---|
| 1.0.0 | stable | Aug 6, 2026 | First public release. |