feat: deliver module database ABI through manifest v8 #71

Merged
Zayin_Admin merged 1 commits from feat/manifest-v8-database-abi into main 2026-10-07 22:45:53 +00:00
Member

Summary

  • hard-cut module manifests to v8 and add strict optional database.abi = 1
  • select one stable database service per module, with distinct attributed ABI-v1 executors
  • add ORM-neutral schema metadata plus a module-side Drizzle metadata helper
  • validate legacy and ABI-v1 schema paths in Core, Doctor, and modules:validate
  • document the one-slice template/package transition boundary

Type design

Module runtime definitions are discriminated by database: { abi: 1 }. The SDK gives ABI modules ModuleDatabaseExecutor and legacy v8 modules ModuleDatabase without exposing a union to module authors. Core rejects runtime/manifest discriminator mismatches.

Verification

  • pnpm verify
  • pnpm test:migrations:integration (15 files, 396 tests)
  • pnpm infrastructure:config
  • pnpm deploy:config
  • pnpm deploy:smoke
  • focused contracts, module SDK, module database, Core, API, and module package tests

All final gates passed. An initial saturated full-suite run had two unrelated 5-second import-safety timeout flakes; both passed immediately in isolation and the complete verify rerun passed.

Deliberate scope

The template manifest is v8 but remains in legacy database mode. Package transitional.databaseRuntime behavior, packageFormat, Signage, and rog-ekklesia-instance are unchanged.

## Summary - hard-cut module manifests to v8 and add strict optional database.abi = 1 - select one stable database service per module, with distinct attributed ABI-v1 executors - add ORM-neutral schema metadata plus a module-side Drizzle metadata helper - validate legacy and ABI-v1 schema paths in Core, Doctor, and modules:validate - document the one-slice template/package transition boundary ## Type design Module runtime definitions are discriminated by database: { abi: 1 }. The SDK gives ABI modules ModuleDatabaseExecutor and legacy v8 modules ModuleDatabase without exposing a union to module authors. Core rejects runtime/manifest discriminator mismatches. ## Verification - pnpm verify - pnpm test:migrations:integration (15 files, 396 tests) - pnpm infrastructure:config - pnpm deploy:config - pnpm deploy:smoke - focused contracts, module SDK, module database, Core, API, and module package tests All final gates passed. An initial saturated full-suite run had two unrelated 5-second import-safety timeout flakes; both passed immediately in isolation and the complete verify rerun passed. ## Deliberate scope The template manifest is v8 but remains in legacy database mode. Package transitional.databaseRuntime behavior, packageFormat, Signage, and rog-ekklesia-instance are unchanged.
ekklesia-bot added 1 commit 2026-10-07 22:29:51 +00:00
feat: deliver module database ABI by manifest
CI / verify (pull_request) Successful in 1m0s
CI / infrastructure-smoke (pull_request) Successful in 36s
CI / migration-smoke (pull_request) Successful in 1m53s
CI / image-build (pull_request) Successful in 23s
CI / deploy-smoke (same-origin) (pull_request) Successful in 50s
CI / deploy-smoke (split) (pull_request) Successful in 1m30s
49b4d4165d
Zayin_Admin merged commit 20ad1ae208 into main 2026-10-07 22:45:53 +00:00
Zayin_Admin deleted branch feat/manifest-v8-database-abi 2026-10-07 22:45:53 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Zayin/Ekklesia#71