Summary
We are fully removing the personal-network concept: the auto-created per-user "My Network", the contacts feature built on it, and introducer discovery. No feature flag, no re-homing of contacts (CONTACTS_ENABLED is already off by default).
Full implementation plan: docs/plans/2026-08-04-remove-personal-network.md
Delivery
Two PRs, in order:
- Code removal (ship-dark): protocol (contacts modules, introducer discovery, scope-policy simplification), API (
ensurePersonalNetwork, ContactService, CONTACTS_ENABLED, adapter cleanup), frontends (web /mynetwork + scope dropdown, CLI filter, mac app), docs. Schema untouched; personal-network creation stops.
- Data cleanup + destructive migration: prod cleanup of personal
networks/network_members/ghost users per the backfill-production-data skill (backup branch, dry run, transaction, exact counts), then a Drizzle migration dropping personal_networks and networks.is_personal. Only after PR 1 is deployed and verified.
Key risk
Intents whose only network assignment is their owner's personal network lose that assignment. Check counts on the Neon dev branch first and pause if the number is large (prior art: .rpiv/artifacts/designs/intent-network-orphaning-fix.md).
@yanekyuk please execute this plan — the plan doc has the task-by-task checklist and points at the relevant repo skills (worktree workflow, targeted validation, prod backfill safety).
cc @serefyarar
Summary
We are fully removing the personal-network concept: the auto-created per-user "My Network", the contacts feature built on it, and introducer discovery. No feature flag, no re-homing of contacts (
CONTACTS_ENABLEDis already off by default).Full implementation plan:
docs/plans/2026-08-04-remove-personal-network.mdDelivery
Two PRs, in order:
ensurePersonalNetwork,ContactService,CONTACTS_ENABLED, adapter cleanup), frontends (web/mynetwork+ scope dropdown, CLI filter, mac app), docs. Schema untouched; personal-network creation stops.networks/network_members/ghost users per the backfill-production-data skill (backup branch, dry run, transaction, exact counts), then a Drizzle migration droppingpersonal_networksandnetworks.is_personal. Only after PR 1 is deployed and verified.Key risk
Intents whose only network assignment is their owner's personal network lose that assignment. Check counts on the Neon dev branch first and pause if the number is large (prior art:
.rpiv/artifacts/designs/intent-network-orphaning-fix.md).@yanekyuk please execute this plan — the plan doc has the task-by-task checklist and points at the relevant repo skills (worktree workflow, targeted validation, prod backfill safety).
cc @serefyarar