fix: disinto-ops repo owned by dev-bot instead of disinto-admin #235

Closed
opened 2026-04-05 16:23:29 +00:00 by dev-bot · 1 comment
Collaborator

Problem

The ops repo (disinto-ops) is owned by dev-bot. It should be owned by disinto-admin (the site admin account) or a shared Forgejo organization.

Current state:

  • Repo: dev-bot/disinto-ops
  • All API calls reference dev-bot/disinto-ops
  • Branch protection rules are on dev-bot/disinto-ops
  • The vault dispatcher, planner, and other agents use FORGE_OPS_REPO=dev-bot/disinto-ops

This is an artifact of the original disinto init run, which used FORGE_TOKEN (dev-bot) to create the ops repo via POST /api/v1/user/repos — creating it under dev-bot's namespace.

Proposed solution

Transfer the repo to disinto-admin via Forgejo API:

POST /api/v1/repos/dev-bot/disinto-ops/transfer
{"new_owner": "disinto-admin"}

This requires admin privileges. After transfer, update:

  • FORGE_OPS_REPO in projects/disinto.toml (dev-bot/disinto-ops -> disinto-admin/disinto-ops)
  • Any hardcoded references in docker-compose.yml environment vars
  • The git remote URL in the local ops repo clone
  • Branch protection rules (re-apply on new path)

Alternatively, create a Forgejo organization (e.g. 'disinto') and transfer the repo there. This is cleaner long-term as it separates ownership from any single bot account.

Affected files

  • projects/disinto.toml (ops_repo field)
  • docker-compose.yml (FORGE_OPS_REPO env var)
  • Local ~/disinto-ops git remote

Acceptance criteria

  • disinto-ops is owned by disinto-admin (or a shared org)
  • All config references updated to new repo path
  • Vault dispatcher, planner, and other agents work with new path
  • Branch protection rules intact after transfer
## Problem The ops repo (disinto-ops) is owned by dev-bot. It should be owned by disinto-admin (the site admin account) or a shared Forgejo organization. Current state: - Repo: dev-bot/disinto-ops - All API calls reference dev-bot/disinto-ops - Branch protection rules are on dev-bot/disinto-ops - The vault dispatcher, planner, and other agents use FORGE_OPS_REPO=dev-bot/disinto-ops This is an artifact of the original disinto init run, which used FORGE_TOKEN (dev-bot) to create the ops repo via POST /api/v1/user/repos — creating it under dev-bot's namespace. ## Proposed solution Transfer the repo to disinto-admin via Forgejo API: POST /api/v1/repos/dev-bot/disinto-ops/transfer {"new_owner": "disinto-admin"} This requires admin privileges. After transfer, update: - FORGE_OPS_REPO in projects/disinto.toml (dev-bot/disinto-ops -> disinto-admin/disinto-ops) - Any hardcoded references in docker-compose.yml environment vars - The git remote URL in the local ops repo clone - Branch protection rules (re-apply on new path) Alternatively, create a Forgejo organization (e.g. 'disinto') and transfer the repo there. This is cleaner long-term as it separates ownership from any single bot account. ## Affected files - projects/disinto.toml (ops_repo field) - docker-compose.yml (FORGE_OPS_REPO env var) - Local ~/disinto-ops git remote ## Acceptance criteria - [ ] disinto-ops is owned by disinto-admin (or a shared org) - [ ] All config references updated to new repo path - [ ] Vault dispatcher, planner, and other agents work with new path - [ ] Branch protection rules intact after transfer
Author
Collaborator

Superseded by #240 (ops repo under disinto-admin) and #241 (remove johba hardcoding). Closing.

Superseded by #240 (ops repo under disinto-admin) and #241 (remove johba hardcoding). Closing.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: disinto-admin/disinto#235
No description provided.