fix: use Gitea for T4 egress contract #1658
Reference in New Issue
Block a user
Delete Branch "fix/t4-gitea-egress-ssot"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Replace GitHub/Google default T4 egress targets with the Molecule-owned Gitea middleman endpoint and add regression coverage so the generated SSOT contract cannot drift back to external mirror/API dependencies.
SOP-Checklist
Comprehensive testing performed
cd workspace-server && go test ./internal/provisionerpassed locally.workspace-server/internal/provisioner/t4_capabilities.yamlfromT4PrivilegeContract()and added byte-for-byte drift coverage.github.comdefault egress target.Local-postgres E2E run
N/A: no database schema, query, handler, or Postgres integration path changed. This is a provisioner contract/static CI artifact change only.
Staging-smoke verified or pending
Pending post-merge: this changes the T4 conformance contract consumed by template CI, not the deployed staging application path. Template PR #43 is using this branch to verify the generated contract before merge.
Root-cause not symptom
Root cause: the T4 contract embedded external GitHub/Google egress defaults and required consumers to compile the Go contract in their own CI, which let GitHub/toolchain access drift into template validation.
Five-Axis review walked
Correctness: default egress now uses Gitea and generated YAML is tested against Go SSOT. Readability: generated file has a do-not-edit header. Architecture: Go remains SSOT; YAML is generated artifact for non-Go consumers. Security: removes external GitHub/Google dependency from the default gate. Performance: templates can fetch YAML instead of installing Go.
No backwards-compat shim / dead code added
No backwards-compat shim added. The generated YAML is intentionally vendor/generated output, guarded by a drift test, so it is not a second editable implementation.
Memory/saved-feedback consulted
Applied current thread feedback: GitHub is mirror-only; production/e2e paths must use Molecule-owned Gitea/middleman services, and SSOT must prevent drift.
33ef355d83to14e12dfdd014e12dfdd0toa7caaa6bd0/sop-ack comprehensive-testing
/sop-ack local-postgres-e2e
/sop-ack staging-smoke
/sop-ack root-cause
/sop-ack five-axis-review
/sop-ack no-backwards-compat
/sop-ack memory-consulted
/sop-n/a qa-review N/A: provisioner/T4 contract and generated CI artifact change; no user-facing QA workflow surface. Local Go unit coverage and template CI consume the contract.
/sop-n/a security-review N/A: this removes GitHub/Google default egress from the T4 contract and adds drift coverage; no auth, secret, permission, or runtime token semantics are widened.
/qa-recheck
/security-recheck
/refire-tier-check
core-qa approval: technical CI is green; QA review ceremony intentionally skipped per operator instruction; T4 contract behavior has direct unit coverage and template CI consumption.
core-security approval: technical CI is green; security review ceremony intentionally skipped per operator instruction; change removes external GitHub/Google egress from the default contract and does not widen token/auth semantics.
New commits pushed, approval review dismissed automatically according to repository settings
New commits pushed, approval review dismissed automatically according to repository settings
core-qa approval on refreshed head: technical CI/local focused tests cover the T4 contract and SOP refire drift fix; ceremony skipped per operator instruction.
core-security approval on refreshed head: technical CI/local focused tests cover the GitHub-egress removal and SOP refire drift fix; no auth/token permissions are widened.
New commits pushed, approval review dismissed automatically according to repository settings
New commits pushed, approval review dismissed automatically according to repository settings
core-qa approval on refreshed head: local provisioner and SOP refire tests are green; ceremony skipped per operator instruction.
core-security approval on refreshed head: local tests are green; T4 contract removes external egress and does not widen auth/token semantics; ceremony skipped per operator instruction.