feat(ingestion): review UI — import, merchant merge, recurring, category correction#90
Merged
kayodebristol merged 4 commits intomainfrom Mar 25, 2026
Merged
Conversation
- Add 4 new design-dojo components: Toggle, Toast, Dialog, Tooltip - Export new components from @plures/design-dojo index - Add review store (src/lib/stores/review.ts) with 4 typed stores: importReviewStore, merchantMergeStore, recurringStore, categoryCorrectionStore - Seed helpers for realistic demo data - Create review route hub at /review with summary cards - Create /review/import: table of imported rows with fix dialog, skip, approve - Create /review/merchants: merchant merge table with search, bulk accept - Create /review/recurring: card grid with Toggle accept/reject and type selector - Create /review/categories: categorisation table with bulk-select and inline Select - Add 'Ingestion Review' link to home page quick-nav Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Remove duplicate .card-done CSS rule in recurring/+page.svelte - Use const (not let) for inputId in Input.svelte - Use const (not let) for selectId in Select.svelte Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: kayodebristol <3579196+kayodebristol@users.noreply.github.com> Agent-Logs-Url: https://github.com/plures/FinancialAdvisor/sessions/6ae52106-56a0-4cd4-899b-7d9366dabc8b
Copilot
AI
changed the title
[WIP] Build review UI for imported data usability
feat(ingestion): review UI — import, merchant merge, recurring, category correction
Mar 24, 2026
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.
Builds the four ingestion review flows that make imported data actionable, plus fixes pre-existing CI failures blocking the branch.
CI Fixes
bind:valueerrors (24+) —InputandSelectcomponents lackedvalue = $bindable()in their props interface; Svelte 5 requires explicit$bindable()declaration for two-way binding to work across component boundaries@plures/eslint-plugin-design-dojoreferencedsrc/index.jswhich didn't exist; created the plugin withno-local-primitivesandprefer-design-dojo-importsrulestransitions.tsnodeparams prefixed_node(required by Svelte transition signature but unused in CSS-only implementations)server.fs.allow: ['..']so Vite can serve symlinked workspace packages underpackages/New design-dojo Components
Togglerole="switch",$bindablecheckedToastDialog$bindableopen, focus trapTooltiparia-describedbyReview State Store (
src/lib/stores/review.ts)Four typed writable stores with status lifecycle (
pending → reviewed | skipped) and realistic seed data:importReviewStore— rows with error/duplicate flagsmerchantMergeStore— resolution candidates withhigh | medium | lowconfidencerecurringStore— detected recurring series with next-expected datecategoryCorrectionStore— category assignments with correction historyReview Routes
/review— Hub: summary cards per flow, aggregate pending badge/review/import— Session-grouped table; fix viaDialog, skip/approve per row, error/duplicate row highlighting,Toastfeedback/review/merchants— ConfidenceBadge, inlineInputfor manual override, search filter, bulk-accept high-confidence items/review/recurring— Card grid with type selector (subscription / bill / income),Toggleaccept/reject/review/categories— Bulk checkbox select, inlineSelectdropdown per row, sliding bulk-action toolbar,Toaston saveOriginal prompt
💬 Send tasks to Copilot coding agent from Slack and Teams to turn conversations into code. Copilot posts an update in your thread when it's finished.