Unification polish: LinkedIn in the grid inline contact editor (v0.1.0:54)

The fundraising grid's per-contact editor now has a LinkedIn URL field next to
name, email, title, and location. It threads through the grid contact object and
sanitize (which preserves contact-object fields), and _upsert_contact_from_fundraising
now reads and persists linkedin_url on both the update and insert paths — so a
LinkedIn entered in the grid lands on the linked contact record.

Test: test_grid_contact_link.py extended to assert LinkedIn entered in the grid
persists to the contact (idempotent). Frontend html.parser clean.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Keysat
2026-06-05 15:24:50 -05:00
parent 49d384a0fb
commit 300041a7ec
6 changed files with 50 additions and 14 deletions
+3 -2
View File
@@ -18,8 +18,9 @@ export const PACKAGE_TITLE = 'Ten31 Database'
// * 0.1.0:50 (Set Anthropic API Key UI action — no terminal needed)
// * 0.1.0:51 (entity-resolution fix: people double-count + duplicate queue)
// * 0.1.0:52 (grid/contacts unification: contact_id link + grid as front door)
// * Current: 0.1.0:53 (seed v5 thesis into the Architect Workshop)
export const PACKAGE_VERSION = '0.1.0:53'
// * 0.1.0:53 (seed v5 thesis into the Architect Workshop)
// * Current: 0.1.0:54 (unification polish: LinkedIn in grid inline contact editor)
export const PACKAGE_VERSION = '0.1.0:54'
export const DATA_MOUNT_PATH = '/data'
export const WEB_PORT = 8080