Skip to content

Statements: installable PWA + nftables volume populator + app roadmap - #9

Merged
a777ance merged 1 commit into
mainfrom
claude/inspiring-fermi-FIdYr
Jun 3, 2026
Merged

a777ance merged 1 commit into
mainfrom
claude/inspiring-fermi-FIdYr

Conversation

@a777ance

@a777ance a777ance commented Jun 3, 2026

Copy link
Copy Markdown
Owner

What this does

Adds the backend pieces that support the statement mockups, and makes the gallery
installable on phone and laptop.

① Installable PWA (the phone + laptop demo, no app store)

  • manifest.webmanifest, sw.js (offline precache of the gallery + statements), and
    branded A7 icons in icons/ (generated by tools/make_icons.py).
  • Wired into index.html only — individual statement files stay self-contained
    (no external assets / no JS), which is deliberate.
  • Verified locally: manifest is valid JSON, sw.js passes node --check, and every
    asset serves 200 over HTTP.
  • Works on both: laptop browsers + Chrome/Edge "Install"; phones via "Add to Home
    Screen." Opens full-screen, works offline.
  • Publishing: merging to main triggers the existing pages.yml. (Feature branches
    can't deploy — the github-pages environment is locked to the default branch, which
    is exactly why this needs to land on main.)

② Real volume data — the one measured-data gap

  • tools/collect/populate_sets.py resolves categories.json → public CDN IPs and feeds
    the nftables accounting sets (the previously-missing half of the volume layer; the
    counters were empty without it). Filters to globally-routable IPs; default dry-run,
    --apply on the box. Tested: 256 IPs across 8 categories.
  • tools/collect/README.md — deploy + cron runbook (also fixes the dangling
    collect/README.md references in nftables-accounting.nft).
  • README data-sourcing table: volume-by-category moves from buildable → built, run it
    on the box
    .

③ Roadmap

  • APP-ROADMAP.md — the honest path from mockup to a real app (PWA → real data → service
    backend → native + store), with the data-honesty gate.

Still sample, on purpose

The 20-home operator portfolio and the peer benchmarks remain sample data
(random.seed(77)), per the repo's own rule against printing invented averages. This PR
does not fabricate client data — it makes one home's numbers real.

Minor note

pages.yml gains this branch in its trigger list (consistent with the existing
claude/meta-audit-… entry). Harmless on main; happy to prune the trigger list if you'd
prefer it clean.

https://claude.ai/code/session_01BmHwvmJ25nDxDGX5hhjFkM


Generated by Claude Code

Make the gallery installable on phone/laptop and close the one real data gap.

PWA (phone + laptop demo, no app store):
- manifest.webmanifest, sw.js (offline precache), branded A7 icons
  (icon.svg + 192/512/maskable/apple-touch PNGs via tools/make_icons.py)
- wired into index.html only (manifest, theme-color, apple-touch, SW register)
  so individual statement files stay self-contained
- pages.yml now also publishes from this branch

Real data (volume by category):
- tools/collect/populate_sets.py resolves categories.json -> public CDN IPs and
  feeds the nft accounting sets (the previously-missing half of the volume layer)
- tools/collect/README.md: deploy + cron runbook (fixes the dangling references
  in nftables-accounting.nft)
- README data-sourcing: volume moves from 'buildable' to 'built, run on the box'

Roadmap:
- APP-ROADMAP.md: honest path from mockup to real app (PWA -> data -> service
  backend -> native + store) with the data-honesty gate
@cloudflare-workers-and-pages

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
❌ Deployment failed
View logs
cloudflarelocaldns 6d3fc88 Jun 03 2026, 07:05 PM

@a777ance
a777ance merged commit 6134824 into main Jun 3, 2026
0 of 2 checks passed
@a777ance
a777ance deleted the claude/inspiring-fermi-FIdYr branch August 8, 2026 18:24

This branch had an error being deployed

1 failed deployment
github-pages — 6d3fc888 Deployed Jun 3, 2026 by a777ance via deploy #3
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.

2 participants