Skip to content

Syncing Main to Staging#139

Merged
hawkandheron-dev merged 7 commits into
Stagingfrom
main
Apr 24, 2026
Merged

Syncing Main to Staging#139
hawkandheron-dev merged 7 commits into
Stagingfrom
main

Conversation

@hawkandheron-dev
Copy link
Copy Markdown
Owner

No description provided.

claude and others added 7 commits April 24, 2026 02:31
Previously App_Issues SELECT was gated to the submitter (or admins),
which meant contributors couldn't see or discuss each other's
submissions. Replace the per-user and admin-only SELECT policies on
App_Issues with a single contributor-or-admin policy, and broaden the
App_Issue_Comments SELECT/INSERT policies the same way so any member
of the contributor pool can read and post on any issue. Author/admin
UPDATE and DELETE policies are unchanged.

https://claude.ai/code/session_01Hj4AaNtsPQEnY7aap1DSDE
With the new RLS policy, every contributor sees the full pool of
contributions, so the per-user framing in the portal copy was wrong.
Rename the list header to "All contributions" unconditionally, soften
the loading/empty/error strings to talk about contributions instead
of "your submissions," update the welcome lede to mention the team's
contributions, and update the tour step body to point at the renamed
section.

https://claude.ai/code/session_01Hj4AaNtsPQEnY7aap1DSDE
Internal wiring follow-up to the copy rename: data-tour attribute is
now "contributions-list" and the tour step id is "contributions" to
match the shared "All contributions" view.

https://claude.ai/code/session_01Hj4AaNtsPQEnY7aap1DSDE
…visibility-PmP1Y

Open contributor portal to all contributors
Pages currently pop in resource-by-resource: Windhover text paints in a
fallback font, the Outfit font swaps in, then the logo loads and shifts
the layout. Adds a full-viewport loader that holds the page until fonts
and window.load are ready (1s minimum, 5s hard cap), then rolls up.

Loader:
  - New loader.css / loader.js, opted in via <div id="page-loader">
  - Parchment radial gradient + inline SVG noise for paper grain
  - Ink-tinted falcon logo, per-page title, indeterminate shimmer bar
  - Waits on Promise.all(window.load, document.fonts.ready)
  - prefers-reduced-motion: fade instead of roll-up, skip min-delay
  - <noscript> fallback to hide the loader if JS is off
  - Inline critical CSS + <link> preloads so overlay paints on first byte

Root-cause fixes so the reveal lands on a stable page:
  - Preload Windhover_BLK.png and Outfit-ExtraBold.ttf on every page
  - Preconnect to fonts.googleapis.com / fonts.gstatic.com
  - Outfit font-display: swap -> block (paired with preload so the block
    period resolves behind the loader; no FOUT on hero title)
  - .hero-logo gets aspect-ratio + explicit width/height attrs to
    reserve layout space
…elay

The loader now has two states:
  1. Loading — shimmer bar + "Loading" sub, aria-busy=true.
  2. Ready   — shimmer bar fades out, an Enter button fades in and is
              autofocused; overlay also becomes a secondary click target.

User dismisses by clicking Enter, pressing Enter/Space, or clicking
anywhere on the overlay. Clicks on the overlay during the Loading state
are ignored so users can't accidentally reveal a half-loaded page.

Also:
  - Dropped the 1s minimum visible time — the user controls dismiss now.
  - Kept the 5s hard cap so a stalled resource can't trap the Loading
    state forever (overlay advances to Ready; user still clicks Enter).
  - Bar and button share a CSS Grid cell, so the swap doesn't shift
    layout.
  - role=progressbar is removed once we enter Ready (no longer accurate).
…yout-shift-JQWDf

Add parchment-styled page loader with two-state lifecycle
@cloudflare-workers-and-pages
Copy link
Copy Markdown

Deploying profile-site with  Cloudflare Pages  Cloudflare Pages

Latest commit: cfa463a
Status: ✅  Deploy successful!
Preview URL: https://d7655ee8.profile-site-bgf.pages.dev

View logs

@hawkandheron-dev hawkandheron-dev merged commit 8149627 into Staging Apr 24, 2026
7 checks passed
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: cfa463ab08

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +45 to +46
create policy "Contributors can insert comments" on public."App_Issue_Comments"
for insert with check (
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Expose contributor identities for newly open comments

Opening comment insertion to every contributor here means non-admin users will now frequently see comments authored by other contributors, but the UI still falls back to "Windhover team" when author_display_name is missing (timeline-scratch/src/components/GettingStarted/CommentThread.jsx, label logic), and current users-table policy only exposes admin profiles (supabase/migrations/20260422010000_read_admin_display_names.sql). As a result, peer comments are mislabeled as official team replies, which is misleading in normal contributor-to-contributor discussion; this migration should be paired with a contributor-safe name-read policy (or a neutral fallback label).

Useful? React with 👍 / 👎.

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