Skip to content

feat(multitenancy): add modular foundation and PostgreSQL persistence (P1-P2) - #22

Open
Adel7418 wants to merge 4 commits into
masterfrom
feat/multitenant-p2-postgresql
Open

Adel7418 wants to merge 4 commits into
masterfrom
feat/multitenant-p2-postgresql

Conversation

@Adel7418

@Adel7418 Adel7418 commented Sep 5, 2026 •

Copy link
Copy Markdown
Owner

Summary

This is the first pull request in the multi-tenant platform chain. It brings the already-reviewed P1 modular foundation and P2 PostgreSQL persistence onto master.

  • add application factory, request/error/redaction boundaries, dependency seams and modular repositories
  • add PostgreSQL 17 dev/test composition, SQLAlchemy/psycopg/Alembic infrastructure and restricted owner/runtime roles
  • add restart-safe audit persistence, durable idempotency and PostgreSQL-backed draft/package stores
  • add migration, backup/restore and isolated real-PostgreSQL verification coverage

Scope note

feat/multitenant-p2-postgresql contains three reviewed commits because P1 is not independently present on master:

  • 53d8c6c — P1 modular multi-tenant foundation
  • 3bf4c3a — P2 PostgreSQL persistence foundation
  • a0971c1 — explicit audit delegation correction

P3 identity/tenancy is intentionally excluded and follows in stacked PR #23 targeting this branch.

Verification

  • P1 full suite: 743 passed, 1 skipped
  • P2 full suite: 762 passed, 1 skipped
  • independent P2 focused real-PostgreSQL suite: 18 passed
  • Ruff, mypy, compileall, OpenAPI sync, secret scan, dependency audit, Compose and diff checks: PASS
  • evidence/verifier/strict fallback reviewer: PASS / NONE
  • reviewer findings: 0 HIGH, 0 MEDIUM
  • reviewed P2 content SHA: a0971c125204e1aa5482ebe612ef75baf2bf21fb
  • final PR head: 64aa60472eab042461f3317fe1b84ca8ae427c66
  • follow-up 64aa604 replaces the local-only /tmp/directpilot-p2-bin/docker test default with docker from PATH while preserving DIRECTPILOT_DOCKER_BIN
  • PR-triggered CI, Security, P1 quality, and P2 PostgreSQL migrations: PASS on the final head

Safety boundary

  • no production deploy or migration execution
  • no live Yandex/Direct write or provider call
  • no real credentials or customer data
  • merge remains a separate action

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant