v1.0.2
v1.0.2
- Release type: stable desktop GitHub connection foundation patch
- Release source SHA: to be stamped by
refs/tags/v1.0.2 - Previous stable release:
v1.0.1 - Tracking issues / source PRs:
#484,#487,#499,#500,#501 - Package artifact:
neondiff@1.0.2after publish - Rollback baseline:
v1.0.1
Purpose
Publish a stable CLI/dashboard npm package release whose source tree includes
the verified desktop GitHub connection and repository discovery work that merged
after v1.0.1.
This patch keeps the v1.0 launch boundary unchanged: npm install -g neondiff
installs the CLI, neondiff dashboard opens the local HTML setup/status
dashboard, and the minimal Mac launcher remains the desktop entry point. The
new user-facing desktop foundation lets the app connect GitHub through the
GitHub App device flow, discover installed repositories, show public/private
repo visibility, and persist selected repositories through the config patch
path without writing tokens into config.
Included Changes
- Ship the desktop GitHub App device-flow foundation:
- public
github.clientIdconfig support; - Repos-pane device authorization controls;
- Keychain-backed GitHub user-token storage;
- refresh-token recovery and reconnect behavior;
- paginated
/user/installationsand per-installation repository discovery; - public/private repository visibility rendering; and
- manual/discovered repository allowlist controls that persist through
config patch.
- public
- Carry forward the live desktop smoke proof from current
main:- desktop authorized as
100yenadmin; - 3 GitHub App installations discovered;
- 48 accessible repositories discovered;
- public/private repo badges rendered; and
- disposable allowlist config patch persisted with no token-like config
values.
- desktop authorized as
- Refresh the public release manifest and license API proof paths for the
v1.0.2release line. - Keep the hosted website channel on its previously published deployment; no
website code deploy or channel rollback is part of this patch.
Required Gates
- Focused validation:
NODE_OPTIONS=--experimental-sqlite npx vitest run tests/public-release-readiness.test.ts tests/release-status.test.ts tests/checkout-issuance-smoke.test.ts --pool=forks --maxWorkers=1npm run buildnode scripts/check-public-claims.mjsnode scripts/check-secret-scan.mjsgit diff --check
- License API proof:
docs/evidence/v1.0.2-license-api-healthz.jsondocs/evidence/v1.0.2-license-checkout-issuance-unauthenticated.jsondocs/evidence/v1.0.2-license-checkout-issuance-authenticated.json
- Desktop GitHub proof:
- committed redacted proof packet:
docs/evidence/v1.0.2-desktop-github-smoke.json
- committed redacted proof packet:
- Release-status public manifest gate:
npx tsx src/cli.ts release-status --expected-head "$(git rev-parse HEAD)" --public-release-manifest docs/public-release-manifest.json --expected-public-version v1.0.2
Caveats
- This release does not ship signed/notarized desktop artifacts, Sparkle
appcast, or auto-update proof. Those remain tracked by#116and#449. - This release does not claim full native Swift desktop maturity; it publishes
the local-first desktop GitHub connection foundation. - This release does not claim CodeRabbit parity, calibrated 95% review
accuracy, auto-merge, approvals, native ZCode skills/MCP/memory, or
target-repo mutation. - Public release proof is not complete until
neondiff@1.0.2is published to
npmlatestand the non-prerelease GitHub Releasev1.0.2targets a commit
containing candidate headfb2e0238287198a1fa1462f066f295dee6c9ea2e.
Rollback
: "${REPO_ROOT:?set REPO_ROOT to your local NeonDiff checkout}"
cd "$REPO_ROOT"
git fetch origin --tags
git checkout main
git reset --hard refs/tags/v1.0.1
npm dist-tag add neondiff@1.0.1 latest