Skip to content

feat: Postgres array editor, keyring persistence fix, table styles & UI polish - #48

Closed
broisnischal wants to merge 2 commits into
masterfrom
feat/impfixes-rebase
Closed

feat: Postgres array editor, keyring persistence fix, table styles & UI polish#48
broisnischal wants to merge 2 commits into
masterfrom
feat/impfixes-rebase

Conversation

@broisnischal

Copy link
Copy Markdown
Owner

Rebases the stranded feat/impfixes branch onto current master and opens it as a reviewable PR. The original single commit was misnamed chore: working on capacitor — it actually carries finished features (no capacitor code). It was 9 commits behind master and had never been PR'd.

Cleanup applied during rebase: dropped stray tooling files that were committed by mistake (.claude/phobos-benchmark.jsonl, .claude/phobos-state.md, src-tauri/.claude/phobos-state.md).

What's included

Postgres array support (the "array in datatable" fix)

  • query.rs — decode array columns (varchar[]/int[]/…) into JSON arrays. Previously they fell through to a raw-bytes path that reinterpreted Postgres's binary array wire format as UTF-8 → garbage boxes.
  • ArrayCellEditor.svelte (new) — Prisma-Studio-style add / remove / reorder / insert editor for array cells; writes a cast Postgres array literal ({a,b}).
  • DataTable.svelte — wiring + {a,b} display, gated to Postgres/CockroachDB.

Keyring persistence fix

  • Cargo.toml / secrets.rs — enable per-platform keyring backends (apple-native, windows-native, sync-secret-service, crypto-rust). Without a backend feature, keyring v3 silently uses a non-persistent in-memory mock (writes return Ok but read back empty).

Data table & UX

  • 6 grid styles (lines / bordered / striped / dotted / dots / minimal) in Settings.
  • Editable DML preview before apply.
  • Auto-reconnect on startup setting.
  • More keyboard shortcuts (reopen tab, go-to-tab 1–9, toggle tab bar, disconnect).
  • Connection screen / provider sign-in polish (merged cleanly with the brand-mark sign-in button already on master).

Verification

  • cargo check --no-default-features clean (keyring recompiled with new backend features).
  • npm run build clean.
  • Cherry-pick auto-merged ProviderConnect.svelte with the sign-in button change already in master; I verified the merged button region by hand.

Notes

  • A changeset is included, so this is release-ready. Add the release:minor label when you want to cut the release (per your usual flow — I left it off so it doesn't auto-release on merge).
  • origin/feat/impfixes is left untouched (no force-push); this is a fresh feat/impfixes-rebase branch.

broisnischal and others added 2 commits July 14, 2026 23:16
…UI polish

Rebased from feat/impfixes onto master (the original 'chore: working on
capacitor' commit — misnamed; it carries finished features, not capacitor).
Dropped stray .claude/phobos-* tooling files.

- Postgres array columns: decode varchar[]/int[]/… into JSON arrays (was
  garbage bytes), with a dedicated Prisma-style ArrayCellEditor (add/remove/
  reorder) that writes a cast array literal.
- Keyring: enable per-platform backend features so saved credentials actually
  persist (v3 without a backend silently used a non-persistent in-memory mock).
- Data table: 6 selectable grid styles (lines/bordered/striped/dotted/dots/minimal).
- Editable prettified DML preview before apply; auto-reconnect on startup.
- More keyboard shortcuts (reopen tab, go-to-tab 1–9, toggle tab bar, disconnect).
- Connection screen / provider sign-in polish.
@changeset-bot

changeset-bot Bot commented Jul 14, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 9449f62

The changes in this PR will be included in the next version bump.

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@broisnischal

Copy link
Copy Markdown
Owner Author

Superseded by #49 (consolidated release PR, labeled release:minor → v1.12.0). All changes from this PR are included there.

@github-actions github-actions Bot locked and limited conversation to collaborators Jul 14, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant