tenant_modules table + admin API/UI, before_request module guard, license feature keys incl. per-seat enforcement + per-feature Enterprise SKUs, PostHog server (local evaluation) + posthog-js client, Redis Streams job-bus core (elder:jobs: / elder:results:, consumer groups, XAUTOCLAIM sweeper, DLQ, idempotency keys).
Cross-reference core (added): references registry table, generalized village_id resolver (from lookup_village_id.py), GET /api/v1/refs/{resolve,backlinks}, wiki-link parser service, frontend embed-card components.
Scope authz (added): penguin-aaa OIDC scopes for every module/feature; custom_roles table (tenant scope bundles) for Enterprise.
Spec: docs/design/2026-07-07-elder-platform-merge-design.md (release/v4.0.X)
tenant_modules table + admin API/UI, before_request module guard, license feature keys incl. per-seat enforcement + per-feature Enterprise SKUs, PostHog server (local evaluation) + posthog-js client, Redis Streams job-bus core (elder:jobs: / elder:results:, consumer groups, XAUTOCLAIM sweeper, DLQ, idempotency keys).
Cross-reference core (added): references registry table, generalized village_id resolver (from lookup_village_id.py), GET /api/v1/refs/{resolve,backlinks}, wiki-link parser service, frontend embed-card components.
Scope authz (added): penguin-aaa OIDC scopes for every module/feature; custom_roles table (tenant scope bundles) for Enterprise.
Spec: docs/design/2026-07-07-elder-platform-merge-design.md (release/v4.0.X)