Skip to content

v2.0.4: product-rule checks (bank names, version bump, duplicate versions) - #57

Draft
gitluis wants to merge 3 commits into
masterfrom
ci-product-rules
Draft

gitluis wants to merge 3 commits into
masterfrom
ci-product-rules

Conversation

@gitluis

@gitluis gitluis commented Nov 4, 2026 •

Copy link
Copy Markdown
Owner

On hold — draft on purpose. Part of the v2.0 — Public launch milestone. Leave this open until the app is more mature, renamed and on a custom domain. Mark it "Ready for review" when you want to merge it.

⚠️ Its check is red on purpose for now. master still has 221 bank names (they're removed by the redesign stack, #16–#51). It passes on the top of the stack. Merge this after the stack.

Summary

Adds a Product rules check that runs on every pull request and every push to master. It enforces the house rules that are easy to miss by hand. The app itself doesn't change.

Rule Checks Skips (past history, as you decided)
No bank names Every tracked file and file name, whole words, any case, from .github/bank-names.txt (28 names, incl. Puerto Rico banks) Older CHANGELOG entries (only the newest is checked), docs/eval-runs/, docs/archive/, docs/EVAL.md, docs/eval-results.json, and js/migrate.js (the migration has to recognize the old ids)
Version everywhere The top CHANGELOG version is also in the index.html footer, both README lines, Settings → General and CLAUDE.md §1 (§17) —
Newer than base (PRs only) The PR's version is higher than its base branch's —
Not already taken (PRs only) No other open PR's newest CHANGELOG entry uses the same version —

The last one catches the "version already taken" problem before merging, instead of renumbering after a conflict.

Names that are also everyday words ("Popular", "Discover", "Citizens") are listed only in forms that can't be everyday words ("Banco Popular", "Popular Bank"), so normal text doesn't trip the check. Edit the list freely; it's plain text.

Version: v2.0.4 (renumbered from v2.0.3 when the rename PR #58 took v2.0.2 and #56 moved to v2.0.3; the renumber commit message names the wrong PR version, this line is the correct one).

How it was tested (locally)

  • master content: 221 bank names in 33 files (Ally, Chase, and one "Fidelity" in an account-name placeholder). The PR's own check is red because of this.
  • Top of the stack (v1.18.1: add MIT license #51, v1.18.1): 0 bank names, all version places match. Two things came up while testing and I adjusted the check for both: js/migrate.js legitimately keeps the old ids, and the redesign shows "FinLens v1.18.1" without the · that master has.
  • Duplicate version: ran it on PR v2.0.0: CI checks on pull requests (JavaScript syntax, CDN SRI) #54's branch (v2.0.0) → error "Version v2.0.0 is already used by open PR v2.0.0: CI checks on pull requests (JavaScript syntax, CDN SRI) #54".
  • No version bump: compared this branch against itself → error "v2.0.3 is not newer than … v2.0.3" (tested before the renumber).
  • On this branch as a PR (before the renumber, as v2.0.3): it was newer than master and not used by any of the other 39 open PRs.
  • Not tested: the GitHub Actions run itself. On this PR it should fail only on bank names. The version checks should pass.

Manual testing (step by step)

  1. Open the Checks tab → Product rules / Bank names and version. It should be red.
  2. Open it. The bank-name errors should point at files and lines (e.g. CLAUDE.md, js/core.js, samples/… file names). The last lines should say Version: v2.0.4, Newer than master (v1.10.5) and Not used by any of the other … open PRs, with no version errors.
  3. Open Files changed → CHANGELOG.md. The bank names in older entries are not flagged, only new text would be.
  4. After the stack merges, use Update branch on this PR. The check should turn green.

Please check before merging

https://claude.ai/code/session_013Z8iBUNj6C627mxmm1CurV


Generated by Claude Code

@gitluis gitluis added this to the v2.0 — Public launch milestone Nov 4, 2026 — with Claude
@gitluis gitluis added ci CI, GitHub Actions and repo tooling on-hold Ready, but intentionally left open until a later decision labels Nov 4, 2026 — with Claude
…low the merge order

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013Z8iBUNj6C627mxmm1CurV
@gitluis gitluis changed the title v2.0.3: product-rule checks (bank names, version bump, duplicate versions) v2.0.4: product-rule checks (bank names, version bump, duplicate versions) Nov 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci CI, GitHub Actions and repo tooling on-hold Ready, but intentionally left open until a later decision

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants