Skip to content

chore(beta): feedback link + version stamp on Privacy (beta infra) - #15

Merged
CBRT513 merged 1 commit into
mainfrom
app/beta-feedback
Jul 6, 2026
Merged

chore(beta): feedback link + version stamp on Privacy (beta infra)#15
CBRT513 merged 1 commit into
mainfrom
app/beta-feedback

Conversation

@CBRT513

@CBRT513 CBRT513 commented Jul 6, 2026

Copy link
Copy Markdown
Owner

Beta infrastructure — not a feature

Prepares BillBuffer for its first external beta with two additions to the Privacy screen. No analytics, telemetry, backend, accounts, or tracking — the feedback path is a client-only mailto: the user's own mail app opens; the app sends and stores nothing.

What

  • "Share your thoughts" link → opens the default email app via mailto: with:
    • Subject: BillBuffer Feedback
    • Body: pre-fills Version: and leaves the prompts (What were you trying to do? / What happened? / What did you expect? / Anything you'd change?). Device: is left blank on purpose — the app never reads device info.
  • Version/build displayed on the Privacy screen (and stamped into the email body): package.json version + git short SHA, injected at build time via Vite define (compile-time string, no runtime, no network). Falls back to local where git is absent.

Files

  • src/lib/feedback.ts (new) — pure mailto: builder (no browser/network deps; passes the engine-purity architecture test).
  • src/lib/feedback.test.ts (new) — unit tests for subject/body/version/encoding.
  • vite.config.tsdefine for __APP_VERSION__ + __APP_BUILD__.
  • src/app.d.ts — ambient declarations for the injected globals.
  • src/routes/privacy/+page.svelte — the link + version line.
  • e2e/privacy.spec.ts — asserts the built app's link href + injected version.

⚠️ One value to confirm before merge

FEEDBACK_EMAIL in src/lib/feedback.ts defaults to clif@barge2rail.com — the recipient wasn't specified. It's a one-line change; confirm or point it at the intended beta inbox (e.g. a product address).

Verification (mirrors ci.yml)

  • npm run check — 0 errors/warnings
  • npm test — 135 passed (incl. new feedback.test.ts)
  • npm run build — adapter-static OK
  • npm run test:e2e — 60 passed (incl. the new feedback test; confirms the version was injected into the built app)
  • npm run format:check — clean

Not merged — awaiting Codex review and the email confirmation.

🤖 Generated with Claude Code

Beta infrastructure, not a feature. On the Privacy screen:
- A "Share your thoughts" link that opens the user's default mail app via a
  `mailto:` (subject "BillBuffer Feedback"; body pre-fills Version and the four
  prompts). Client-only — the app sends nothing, stores nothing, no network.
- The current version/build (package.json version + git short SHA), stamped at
  build time via Vite `define`, shown on-screen and in the email body so reports
  say which build they came from.

No analytics, telemetry, backend, accounts, or tracking. The mailto builder is a
pure lib module (`src/lib/feedback.ts`) with unit tests; a small e2e asserts the
link + injected version on the built app.

NOTE: FEEDBACK_EMAIL defaults to clif@barge2rail.com and must be confirmed before
merge — it is the only value to verify.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@CBRT513

CBRT513 commented Jul 6, 2026

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep it up!

Reviewed commit: 25476a2fac

ℹ️ 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".

@CBRT513
CBRT513 merged commit a83fd90 into main Jul 6, 2026
1 check passed
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