[Feature] Add validated module architecture and provider authority declarations #279

Closed
opened 2026-07-31 23:59:06 +02:00 by zemion · 1 comment
Owner

Outcome

Make the architectural meaning and external behavior of an installed module machine-readable without moving domain semantics into Core.

Parent: GovOPlaN/govoplan#29

Scope

  • Add a backward-compatible ModuleManifest architecture declaration for module kind/layer, owned and non-owned concepts, supported source-authority modes, maturity claim, known limits, reference packages, and evidence links.
  • Define source-authority modes: native authoritative, external authoritative, external mirror, governed sync, governance overlay, and linked reference.
  • Add a provider declaration composing existing capability/interface, external-reference, action/effect, health, policy, audit, and documentation contracts.
  • Describe operations, fields/objects, revisions, freshness, health, limits, idempotency, conflicts, outcome-unknown handling, evidence, correction/compensation, reconciliation, outage, classification, purpose, retention, and secrets.
  • Project declarations through platform metadata and signed release/catalog tooling; expose them to Docs, Ops, and configuration-package preflight.
  • Keep declarations optional through the 0.1 compatibility line, then add a staged rollout/check across all manifests.

Acceptance criteria

  • Registry and static workspace checks reject malformed declarations and incompatible selected modes.
  • A maturity string alone cannot create a supported/LTS claim; release checks require referenced evidence appropriate to the claim.
  • Optional-module permutations remain valid and providers remain domain-owned.
  • At least one read-only external mirror and one writable outcome-unknown/reconciliation provider prove the contract.
  • User/admin/operator documentation explains the effective configured mode and known limits.

Architecture: https://git.add-ideas.de/GovOPlaN/govoplan/src/branch/main/docs/INSTITUTIONAL_GOVERNANCE_TARGET_ARCHITECTURE.md

## Outcome Make the architectural meaning and external behavior of an installed module machine-readable without moving domain semantics into Core. Parent: https://git.add-ideas.de/GovOPlaN/govoplan/issues/29 ## Scope - Add a backward-compatible `ModuleManifest` architecture declaration for module kind/layer, owned and non-owned concepts, supported source-authority modes, maturity claim, known limits, reference packages, and evidence links. - Define source-authority modes: native authoritative, external authoritative, external mirror, governed sync, governance overlay, and linked reference. - Add a provider declaration composing existing capability/interface, external-reference, action/effect, health, policy, audit, and documentation contracts. - Describe operations, fields/objects, revisions, freshness, health, limits, idempotency, conflicts, outcome-unknown handling, evidence, correction/compensation, reconciliation, outage, classification, purpose, retention, and secrets. - Project declarations through platform metadata and signed release/catalog tooling; expose them to Docs, Ops, and configuration-package preflight. - Keep declarations optional through the 0.1 compatibility line, then add a staged rollout/check across all manifests. ## Acceptance criteria - Registry and static workspace checks reject malformed declarations and incompatible selected modes. - A maturity string alone cannot create a supported/LTS claim; release checks require referenced evidence appropriate to the claim. - Optional-module permutations remain valid and providers remain domain-owned. - At least one read-only external mirror and one writable outcome-unknown/reconciliation provider prove the contract. - User/admin/operator documentation explains the effective configured mode and known limits. Architecture: https://git.add-ideas.de/GovOPlaN/govoplan/src/branch/main/docs/INSTITUTIONAL_GOVERNANCE_TARGET_ARCHITECTURE.md <!-- codex-module-architecture-provider-declaration-2026-07-31 -->
Author
Owner

Codex State: done

Summary

  • Added versioned, backward-compatible module architecture and external-provider declarations with strict registry validation.
  • Maturity claims now require typed repository evidence; source authority, behavior, limits, recovery, and ownership boundaries are machine-readable.
  • Platform metadata, signed catalogs, release synthesis, configuration-package preflight, Docs, and Ops preserve the declarations.
  • Connectors proves bounded read-only mirrors; Calendar proves writable CalDAV synchronization with outcome-unknown reconciliation.

Changed Files

  • src/govoplan_core/core/provider_governance.py
  • src/govoplan_core/core/modules.py
  • src/govoplan_core/core/registry.py
  • src/govoplan_core/core/module_package_catalog.py
  • docs/MODULE_ARCHITECTURE.md

Verification

  • Core provider/module contract suite: passed
  • Workspace manifest registry: 54/54 manifests loaded; staged architecture coverage reported
  • Core WebUI production build and bundle budgets: passed
## Codex State: done ### Summary - Added versioned, backward-compatible module architecture and external-provider declarations with strict registry validation. - Maturity claims now require typed repository evidence; source authority, behavior, limits, recovery, and ownership boundaries are machine-readable. - Platform metadata, signed catalogs, release synthesis, configuration-package preflight, Docs, and Ops preserve the declarations. - Connectors proves bounded read-only mirrors; Calendar proves writable CalDAV synchronization with outcome-unknown reconciliation. ### Changed Files - `src/govoplan_core/core/provider_governance.py` - `src/govoplan_core/core/modules.py` - `src/govoplan_core/core/registry.py` - `src/govoplan_core/core/module_package_catalog.py` - `docs/MODULE_ARCHITECTURE.md` ### Verification - `Core provider/module contract suite: passed` - `Workspace manifest registry: 54/54 manifests loaded; staged architecture coverage reported` - `Core WebUI production build and bundle budgets: passed`
zemion removed the
status
ready
codex/ready
labels 2026-08-01 03:36:50 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: GovOPlaN/govoplan-core#279