Skip to content

Onboarding#440

Draft
cooper (czxtm) wants to merge 4 commits into
developfrom
onboarding
Draft

Onboarding#440
cooper (czxtm) wants to merge 4 commits into
developfrom
onboarding

Conversation

@czxtm

Copy link
Copy Markdown
Member

Summary

Test Plan

  • No test plan needed

Docs

  • Docs updated (companion PR in darkmatter/nixmac-web: #___)
  • No docs update needed

@vercel

vercel Bot commented Jun 21, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
nixmac-storybook Ready Ready Preview, Comment, Open in v0 Jun 21, 2026 7:08pm

Request Review

@darkmatter

darkmatter Bot commented Jun 21, 2026

Copy link
Copy Markdown
Contributor

🎨 Storybook preview

Open Storybook preview

Updated for 335d8c0


🧭 Story changes

Compared to develop (snapshot diff at story level):

🆕 New stories (7)

✏️ Changed stories (19)

🗑️ Removed stories (1)

  • setup-step › Default Config Required (apps/native/src/components/widget/steps/setup-step.stories.tsx)

💡 Update snapshots ↗ to regenerate baselines and open a PR.


❌ Failed snapshots (5)

These stories' HTML snapshots changed. Update snapshots ↗ to regenerate baselines and open a PR:

Widget/Onboarding/OnboardingFlow › Playground

Widget/Onboarding/OnboardingFlow › Playground

Widget/Onboarding/OnboardingFlow › Permissions

Widget/Onboarding/OnboardingFlow › Permissions

Widget/Onboarding/OnboardingFlow › Nix Setup

Widget/Onboarding/OnboardingFlow › Nix Setup

Widget/Onboarding/OnboardingFlow › Import Flake

Widget/Onboarding/OnboardingFlow › Import Flake

Widget/Onboarding/OnboardingFlow › Customizations

Widget/Onboarding/OnboardingFlow › Customizations


Accept changes

  • Click here to accept these changes
What does this do?

The screenshots above show UI changes detected by the Storybook
snapshot tests run on this PR. Each image is the rendered output of
a Storybook story from the code in this PR branch; the snapshot
test compared it against the committed baseline in
__snapshots__/ and flagged the difference.

Checking the box tells the darkmatter[bot] to regenerate the
baselines from this PR's current code and commit them directly to
this branch. The new baselines become the source of truth for
future runs — only accept after confirming the visual changes are
intentional.

Comparison baseline: the committed __snapshots__/ files on this
PR branch (carried forward from develop). Accept updates them in
place on this branch.

@github-actions

Copy link
Copy Markdown
Contributor
Warnings
⚠️

Your ## Test Plan section is empty or only contains placeholder text. Describe the steps a reviewer should take to verify this change, or check No test plan needed.

⚠️ PR is marked WIP / draft — do not merge until ready for review.
⚠️ ❗ Big PR (81279 lines changed). Consider splitting it into smaller, focused changes.
⚠️

New UI components were added without a Storybook story. Consider adding a sibling *.stories.tsx file:

  • apps/native/src/components/ui/button-glow.tsx
  • apps/native/src/components/widget/onboarding/celebration-overlay.tsx
  • apps/native/src/components/widget/onboarding/inference/inference-setup.tsx
  • apps/native/src/components/widget/onboarding/onboarding-header.tsx
  • apps/native/src/components/widget/onboarding/onboarding-sidebar.tsx
  • apps/native/src/components/widget/onboarding/onboarding-step-content.tsx
  • apps/native/src/components/widget/onboarding/source/create-source.tsx
  • apps/native/src/components/widget/onboarding/source/flake-ref-source.tsx
  • apps/native/src/components/widget/onboarding/source/github-source.tsx
  • apps/native/src/components/widget/onboarding/source/local-source.tsx
  • apps/native/src/components/widget/onboarding/step-shell.tsx
  • apps/native/src/components/widget/onboarding/stepper.tsx
  • apps/native/src/components/widget/onboarding/steps/build-step.tsx
  • apps/native/src/components/widget/onboarding/steps/customizations-step.tsx
  • apps/native/src/components/widget/onboarding/steps/inference-step.tsx
  • apps/native/src/components/widget/onboarding/steps/nix-setup-step.tsx
  • apps/native/src/components/widget/onboarding/steps/permissions-step.tsx
  • apps/native/src/components/widget/onboarding/steps/setup-step.tsx
⚠️

New TypeScript source files were added without any new tests:

  • apps/native/src/components/widget/onboarding/index.ts
  • apps/native/src/components/widget/onboarding/lib/customizations.ts
  • apps/native/src/components/widget/onboarding/lib/flake-ref.ts
  • apps/native/src/components/widget/onboarding/lib/inference.ts
  • apps/native/src/components/widget/onboarding/lib/onboarding.ts
  • apps/native/src/components/widget/onboarding/use-onboarding-flow.ts
⚠️

🔒 This PR touches ops/secrets/secrets.yaml. Confirm the change was made via sops and not by hand.

⚠️

This PR touches behavior-sensitive code that is documented in darkmatter/nixmac-web. Please either:

  • Open a companion docs PR and check Docs updated in the PR description, or
  • Check No docs update needed if the change doesn't affect user-facing behavior.
Messages
📖

🤖 This PR touches CI / infra — reviewers please pay extra attention:

  • ops/scripts/release/affected-paths.mjs
  • ops/secrets/e2e.enc.yaml
  • ops/secrets/prod.yaml
  • ops/secrets/secrets.yaml

📋 PR Overview

Lines changed 81279 (+66084 / -15195)
Files 35 added, 2709 modified, 8 deleted
Draft / WIP yes
Has Test Plan no
No Test Plan Needed no
New UI components yes (19)
New Storybook stories yes (1)
New Rust modules no
New TS source files yes (25)
New tests no
package.json touched yes
Cargo.toml touched no
Infra / CI touched yes

🔬 Coverage

Report Lines Statements Functions Branches
apps/native/coverage/coverage-summary.json 24.0% 23.9% 21.4% 17.6%

Generated by 🚫 dangerJS against 335d8c0

@czxtm cooper (czxtm) self-assigned this Jun 23, 2026

Copy link
Copy Markdown
Member Author

⚠️ Automated triage flag: This draft PR shows 66,084 additions across 2,752 changed files — that's likely an accidental mega-branch (possibly diverged from an old base, or a full-repo checkout committed accidentally). This is a draft, but worth investigating before anyone reviews or merges.

cooper (@czxtm) — can you check whether the branch is in the intended state? If this is a work-in-progress onboarding rewrite, it may need to be rebased against develop to show only the intentional diff.

[Automated triage — Claude]


Generated by Claude Code

cooper (czxtm) and others added 4 commits June 24, 2026 14:52
Server-brokered GitHub App flow for the "Import Flake" step: the desktop
opens the App install, polls account linkage, lists the installation's
repos, and clones the chosen repo with a short-lived, repo-scoped token
minted by the nixmac server. The desktop never holds the App key or a
long-lived token.

- Rust: github_connect_start / github_status / github_list_repos /
  github_disconnect commands + github_import (token-authed clone via
  clone_repo_with_token). Calls signed /v1/github/* endpoints through the
  existing HMAC SyncClient; no new persisted device secret.
- Specta types GithubConnectStart / GithubStatus / GithubRepo.
- Frontend: tauriAPI.github namespace; github-source.tsx drives the real
  connect -> poll -> repo list -> token import flow (drops the simulated
  connect + MOCK_REPOS); Storybook harness mocks tauriAPI.github.*.
- Server endpoint contract in docs/github-app-server-contract.md.

Server endpoints are the remaining blocker for live use (App registered).
Generated src/ipc/types.ts is intentionally left for a separate regen
commit to avoid entangling unrelated type churn.

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

Copy link
Copy Markdown
Collaborator

How to use the Graphite Merge Queue

Add either label to this PR to merge it via the merge queue:

  • automerge - adds this PR to the back of the merge queue
  • urgent - for urgent changes, fast-track this PR to the front of the merge queue

You must have a Graphite account in order to use the merge queue. Sign up using this link.

An organization admin has enabled the Graphite Merge Queue in this repository.

Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue.

This stack of pull requests is managed by Graphite. Learn more about stacking.

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