Skip to content

docs: "source cell" describes 6% of the corpus — say what we actually keep - #32

Merged
jeremiahsay merged 1 commit into
mainfrom
fix/source-reference-wording
Sep 13, 2026
Merged

jeremiahsay merged 1 commit into
mainfrom
fix/source-reference-wording

Conversation

@jeremiahsay

Copy link
Copy Markdown
Collaborator

Site-side half landed in plugin v6.1088.0; this is the SDK/Sheets/Postman half.

The measurement

Sampled 1,453 rows across nine key_prefix queries at data version 2026.192: 84 cite a spreadsheet cell.

prefix sampled spreadsheet-cell shaped
fuels 200 39.5%
water 4 50.0%
grid 200 1.5%
materials, freight, spend, refrigerants, gwp, waste 849 0.0%
total 1,453 5.8%

Rows carrying no source reference at all: zero. The traceability claim was right; the noun was wrong. DEFRA ships a spreadsheet, so a DEFRA row cites a cell. The IPCC ships chapter tables, CBAM an Annex with CN codes, ECCC a model database, the Dutch factors a URL — all exact, all checkable, none of them cells.

Not a new judgement: check-mb-shape has required "the exact cell/table/page, not just the document" since v1.26, and plugin v6.685.0 already made this correction for the Factor Watch alerts and was never swept.

Kept as "cell" on purpose

  • The DEFRA worked examples in sheets/README.md and the Postman sample — a cell genuinely is the reference there.
  • core.js's cell field description now says what the field actually holds: "a workbook cell, a table row or an annex clause".

Gates

  • sheets test suite: 21/21 pass
  • node --check on core.js and Code.js: clean
  • postman/check-collection.mjs: 28 requests, 0 failing, 3 skipped
  • postman/check-collection-parity.mjs: PASS
  • Collection regenerated from the live spec after editing description.md.

Two deploy actions this PR does NOT perform — your call

  1. sheets/src/{core,Code}.js + Sidebar.html carry user-visible strings. They reach installers only on a clasp push plus an App Configuration version bump. The live listing currently pins script v3 — the same reason the duplicate Help menu entry is still open. Merging this does not change what an installed add-on says.
  2. sheets/store/card-220x140.svg is a published store asset. The repo copy is now correct; the listing keeps showing the old card until it is re-uploaded.

Out of scope, flagged

The Postman per-request description ("the exact source cell behind each value", on the source-feed endpoint) is generated from the live OpenAPI spec, so it is gateway-owned. Fixing it means a gc-api-gateway change and deploy.

Separately, scripts/drift/run.mjs in the plugin repo is red on origin/main for an unrelated reason worth a look: gateway PR #117 documented /v1/account/watch, /watch/remove and /watch/digest with required fields (key, key, cadence) the origin never reads — that breaks the first call a developer makes against those paths.

🤖 Generated with Claude Code

https://claude.ai/code/session_01LeaxFttn3GPPVq1yj3Jjuk

… keep

Sampled 1,453 rows across nine key prefixes at data version 2026.192:
84 cite a spreadsheet cell. That is 5.8% — 39.5% under fuels, 1.5% under
grid, 0% under materials, freight, spend, refrigerants, gwp and waste.
Rows carrying no source reference at all: zero.

So the traceability claim was right and the noun was wrong. DEFRA ships a
spreadsheet; the IPCC ships chapter tables, CBAM an Annex with CN codes,
ECCC a model database, the Dutch factors a URL. check-mb-shape has
required "the exact cell/table/page" since v1.26 and the platform made
this same correction once already (plugin v6.685.0, Factor Watch alerts)
without sweeping it. Site side landed in plugin v6.1088.0; this is the
SDK half.

Where a cell genuinely is the reference it stays — the DEFRA worked
examples and the E25 assertion in the LangChain behaviour test are
untouched.

TWO DEPLOY ACTIONS THIS DOES NOT PERFORM, both the owner's call:
  1. sheets/src/{core,Code}.js and Sidebar.html carry user-visible
     strings. They reach installers only on a `clasp push` plus an App
     Configuration version bump, and the live listing currently pins
     script v3 — same reason the duplicate Help entry is still open.
  2. sheets/store/card-220x140.svg is a published store asset; the repo
     copy is now correct and the listing still shows the old card until
     it is re-uploaded.

The Postman per-request description ("the exact source cell behind each
value") is generated from the LIVE OpenAPI spec, so it is gateway-owned
and unchanged here. The collection-level copy in description.md is
fixed; collection regenerated, check-collection and
check-collection-parity both pass.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LeaxFttn3GPPVq1yj3Jjuk
@jeremiahsay
jeremiahsay merged commit 6130ab1 into main Sep 13, 2026
7 checks passed
@jeremiahsay
jeremiahsay deleted the fix/source-reference-wording branch September 13, 2026 09:17
jeremiahsay added a commit that referenced this pull request Sep 13, 2026
…e spec

The per-request description on GET /v1/sources/{id} said "the exact
source cell behind each value". It is generated from the live OpenAPI
spec, so PR #32 could not reach it; gateway PR #124 fixed the spec and
deployed. This picks it up.

check-collection: 28 requests, 0 failing, 3 skipped. Parity: PASS.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LeaxFttn3GPPVq1yj3Jjuk
jeremiahsay added a commit that referenced this pull request Sep 13, 2026
…ative step

Pushed the "source cell" -> "source reference" wording (PR #32) to the
script and cut version 5; moved the bound deployment @3 -> @5. Verified
before pushing that the remote HEAD differed from the repo by exactly
those strings and nothing else, so nobody's Apps Script UI edit was
clobbered. appsscript.json untouched: no new scopes, no re-review.

What an installer sees still has not changed. This is an EDITOR add-on,
so Marketplace SDK -> App Configuration pins a script VERSION NUMBER, not
a deployment id — the README already said so and the redeploy is only
housekeeping. Setting App Configuration to 5 is a console step.

Also: `clasp version list` is not a subcommand in clasp 3.x. It reads
"list" as the version description and silently creates a version, which
is where the junk v4 came from. The listing commands are
`clasp list-versions` / `clasp list-deployments`.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LeaxFttn3GPPVq1yj3Jjuk
jeremiahsay added a commit that referenced this pull request Sep 13, 2026
… the PNG

PR #32 corrected sheets/store/card-220x140.svg and stopped there. The
Marketplace store listing uploads the PNG, and that was still the raster
built from the pre-correction SVG, so the repo said one thing and the
file anyone would actually upload said the other.

Regenerated from the corrected SVG at the same 220x140:
  rsvg-convert -w 220 -h 140 card-220x140.svg
  pngquant --force --skip-if-larger --strip --quality 75-92

Compared old against new before committing: identical but for the one
line, "value · source cell · data version · citation" ->
"value · source ref · data version · citation". 14,713 -> 4,251 bytes,
because the previous build was 8-bit RGB and this one is palettised;
text is clean at that size.

All four store screenshots checked and left alone — none of them show
the corrected string. screenshot-2 happens to show a factor card citing
"ECCC_EF_2025 · Table 4.1", which is the argument for the wording change
rather than against it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LeaxFttn3GPPVq1yj3Jjuk
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant