Skip to content

Commit 006f686

Browse files
missingbulbclaude
andauthored
Remove the popup-states flowchart diagram and its generator (#760)
The five-state decision the popup makes is already specified in prose in requirements.md §12–§16 and in popup.js's chooseContent comment, so the hand-authored PNG was a second, drift-prone copy of the same information. Deletes dev/requirements/shared/popup-states-flowchart.png and the gen-states-flowchart.js that existed only to regenerate it, plus the four references (requirements.md embed, requirements/README.md tree entry, fileDescriptions.md row, popup.js comment pointer). @resvg/resvg-js stays — the UI snapshot renderer still uses it. Claude-Session: https://claude.ai/code/session_01VNBDf82WMVkNPvahd4b9mg Co-authored-by: Claude <noreply@anthropic.com>
1 parent f19eb95 commit 006f686

6 files changed

Lines changed: 1 addition & 168 deletions

File tree

dev/procedures/fileDescriptions.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,5 +55,4 @@ extension does.
5555
| `.claudinite/local/packs/gcec/tasks/generic-extractor-improvements/task.mjs` | The task declaration + precondition (per-project-scheduling §1): frequency `weekly`, model `opus`, outcome `open-pr`; the precondition is the old freshness gate, now pure code over the `commits` signal (fires only on a substantive change) |
5656
| `.claudinite/local/packs/gcec/tasks/generic-extractor-improvements/task.md` | The agentic worker spec: measure the baseline, iterate on one or more generic wins, validate, finalize. The measure→edit→re-measure loop and the genericity/trap constraints live here; the scheduler runs the precondition, so the worker starts from "a meaningful change landed" |
5757
| `.claudinite/local/packs/gcec/tasks/generic-extractor-improvements/postconditions.sh` | Post-work validation of a candidate win: diff-scope, full `npm test`, a real improvement over the committed baseline, and (per value arg) the jsdom-artifact check. Any non-zero exit means the run failed and must not retry or open a PR |
58-
| `dev/requirements/shared/gen-states-flowchart.js` | Regenerates `dev/requirements/shared/popup-states-flowchart.png` (the five-states diagram) via an SVG + resvg |
5958
| `dev/build/release/shipping-files.test.js` | Asserts the shipping list covers every runtime file and excludes dev/test files |

dev/requirements/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,6 @@ dev/requirements/
125125
ui-requirements.js parses requirements.md into leaf ids
126126
build-requirements-gallery.js + requirements-gallery.test.js the two-column gallery
127127
snapshot-artifacts-dir.js where snapshot diffs are written on failure
128-
gen-states-flowchart.js + popup-states-flowchart.png
129128
render/ the popup+icon rendering/diff engine
130129
render-snapshot.js popup-renderer.js icon-renderer.js fake-chrome.js actions.js
131130
refresh-snapshots.js (npm run refresh:ui) visual-snapshots.test.js fonts/

dev/requirements/requirements.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1670,8 +1670,6 @@ is covered by unit tests only.
16701670

16711671
When opened, the popup lands in one of **five states**, decided by the host's classification and what the extractors found (`chooseContent` + the host classifier); *how* each state renders is §1–§3, and those renderings are already pinned there by snapshots: the denylisted empty state (`2.3`), the nothing-found "Disagree?" state (`2.2`/`3.2`), and an unlisted host's event with "Suggest Correction" (`3.1`). This section pins only the two slices §1–§3 don't — each a **real popup snapshot** driven through the production `chooseContent`: whether a **supported** host shows the "Suggest Correction" label (`12.4`), and the completeness rule that decides whether a scraped event is shown at all (`12.6`).
16721672

1673-
![Flowchart of the popup's five states](shared/popup-states-flowchart.png)
1674-
16751673
- `12.4` **Supported host — the "Suggest Correction" label.** A supported host always shows its events (icon stays green); whether it *also* offers "Suggest Correction" depends on whether the host's own extractor contributed them. A host supported by the core generic extractor alone (no per-site file) never shows the label — the generic extractor *is* its support, so nothing was missed:
16761674

16771675
<table>

dev/requirements/shared/gen-states-flowchart.js

Lines changed: 0 additions & 163 deletions
This file was deleted.
-190 KB
Binary file not shown.

extension/events-popup/popup.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,7 @@ export function makeTruncationLabel(shownCards, totalCards, shownEvents, totalEv
257257
// buttons to show (possibly empty), `request` is the prefill for a "request
258258
// support" button (or null), `policyLink` is whether to show the "Disagree?"
259259
// link. The five states, in the order they're decided (specified in
260-
// dev/requirements/requirements.md §12–§16; diagram in dev/requirements/shared/popup-states-flowchart.png):
260+
// dev/requirements/requirements.md §12–§16):
261261
//
262262
// State 1 — supported host (its host is in `supportedDomains`): show its
263263
// events. That's the same list the toolbar icon colors itself from, so the

0 commit comments

Comments
 (0)