chore: meta + foundation + CI#46
Draft
epicexcelsior wants to merge 8 commits into
Draft
Conversation
Drops the hardcoded "0.4.1 · build 2026.04" string in favor of Constants.expoConfig?.version so app.json stays the single source of truth. Also bumps package.json version to match app.json (1.0.2).
Canonical amber PREVIEW pill for roadmap placeholders, matching the shape pendingCosigns + BeaconRegistry CTAs already use. No consumers in this commit — consumer migrations land in a follow-up cluster so each migration is reviewable on its own.
Wraps roadmap-preview CTAs so they look real but can't fire — pointerEvents:none shield + 0.5 opacity + transient 'not yet active' hint on tap. Light haptic on press. Pairs with PreviewBadge; consumer migrations land in a follow-up cluster.
Per ROADMAP § 1.4 — first-class bug intake channel was never shipped. Three structured templates: bug (device, OS, network state, repro), feature (problem framing, scope), privacy (claim, evidence, severity).
…aims Aligns README with what the code actually ships per AUDIT § 1 R-01..R-27. - AES-256 → AES-128 + HMAC per Reticulum spec (the actual on-the-wire crypto) - "No servers" → "No centralized servers" + note community TCP relays - "routes through nothing" → peer-to-peer first, beacon-relays as fallback - Solana section: name "confidential offline transfers" as coming-soon, note mesh-RPC payload is proxied (not yet encrypted to relay) Two FALSE claims + three MISLEADING ones resolved. Remaining drift items tracked in AUDIT for follow-up.
Greps the diff for banned theatre phrases (ARCIUM, MPC 3/3, Confidential Offline, JITO_RATE, etc.) so they can't sneak back into mobile_app/ or README.md without a PreviewBadge / coming-soon wrapper. Runs on PRs + pushes to v3. Per ROADMAP § 0.8.
Contributor
There was a problem hiding this comment.
Pull request overview
Foundation pass for a downstream "Cluster 2" UX migration: bumps the app version, replaces a hardcoded version string with one sourced from expo-constants, adds two new (currently unused) "preview" primitives, ships GH issue form templates, adds a CI "honesty check" that greps PR diffs for theatre phrases, and softens README claims to better match what the app actually does.
Changes:
- Version bump 1.0.0/1.0.1 → 1.0.2 across
package.json,package-lock.json,app.json;SettingsScreennow reads version fromConstants.expoConfig. - New
PreviewBadge(amber pill) andPreviewedActions(non-interactive shield + transient hint + haptic) primitives, exported fromcomponents/primitives/index.ts. - New GH issue templates (bug/feature/privacy),
honesty-check.ymlCI workflow grepping added lines for banned phrases, and README rewording (centralized servers, AES-128+HMAC per Reticulum spec, p2p-first/beacon-fallback, coming-soon labels).
Reviewed changes
Copilot reviewed 11 out of 12 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| README.md | Softens absolutist claims; corrects crypto stack to AES-128+HMAC; flags confidential offline transfers as coming-soon. |
| mobile_app/screens/SettingsScreen.tsx | Sources app-version row from Constants.expoConfig?.version instead of hardcoded "0.4.1 · build 2026.04". |
| mobile_app/package.json | Version bumped to 1.0.2. |
| mobile_app/package-lock.json | Lockfile version bumped to 1.0.2. |
| mobile_app/app.json | Expo version bumped 1.0.1 → 1.0.2. |
| mobile_app/components/primitives/PreviewedActions.tsx | New wrapper rendering children behind a non-interactive shield with a transient "not yet active" hint + selection haptic. |
| mobile_app/components/primitives/PreviewBadge.tsx | New amber Pill-based "PREVIEW · …" badge for roadmap placeholders. |
| mobile_app/components/primitives/index.ts | Re-exports the two new primitives. |
| .github/workflows/honesty-check.yml | New CI job grepping added diff lines on PR/push for banned theatre phrases. |
| .github/ISSUE_TEMPLATE/privacy.yml | New GH form template for privacy/security concerns. |
| .github/ISSUE_TEMPLATE/feature.yml | New GH form template for feature requests. |
| .github/ISSUE_TEMPLATE/bug.yml | New GH form template for bug reports. |
Files not reviewed (1)
- mobile_app/package-lock.json: Language not supported
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Lane S · 7 commits · +382/-10 LOC
Foundation pass — primitives that downstream PRs migrate to, plus meta + CI scaffolding.
chore(meta): bumpexpo.version1.0.1 → 1.0.2;package.jsonsyncedchore(settings): app-version row sources fromexpo-constants(not hardcoded "0.4.1 · build 2026.04")feat(primitives): newPreviewBadge— amber pill wrapper for roadmap placeholdersfeat(primitives): newPreviewedActions—pointerEvents:noneshield + 0.5 opacity + transient "not yet active" hint with hapticchore(meta):.github/ISSUE_TEMPLATE/{bug,feature,privacy}.yml(GH form schema)docs(readme): AES-128+HMAC per Reticulum spec (not AES-256); "no centralized servers" + community-relay note; "p2p first, beacon-relays as fallback"; confidential offline transfers labeled coming-soonchore(ci):.github/workflows/honesty-check.yml— greps added lines on PR/push to v3 for banned theatre phrasesTest plan