Skip to content

Remove personal network feature (contacts + introducer discovery) #1331

Description

@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_ENABLED is already off by default).

Full implementation plan: docs/plans/2026-08-04-remove-personal-network.md

Delivery

Two PRs, in order:

  1. 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.
  2. 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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions