Skip to content

CTRL-REPO-THOTH-01: Canonical shared doctrine and core repository controls #819

Description

@ja573

Parent: #818

CTRL-REPO-THOTH-01 - Canonical shared doctrine and core repository controls

Programme: Shared Engineering Control
Repository: thoth-pub/thoth
Task ID: CTRL-REPO-THOTH-01
Risk: MEDIUM governance
Reasoning: HIGH
Workflow: STANDARD
Original authorized base: develop @ ed32712766c8f5a1951bb53ec3192e18f067c7d2
Production/runtime effect: NONE

Objective

Reconcile the canonical Thoth engineering-delivery doctrine with the approved Control & Delivery model so GitHub is the durable live task ledger, mutation permissions are granular and non-transitive, cross-repository impact is assessed before substantive task scope is approved, and repository-local controls inherit a single shared contract without copying repository-specific assumptions.

Authoritative merged result

The core control work and its subsequent reconciliation/closeout stages are merged on develop:

  1. PR docs(ai-delivery): CTRL-REPO-THOTH-01 canonical shared doctrine and core repository controls #820 - core shared doctrine / repository map
    • independently approved source head: f789f3b50576c40efa0fd6050f75aac51f711970
    • merge commit: ec7868a4a44b3d52da5638975995bb66a488b3b4
  2. PR CTRL-DELIVERY-01: reconcile canonical repository map with re-verified live state #822 - canonical map reconciliation
    • independently approved source head: 08a700ecad7e4c9de8cfe561eaa08c23be0813cc
    • merge commit: e70fd5e04f9ee8d6b0dfb85ff14ef3b0622fdab2
  3. PR CTRL-DELIVERY-01-CLOSEOUT-01: reconcile merged Shared Engineering Control rollout state #823 - final rollout/control-gap closeout reconciliation
    • independently approved source head: e304cf93e5c90d921dd535b9d72d1a2c85403516
    • merge commit / current authoritative develop: 0a33d553ef82140caf6c0378c1dfc5f48782361c

All three stages were documentation/control work. No runtime source, schema/migration, workflow implementation, provider configuration, release or deployment file was introduced by these changes.

Durable control result

The merged doctrine now establishes:

  • GitHub issues/PRs/reviews/CI/merge records as the live lifecycle ledger;
  • durable recovery without relying on chat history;
  • deny-by-default granular non-transitive action authorization;
  • exact authorized base and bounded write budgets;
  • mandatory cross-repository impact analysis before substantive scope approval;
  • downstream compatibility and merge/deployment ordering controls;
  • one bounded task/branch/PR per repository;
  • exact-head independent review;
  • separate implementation, review, merge, migration, deployment and production-activation gates;
  • explicit automatic-side-effect accounting.

The task specification, implementation handoff/report and independent-review templates carry those controls. The repository/contract map distinguishes verified owners and consumers, including the standalone Python thoth-pub/thoth-client from the internal Rust workspace member.

Cross-repository result

The six repository-local child controls were implemented only after the shared doctrine merged. Their authoritative integration heads are:

  • App dev @ 7a4e7c6ceaec36fbdb201eaeb9ae36985a709889
  • Dissemination develop @ 71ef7724326e9e75ccea2c004b5ca5be8197f27e
  • standalone Client develop @ d6ffdc67c48cbf64f8a716f26d7d82eb541d1ecf
  • Sphinx develop @ ff7de985d03f0c94d5ad8d60727f9cf85b6435cd
  • Pyramid dev @ 2ee7a71f068db828a547fb60627d5a89243d209d
  • Strapi develop @ 306220326189697252a708a203d6b4cc02f018cc

Final cross-repository integration review under parent #818 is APPROVED against those six heads plus thoth/develop @ 0a33d553ef82140caf6c0378c1dfc5f48782361c, with no unresolved P0/P1 findings. Parent integration approval is recorded in #818 comment 5303923636.

Acceptance criteria

  • Shared doctrine separates repository read, source write, branch, commit, push, PR mutation, issue mutation, manual CI, provider read/write, migration, release/publication, merge, deployment and activation permissions.
  • Permission for one action never implies another.
  • GitHub holds live lifecycle state; committed docs retain durable doctrine/architecture.
  • Substantive/contract-affecting tasks require cross-repository impact analysis before repository scope approval.
  • Known consumers are assigned downstream work or explicitly evidenced as compatible.
  • Implementation handoffs contain exact base/target/branch, write budget, authorized/prohibited actions, automatic side effects, acceptance, validation and HOLD/STOP conditions.
  • Implementation reports record actual actions/effects against authorization.
  • Independent review verifies exact head, actual diff, acceptance evidence, compatibility and action/write-budget compliance.
  • Repository map includes verified standalone Client, Sphinx, Pyramid and Strapi records alongside the existing managed repositories.
  • Standalone Python client is distinguished from the internal Rust thoth-client crate.
  • Sphinx canonical state is reconciled without performing BR-SPHINX-01 or SPHINX-BOOT-01.
  • No runtime, schema, migration, auth implementation, CI workflow, branch-protection or deployment behaviour change was introduced.

Separate follow-up work

Branch normalization, Sphinx bootstrap, Dissemination README/environment protection, Pyramid dev CI coverage, Strapi Docker/Node CI repair and Metrics-programme documentation/control work remain separate tasks. They do not reopen this completed core-control implementation unless a future change invalidates the shared doctrine itself.

Current gate

MERGED - RECONCILED - FINAL PROGRAMME INTEGRATION APPROVED - CLOSURE AUTHORIZATION REQUIRED.

No further source action is required for CTRL-REPO-THOTH-01. Issue closure remains a separate mutation requiring explicit authorization.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    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