Skip to content

Mise workstation provisioning and self-saving live preferences - #8

Merged
phall1 merged 15 commits into
mainfrom
feat/mise-workstation
Sep 8, 2026
Merged

Mise workstation provisioning and self-saving live preferences#8
phall1 merged 15 commits into
mainfrom
feat/mise-workstation

Conversation

@phall1

@phall1 phall1 commented Sep 8, 2026

Copy link
Copy Markdown
Owner

Implemented and live

  • Mise 2026.9.3 provisions tools and owns automatic preference history and private two-way synchronization.
  • 64 live files enrolled, preserving every preexisting preference; chezmoi retains generated templates and integration keys.
  • Native launchd watcher automatically publishes edits/deletions and applies second-client edits/deletions through private phall1/dotfiles-history.
  • First-apply preservation, repeat bootstrap, rollback/undo, conflicts, deleted-source bytecode cleanup, and shared watcher lock directories are covered by tests.

Validation

  • Native macOS history suite and mise run check pass independently on the final source.
  • Final local Linux arm64/Pi container passes; native amd64 and arm64 CI both passed at db60758.
  • The runner-specific bare-exit fixture failure is corrected by an explicit fresh-shell probe. Final full matrix: https://github.com/phall1/dotfiles/actions/runs/34255124433
  • Final dependency validation passed: https://github.com/phall1/dotfiles/actions/runs/34255124430
  • Fresh-context review: no remaining P1/P2 implementation findings.
  • Live repeat bootstrap and chezmoi verification pass; native watcher running with no pending operations or sync errors.

Open merge gate

Final first-command latency is 247.0 ms against a 220 ms ceiling (pre-history baseline 248.8 ms). Other three pinned metrics pass. Profiling found no verified whole-shell fix under current host contention. PERF.md is unchanged; keep the performance gate open before merge.

Evidence and operations: docs/HISTORY-VALIDATION.md and docs/SELF-SAVING-DOTFILES.md.

phall added 15 commits September 2, 2026 02:12
Keep the upstream skill in the shared chezmoi source and expose it through Claude, OpenCode, and Hermes adapters. Pin the Pi package and preserve Claude's enabled plugin during chezmoi reconciliation.
Remove the legacy OpenCode fork, duplicate OmO tree, and retired Codex integrations so chezmoi has one active OpenCode configuration. Use native V2 config fields and automatic updates to keep the provider catalog current, with doctor coverage for direct OpenAI GPT-6 Astra availability.
Replace repeated package loops with pinned portable and Linux inventories, real Homebrew bundles, selected harnesses, and generated global mise state. Reconcile portable app preferences while retaining native runtime data and healthy service processes.

Add disposable architecture/profile acceptance, configuration preservation fixtures, service-boundary regressions, and CI. Mac and final arm64/Pi acceptance pass. Native amd64 runtime acceptance remains open after Phui's embedded Bun crashes under the non-AVX Mac emulator. Shell performance gates also remain open under host contention; PERF.md is not repinned.
Describe mise, chezmoi, Homebrew, and native application boundaries with clean-machine and recovery procedures. Record executed tests, complexity measurements, and the unresolved native-amd64 and loaded-host performance gates without claiming complete acceptance.
Give enrolled live preferences a single owner: native mise history. Retain chezmoi for generated machine files and integration keys, and preserve existing content and deletions during adoption and repeat bootstrap.

Use mise 2026.9.3, native private-origin sync and launchd/systemd watcher management. Match the watcher's directory environment to the shell so macOS history locks share one cache root. Test real autosave, rollback, undo, two-home adoption/conflicts, directory identity, and container convergence.

The Mac watcher and automatic private-origin publication are verified. Performance improved against the pre-cutover measurement but the first-command absolute gate remains open; no PERF.md pins changed.
A native bootstrap transaction can temporarily defer the watcher or invalidate its synchronization plan. Report a retry as a warning while preserving failures for conflicts, invalid incoming configuration, and failed application. Record automatic incoming edit/deletion verification against the private origin.
Preserve the current Blackbird instructions and explicit goal-plugin controls. Keep the runtime-preserving CLI modifier as the single chezmoi source for cli.json rather than reintroducing the retired whole-file copy. Platform fixtures pass.
Treat enrolled configuration sources as first-install seeds even before history is configured. Existing live targets win immediately; absent targets are seeded until enrollment, after which deletion remains authoritative. Platform fixtures cover both first-apply cases.
Zsh can execute a compiled startup file after the source disappears. Remove derived bytecode for absent startup files and shell modules when the native reload hook runs. A real zsh test verifies that deleted preferences no longer execute. _compile remains CC5 by manual decision count.
Document cache roots before fresh adoption and distinguish live preferences from generated integrations. Record passing native amd64 and arm64 CI, actual private-origin incoming/outgoing synchronization, first-apply preservation, and bytecode recovery evidence. Keep the first-command performance gate explicitly open.
Bare exit inherited the runner's system zsh startup status, making the bytecode recovery test fail despite successful cleanup. Execute a positive probe and verify its output alongside absence of the stale marker. The native test suite passes independently. Record final post-apply benchmark results without changing the open gate.
Replace Bash-4-only associative arrays with portable indexed results. Reject missing measurements and invalid baselines instead of returning a false pass to onboarding. Retain metric names, JSON records and PERF.md thresholds. Five real-script tests exercise the platform /bin/bash; measure remains CC4.
Use existing base tooling and GitHub authentication to adopt private mise history, provision native integrations, synchronize, and run health and performance checks. Download the complete standalone script before executing it; respect native conflict decisions and preserve edits on repeated runs.

Validate the wrapper boundaries, Bash/zsh download behavior, newly installed tool PATH, and real native adoption/replay in isolated homes. Full source checks, native history tests and Linux arm64/Pi container acceptance pass. Independent review findings are resolved; complexity evidence is recorded in HISTORY-VALIDATION.md.
The laptop already has GitHub authentication. Re-running setup-git rewrote whitespace in a chezmoi-owned Git config and triggered an interactive reconciliation prompt during the live smoke test. Use the existing setup unchanged; test that onboarding does not invoke the credential rewrite.
@phall1

phall1 commented Sep 8, 2026

Copy link
Copy Markdown
Owner Author

Single-command onboarding is now published in scripts/onboard.sh and linked consistently from README/setup/BOOTSTRAP/SELF-SAVING/PLAYBOOKS. It uses existing tooling/authentication, downloads fully before execution, preserves existing Git credential configuration, adopts native private history, synchronizes, and runs health/performance checks.

Final commit e280c3c passed the complete native acceptance matrix: https://github.com/phall1/dotfiles/actions/runs/34276043137 . Dependency validation also passed. Tests include real native adoption/rerun preservation, download failures under Bash/zsh, fresh-tool PATH, and stock macOS Bash benchmark failure handling. Independent review has no open P1/P2 findings.

The published command was also run on the live Mac: adoption/provisioning completed and doctor reported zero failures (one existing warning). It correctly returned nonzero at the known performance gate: first-command 343.4 ms against the 220 ms ceiling in this post-bootstrap run; the other three pinned metrics passed. No PERF.md thresholds were changed. The setup remains installed; the performance gate remains open before merge.

@phall1
phall1 merged commit 5722547 into main Sep 8, 2026
5 checks 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