Skip to content

Home page: draw the configuration, every connection - #277

Merged
sonyccd merged 3 commits into
mainfrom
home-page-config
Oct 27, 2026
Merged

sonyccd merged 3 commits into
mainfrom
home-page-config

Conversation

@sonyccd

@sonyccd sonyccd commented Oct 27, 2026

Copy link
Copy Markdown
Owner

A follow-up to #276. These changes were pushed to its branch after it had already merged, so they never reached main.

The Home page's flow diagram now shows the system's configuration, not only what flowed in the last 24 hours. The 24-hour numbers only label the nodes and set link widths; nothing leaves the diagram for being quiet.

What changes on the page

  • Every connection is shown. The top-6 cap is gone, along with the "N more connections" node and the "+N more" source and destination nodes.
  • Every source each connection takes spots from is linked, traffic or not, including "any source", which is expanded in SQL. Quiet links are drawn at the 2 px floor.
  • Every destination is shown, including ones no connection sends to yet (at the bottom, with no links).
  • A connection's dot takes the source it matched most from, or its first configured source when it matched nothing.
  • The caption loses "Showing your top 6 connections."

Data

New migration 20261027001400_home_flow_sources.sql replaces home_flow() (create or replace; same signature and grants). It adds subscription_sources: every (connection, source) pair the matcher would let through, decided by its own predicates:

  • source_matches: an empty list means "any" of POTA, SOTAwatch and RBN.
  • RBN counts only when some AND group of rules names stations, as in spot_matches.

TypeScript never expands "any source" itself. The source list is normalize_subscription_sources'; CLAUDE.md now says a new source goes in home_flow's list too.

20261027001300_home_flow.sql, merged with #276, is unchanged here; it may already be hosted.

Files

  • supabase/migrations/20261027001400_home_flow_sources.sql (new)
  • supabase/tests/home_flow.test.sql: 13 tests, now covering subscription_sources (any source, the RBN station guard, an OR group, all six sources, other users' connections)
  • web/src/home/: model.ts builds nodes and links from configuration with no cap; FlowDiagram.tsx and HomePage.tsx drop the "more" nodes; types.ts gains subscription_sources; tests updated
  • CLAUDE.md: the Home page rules say the diagram is configuration, with no cap

Testing

  • npm run build, npm run lint, npm run coverage: pass (1,188 tests, 98.7% lines). database.types.ts is unchanged: the signature is the same.
  • On a fresh local stack (main's migrations plus the new one): pgTAP home_flow 13/13, advisor 6/6, matcher 53/53; scripts/smoke-test.sql passes; supabase db lint shows only the three warnings already on main.
  • Checked by hand on a seeded stack with eight connections (two quiet), an "any source" connection and an unlinked destination: desktop in light and dark, and phone.

After merge

  • supabase db push for 20261027001400_home_flow_sources.sql, plus 20261027001300_home_flow.sql if Home page: last 24 hours and how spots flow #276's hasn't been pushed yet. Push it before the Vercel deploy, or the page draws only the sources that had traffic until it is pushed. No Edge Function deploys are needed.

🤖 Generated with Claude Code

sonyccd and others added 3 commits October 27, 2026 12:00
The flow diagram now shows how the system is set up whether or not spots
flowed: every source each connection takes spots from, every destination
(linked or not), and quiet links at the 2 px floor. The last 24 hours only
label the nodes and weight the links.

home_flow() gains subscription_sources: each connection's sources by the
matcher's own rules (source_matches, so "any source" expands in SQL, and RBN
only with an AND group that names stations).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The diagram is the system's configuration, so it no longer folds quiet
connections into an "N more connections" node. Every connection, source and
destination gets its own node; the "more" nodes and TOP_CONNECTIONS are gone.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
20261027001300_home_flow merged with #276 and may already be hosted, so it
goes back to exactly what main has, and subscription_sources ships as
20261027001400_home_flow_sources (create or replace, same signature, same
grants).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vercel

vercel Bot commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
longlines Ready Ready Preview Oct 27, 2026 4:06pm UTC

@supabase

supabase Bot commented Oct 27, 2026 •

Copy link
Copy Markdown

Updates to Preview Branch (home-page-config) ↗︎

Deployments Status Updated
Database ✅ Tue, 27 Oct 2026 16:06:05 UTC
Services ✅ Tue, 27 Oct 2026 16:06:05 UTC
APIs ✅ Tue, 27 Oct 2026 16:06:05 UTC

Tasks are run on every commit but only new migration files are pushed.
Close and reopen this PR if you want to apply changes from existing seed or migration files.

Tasks Status Updated
Configurations ✅ Tue, 27 Oct 2026 16:06:14 UTC
Migrations ✅ Tue, 27 Oct 2026 16:06:19 UTC
Seeding ✅ Tue, 27 Oct 2026 16:08:13 UTC
Edge Functions ✅ Tue, 27 Oct 2026 16:08:35 UTC

View logs for this Workflow Run ↗︎.
Learn more about Supabase for Git ↗︎.

@sonyccd
sonyccd merged commit ecf7bd3 into main Oct 27, 2026
10 checks passed
@sonyccd
sonyccd deleted the home-page-config branch October 27, 2026 16:31

This branch was successfully deployed

1 active deployment
Preview — 8f9969da Deployed Oct 27, 2026 by vercel[bot]
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