Commit Graph

214 Commits

Author SHA1 Message Date
27fe87c4fe fix: simplify upload placeholder text
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-29 00:56:32 +00:00
8f1fb690ae chore: bump version to v3.0
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-29 00:54:37 +00:00
ec9f100e67 feat: add custom delimiter input and update subtitle text
Delimiter dropdown now includes "Other" option with a text input for
custom delimiter characters. Subtitle updated to mention delimited text.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-29 00:46:12 +00:00
310bea08bf feat: add delimiter selector for CSV/TSV files in GUI
Auto-detects delimiter on upload and shows a selectbox with comma, tab,
semicolon, and pipe options. Changing re-reads the file immediately.
Line terminators (Windows/Unix/Mac) already handled by universal newlines.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-29 00:30:50 +00:00
24ae566ec4 fix: hide Deploy button from Streamlit toolbar
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-29 00:25:26 +00:00
f97b633d4c feat: add live surviving rows preview in match group editor
Shows a read-only preview of the output rows below the editor,
updating as checkboxes and column dropdowns are changed.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-29 00:17:34 +00:00
e672488d50 fix: default Keep checkbox to algorithm-selected survivor only
Only the row chosen by the survivor rule (first, last, most-recent, etc.)
is checked by default. Other rows start unchecked.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-29 00:15:13 +00:00
d368cad89d feat: inline checkboxes and column dropdowns in match group editor
Replace separate checkbox row and "Customize columns" toggle with a
unified st.data_editor grid — Keep checkboxes at the start of each row,
differing columns render as inline selectbox dropdowns.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-29 00:10:16 +00:00
863fe89f2c feat: multi-row survivor support in match group review
Replace radio + Merge/Keep Both buttons with per-row checkboxes
and a single Confirm button. Users can now:

- Keep all rows (not duplicates) — check all, confirm
- Merge to one row — uncheck all but one, optionally customize columns
- Split a group — keep some rows, remove others (new capability)

Decision format changed from {action, survivor_idx, overrides} to
{keep_indices, overrides}. apply_review_decisions() updated to handle
all three modes. Batch actions updated accordingly.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-28 23:52:45 +00:00
debb0cb516 feat: per-group survivor selection and column cherry-picking in GUI
Each match group card now has:
- Radio button to pick which row to keep as the base survivor
- "Customize columns" toggle showing only columns that differ
- Per-column selectbox to pick values from any row in the group
- Decisions stored as {action, survivor_idx, overrides} dicts

Added apply_review_decisions() that builds the final DataFrame by
applying survivor selection + column overrides without re-running
the dedup engine. Batch actions also use the new dict format.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-28 23:47:25 +00:00
39e139d777 fix: prevent match group expanders from collapsing on button click
Replace st.rerun() with on_click callbacks so decisions write to
session state before the natural rerun. Decided groups auto-collapse
with status in the label; undecided groups stay expanded. Added undo
button on decided groups.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-28 23:25:12 +00:00
b871ab24fc feat: add documentation, Streamlit GUI, and full source tree
- Rewrite README.md with project overview, quick-start, and CLI summary
- Add docs/CLI-REFERENCE.md with full flag reference and 8 recipe sections
- Add docs/DEVELOPER.md with architecture, data flow, and extension guides
- Rewrite src/core/__init__.py with public API exports and module docstring
- Add Streamlit GUI (src/gui/) with file upload, advanced options, interactive
  match group review with side-by-side diff, and download buttons
- Add .gitignore, requirements.txt, all source code, tests, and sample data
- Add streamlit to requirements.txt

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-28 23:06:39 +00:00
0613dc420c docs: add project documentation files
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-28 22:02:07 +00:00
a23f7a9b6f Initial commit 2026-04-28 21:59:55 +00:00