feat: bootstrap Q&A skip on imported onboarded_at#87
Merged
Conversation
Closes #49. After `wbox firm import` from a source whose `_meta.json.onboarded_at` is set, the local `_meta.json.onboarded_at` is now seeded too — that's the existing `apply()` behavior via `_merge_meta_bytes()`, but it was never covered by a regression test for the fresh-install-then-import flow. Add a Step 0 to `bootstrap.md` that tells the agent to short-circuit when `onboarded_at` is already set (e.g. another machine ran the qualitative Q&A and synced the result via `wbox firm import`), rather than re-asking the same questions on every imported install. Tests cover all three required cases: - importing a zip whose source has `onboarded_at` seeds it locally - importing a zip whose source lacks `onboarded_at` leaves the local field unchanged (pre-existing local value survives; never invented) - the shipped bootstrap.md template carries the early-out instruction Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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
wbox firm importfrom a source whose_meta.json.onboarded_atis set, the local_meta.json.onboarded_atis seeded — closing the fresh-install-then-import flow's Q&A loop. The propagation already existed via_merge_meta_bytes(); this PR adds the regression tests.skills/wealthbox-crm/bootstrap.mdgets a Step 0 that short-circuits the Q&A whenonboarded_atis already set, with a one-line "already onboarded" notice.tests/test_firm_import.pycover: source-with-onboarded-at seeds the destination, source-without-onboarded-at leaves the destination's field alone, and the shipped bootstrap.md template carries the skip instruction.Closes #49
Test plan
pytest -o "pythonpath=src" -q tests/test_firm_import.py— 52 passed (49 prior + 3 new)pytest -o "pythonpath=src" -q— full suite, 391 passed, 1 skipped (pre-existing)ruff check src/ tests/— clean