feat(guided-onboarding): Phase 4 - hardening, docs, verification + line-based UX polish#22
Closed
christopherkarani wants to merge 7 commits into
Closed
feat(guided-onboarding): Phase 4 - hardening, docs, verification + line-based UX polish#22christopherkarani wants to merge 7 commits into
christopherkarani wants to merge 7 commits into
Conversation
… TDD tests (Phase 0) - New module src/cli/interactive.zig with SelectionItem / MultiSelectResult types - Stub runMultiSelect (all-checked + confirmed for now) - Pure helper getSelectedLabels - Basic unit tests using fixed-buffer I/O pattern (consistent with rest of CLI) - Exposed via src/cli/mod.zig - No behavior change to any command yet Part of approved guided post-install plan (one PR per phase).
…or host integration - Real runMultiSelect implementation (toggle by number, c=confirm, q=cancel) - Works in both TTY (interactive) and non-TTY (safe auto-confirm) environments - Respects caller-provided checked state - Updated tests for new semantics - Foundation for full raw-mode checkbox UI in future refinement This makes the guided onboarding experience actually usable today.
…Phase 1+2 progress) - When run on TTY without --auto, 'orca setup' now offers interactive host selection using the new multi-select - Respects existing --auto path for scripts/CI 100% - Uses the existing doctor report + plugin install infrastructure - Functional line-based experience delivered (raw mode can be added on top) Significant step toward the approved 'one line install → guided value' vision.
…sh and --yes de-emphasis - Update src/cli/help.zig for setup (now describes guided TTY default) and plugin (promotes setup, de-emphasizes --yes for primary path) - De-emphasize --yes throughout plugin doctor fix hints in src/cli/plugin.zig (now leads with 'orca setup or ...') - Update re-enable guidance in disable.zig and help - Update dashboard quick-start example to prefer 'orca setup' - Soften non-interactive error messaging in setup.zig - Update Windows install.ps1 post-install instructions to match sh (simple 'orca setup' + guided note) - Add TDD tests in src/cli/mod.zig that verify new help content (RED->GREEN verified) - Decision: no lightweight shorthands (e.g. orca hermes) added in this phase to keep scope minimal and focused on messaging Refs: approved plan Phase 3, prior phase-1/2 branches, orca-guided-onboarding skill. One PR per phase discipline followed. Non-interactive --auto path untouched. Builds and relevant tests green. Public repo hygiene verified before commit.
…ne-based UX polish - Wire shared runMultiSelect into setup (remove 50+ LOC duplication, fix child exec argv with self_exe) - Add pure testable helpers (renderSelectionMenu, parseSelectionInput) + 3 new Phase 4 unit tests (all green) - Respect --preset in guided path; improve no-hosts / cancel messaging - Document line-based selector as delivered v1 (max compat; raw arrows deferred per plan) - Update install.sh + docs (quickstart, install.md, README) to promote `orca setup` as primary post-install guided flow - Final packaged tarball + smoke sims: --auto + RESOURCE_ROOT + doctor verified; non-tty guided fallback exercised; rc hygiene maintained - All prior invariants preserved: --auto 100% unchanged, tarball layout contract holds, public repo hygiene Refs: approved plan (Phase 4), handoff-orca-guided-onboarding.md, orca-guided-onboarding skill, prior PR #21 (phase-3). One dedicated PR per phase. TDD + verification-first followed.
…MultiSelect + consistent error/exit code handling in runGuidedSetup (policy init + host installs now match --auto path semantics)
…fully testable (explicit is_tty + passed reader), add 3 new loop-driving tests, handle EOF cleanly (no busy loop), wire interactive tests into main suite via mod.zig
christopherkarani
added a commit
that referenced
this pull request
May 28, 2026
…ixes to main Full review performed per strict Zig systems standards (safety, testability, TDD). All Critical/Major issues fixed on feature branch and landed here: - errdefer for allocation safety in interactive.runMultiSelect - Consistent error propagation + exit codes in runGuidedSetup (matches --auto path) - Testability: explicit is_tty param + reader; real TTY loop now has dedicated coverage (9/9 tests) - EOF no longer causes busy loop - Tests wired into normal test suite See PR #22 and review discussion for full details. Original PR description and plan references preserved in commit history on feature branch.
Owner
Author
|
Senior Zig review complete + all issues fixed and landed to Full rigorous review (safety, correctness, explicitness, testability) performed per the requested standards. All Critical and Major issues identified were addressed with strict TDD (Red → Green):
Verification on fixed tree:
The reviewed + hardened code (including all fixes) has been pushed to PR can be closed as landed via review process. Initiative complete. |
Owner
Author
|
Closed. All review findings addressed with TDD fixes. Reviewed + hardened code landed to |
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.
One dedicated PR per phase (Phase 4 of 4).
Summary
Completes the Orca Guided CLI Onboarding & Verbosity Reduction initiative.
interactive.zigandsetup.zig)self_exefor subcommand invokes, matching the--autopath)--presetin guided path; hardened edge messaging (no hosts, cancel)install.shto promote the simpleorca setuphappy pathinstall-dx-smoke-test.sh(RESOURCE_ROOT +--auto+ doctor all green); non-TTY guided fallback exercised; rc pollution hygiene followedAll invariants preserved:
--auto/ non-interactive path is 100% unchanged and perfect for scripts/CI; packaged tarball installs continue to work viaORCA_RESOURCE_ROOT.References
~/.grok/sessions/.../plan.md(Phased Implementation Breakdown → Phase 4)orca-guided-onboarding(v1.0)tasks/handoff-orca-guided-onboarding.md(updated at session end)reports/orca-cli-command-surface-audit-verbosity-review-2026-06.md,reports/orca-install-dx-audit-2026-05-25.mdWhat's in this phase (per plan)
What's explicitly out of scope (per plan + handoff)
orca hermes)--autobehavior or non-interactive safetyVerification
zig buildcleanzig test(interactive module: 6/6 green including 3 new Phase 4 tests)A fresh user after one-line install can now
orca setupon TTY and get working protection with zero--yesor complex flags. The automation path remains pristine.Ready for review and merge. Initiative complete.