/ README.md
README.md
  1  # WriterAIScore
  2  
  3  > **Public name:** *WhoWroteThis*. The repository keeps the name
  4  > `WriterAIScore` for commit-history continuity; the published extension,
  5  > its manifest `name`, the Chrome Web Store listing, and all user-facing
  6  > copy use *WhoWroteThis*. Decision date: 2026-04-17. See
  7  > [`grill.org`](./grill.org).
  8  
  9  A browser extension that surfaces author-trust signals on book marketplaces, so
 10  a Buyer can judge authorship authenticity at the point of purchase decision.
 11  
 12  **Status:** pre-implementation. Planning documents only; no extension code yet.
 13  See [`v0.1-plan.org`](./v0.1-plan.org) for the v0.1 plan and
 14  [`grill.org`](./grill.org) for the decision log.
 15  
 16  ## The problem
 17  
 18  AI-manufactured "Synthetic Authors" publish **Laundered Content** — books
 19  algorithmically reshuffled from real scholars' work — under pseudonyms on
 20  Amazon, Goodreads, and other marketplaces. Every traditional trust signal
 21  (first-person voice, review volume, professional formatting) can now be
 22  manufactured faster than the platforms can police it. The "Blake Whiting" case
 23  documented by *The American Scholar* is the canonical example. See
 24  [`blake-whiting-trust-brief.org`](./blake-whiting-trust-brief.org).
 25  
 26  ## What the extension does (v0.1)
 27  
 28  - Detects the **Author** on an Amazon `/dp/` product page via the
 29    **Adapter**.
 30  - Extracts the Amazon author ID from the byline link, fetches the Author's
 31    `/author/` page (same-origin, no external API), and caches the parsed
 32    catalog in the **Author Cache** with a 7-day TTL.
 33  - Computes two counts of the Author's **Publication Velocity** — rolling
 34    last-12-months and current calendar year — using Amazon's own
 35    parent-ASIN grouping and Amazon's displayed publication dates.
 36  - Renders an **Info Card** adjacent to the byline showing both counts,
 37    attributed *per Amazon's catalog*. The Buyer draws their own conclusion
 38    — the extension does not label anyone a **Synthetic Author**, does not
 39    compare against a **Baseline**, and does not apply colour, threshold,
 40    or categorical highlighting.
 41  
 42  v0.1 ships raw Publication Velocity numbers — not a Baseline comparison,
 43  not a **Burst** flag, not a composite **Trust Score**. Later versions add
 44  an `/author/`-page timeline (v0.2), a search-results surface (v0.3), and
 45  multi-source enrichment including Verify-the-Human signals (v0.4). See
 46  [Versioned scope](./UBIQUITOUS_LANGUAGE.md#versioned-scope).
 47  
 48  > **Name resolved:** the repository name is `WriterAIScore` (commit-history
 49  > continuity). The public-facing product name is *WhoWroteThis* — manifest
 50  > `name`, Chrome Web Store listing, and Info Card branding all use
 51  > *WhoWroteThis*. This dual-identity was a deliberate 2026-04-17 choice.
 52  
 53  ## Glossary
 54  
 55  Compact term list for orientation. See
 56  [`UBIQUITOUS_LANGUAGE.md`](./UBIQUITOUS_LANGUAGE.md) for canonical definitions,
 57  aliases to avoid, and usage rules.
 58  
 59  ### Actors
 60  
 61  - **Buyer** — person at point of purchase; the extension's primary user.
 62  - **Reader** — post-purchase consumer; distinct from Buyer.
 63  - **Author** — person or identity on a book's byline.
 64  - **Original Author** — real human whose work was appropriated.
 65  - **Synthetic Author** — pseudonymous identity with no verifiable human.
 66  - **Fraudster** — actor operating one or more Synthetic Authors.
 67  - **Publisher** — organization vouching for and distributing content.
 68  - **Marketplace** — retail platform (Amazon, Goodreads, Barnes & Noble, Apple
 69    Books, Kobo).
 70  
 71  ### The fraud
 72  
 73  - **Laundered Content** — material algorithmically reshuffled from Original
 74    Authors' work to evade plagiarism detection.
 75  - **Pseudonymous Listing** — Marketplace listing attributed to a Synthetic
 76    Author.
 77  - **Attribution Loss** — Original Author receives no credit or royalty.
 78  
 79  ### Trust machinery
 80  
 81  - **Trust Signal** — a single observable input informing authorship judgement.
 82  - **Trust Score** — weighted composite of multiple Signals (not in v0.1).
 83  - **Publication Velocity** — books per time window; the primary v0.1 Signal.
 84  - **Baseline** — typical Publication Velocity for a human Author in a Genre.
 85  - **Genre** — book-subject category scoping the Baseline.
 86  - **Burst** — abnormally concentrated Publication Velocity (derived Signal).
 87  - **Topic-Spread Entropy** — Signal measuring subject unrelatedness across an
 88    Author's books.
 89  - **Provenance** — cryptographic attestation of a work's origin and edit
 90    history.
 91  - **C2PA Manifest** — the concrete Provenance record per the C2PA specification.
 92  
 93  ### Verification strategies
 94  
 95  - **Verify the Human** — confirm the Author is a real identifiable person.
 96  - **Verify the Content** — confirm the work's origin and authenticity.
 97  - **Verify the Signal** — confirm surface signals (reviews, badges, listings)
 98    are themselves trustworthy. *v0.1 strategy.*
 99  
100  ### Extension anatomy
101  
102  - **Info Card** — injected UI showing Trust Signals next to the byline.
103  - **Content Script** — the per-page component that detects the Author and
104    renders the Info Card.
105  - **Lookup** — query to a book-metadata API resolving Author → book list.
106  - **Author Cache** — local per-browser TTL'd store of prior Lookups.
107  - **Adapter** — per-Marketplace module that extracts the Author from the DOM.
108  
109  ## Related documents
110  
111  - [`v0.1-plan.org`](./v0.1-plan.org) — v0.1 MVP plan and action order.
112  - [`grill.org`](./grill.org) — full record of the 15-question grilling
113    session that produced the v0.1 plan.
114  - [`UBIQUITOUS_LANGUAGE.md`](./UBIQUITOUS_LANGUAGE.md) — canonical glossary,
115    versioned scope, flagged ambiguities.
116  - [`GUARDRAILS.md`](./GUARDRAILS.md) — repo operating constraints.
117  - [`blake-whiting-trust-brief.org`](./blake-whiting-trust-brief.org) —
118    summary of the motivating article and ten mitigation strategies.
119  - [`blake-whiting-analysis.org`](./blake-whiting-analysis.org) — deeper
120    analysis of the Blake Whiting case.
121  - [`blake-whiting-extension-idea.org`](./blake-whiting-extension-idea.org)
122    — original extension concept (pre-grilling; superseded by
123    `v0.1-plan.org`).
124  - [`local-extension-idea.org`](./local-extension-idea.org) — the retained
125    rhetorical **foil** (accusatory framing), preserved as contrast for
126    the neutrality rule. Not a candidate design.
127  
128  ## Using this glossary
129  
130  Code identifiers, UI copy, commit messages, and docs should use the canonical
131  term and avoid the flagged aliases. When reviewing a PR, treat drift from
132  `UBIQUITOUS_LANGUAGE.md` as a review comment, not a nitpick — a ubiquitous
133  language only works if it is enforced.