[Feature] Implement scoped local address books and contact CRUD #3

Closed
opened 2026-07-13 00:53:46 +02:00 by zemion · 1 comment
Owner

Goal

Make govoplan-addresses useful without external sync.

Scope

  • backend tables and migrations for address books, contacts, contact methods, postal addresses, tags, and provenance
  • permissions and role templates for viewing/managing address books
  • CRUD API for address books and contacts
  • WebUI for user, group, tenant, and system-scoped books
  • soft delete and restore
  • read-only contact lookup for the WebUI

Acceptance Criteria

  • Users can create personal address books and contacts.
  • Admins can create tenant/system books.
  • Address data persists and is shown in the address-book UI.
  • Disabled/read-only actions explain why they are unavailable.

See govoplan-addresses/docs/ADDRESS_MODULE_ARCHITECTURE.md and govoplan-addresses/docs/IMPLEMENTATION_PLAN.md.

## Goal Make `govoplan-addresses` useful without external sync. ## Scope - backend tables and migrations for address books, contacts, contact methods, postal addresses, tags, and provenance - permissions and role templates for viewing/managing address books - CRUD API for address books and contacts - WebUI for user, group, tenant, and system-scoped books - soft delete and restore - read-only contact lookup for the WebUI ## Acceptance Criteria - Users can create personal address books and contacts. - Admins can create tenant/system books. - Address data persists and is shown in the address-book UI. - Disabled/read-only actions explain why they are unavailable. See `govoplan-addresses/docs/ADDRESS_MODULE_ARCHITECTURE.md` and `govoplan-addresses/docs/IMPLEMENTATION_PLAN.md`.
Author
Owner

Codex State: done

Summary

  • Implemented persistent scoped local address books and contact CRUD for user/group/tenant/system books.
  • Added address-owned models, baseline migration, router, permissions, role templates, tenant summaries, uninstall guards, and lookup/search endpoint.
  • Replaced the mock address-book WebUI with API-backed book/contact management.

Changed Files

  • src/govoplan_addresses/backend/manifest.py
  • src/govoplan_addresses/backend/db/models.py
  • src/govoplan_addresses/backend/router.py
  • src/govoplan_addresses/backend/service.py
  • src/govoplan_addresses/backend/schemas.py
  • src/govoplan_addresses/backend/migrations/versions/b8c9d0e1f2a3_v018_addresses_baseline.py
  • webui/src/features/addressbook/AddressBookPage.tsx
  • webui/src/api/addresses.ts
  • docs/IMPLEMENTATION_PLAN.md

Verification

  • PYTHONPATH=/mnt/DATA/git/govoplan-core/src:/mnt/DATA/git/govoplan-addresses/src /mnt/DATA/git/govoplan/.venv/bin/python -m unittest discover -s tests
  • cd /mnt/DATA/git/govoplan-core/webui && /home/zemion/.nvm/versions/node/v22.22.3/bin/npm run build

Next / Blocked

  • Follow-up issues remain for restore UI, richer multi-value/vCard editing, and external sync milestones.
## Codex State: done ### Summary - Implemented persistent scoped local address books and contact CRUD for user/group/tenant/system books. - Added address-owned models, baseline migration, router, permissions, role templates, tenant summaries, uninstall guards, and lookup/search endpoint. - Replaced the mock address-book WebUI with API-backed book/contact management. ### Changed Files - `src/govoplan_addresses/backend/manifest.py` - `src/govoplan_addresses/backend/db/models.py` - `src/govoplan_addresses/backend/router.py` - `src/govoplan_addresses/backend/service.py` - `src/govoplan_addresses/backend/schemas.py` - `src/govoplan_addresses/backend/migrations/versions/b8c9d0e1f2a3_v018_addresses_baseline.py` - `webui/src/features/addressbook/AddressBookPage.tsx` - `webui/src/api/addresses.ts` - `docs/IMPLEMENTATION_PLAN.md` ### Verification - `PYTHONPATH=/mnt/DATA/git/govoplan-core/src:/mnt/DATA/git/govoplan-addresses/src /mnt/DATA/git/govoplan/.venv/bin/python -m unittest discover -s tests` - `cd /mnt/DATA/git/govoplan-core/webui && /home/zemion/.nvm/versions/node/v22.22.3/bin/npm run build` ### Next / Blocked - Follow-up issues remain for restore UI, richer multi-value/vCard editing, and external sync milestones.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: add-ideas/govoplan-addresses#3
No description provided.