issue-core/workplans/ISSUE-WP-0006-forgejo-only-projection-boundary.md
tegwick a2aa49470a
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
chore(consistency): sync workplan hub IDs [auto follow-up]
2026-08-03 19:16:52 +02:00

130 lines
3.6 KiB
Markdown

---
id: ISSUE-WP-0006
type: workplan
title: "Forgejo-only forge + projection boundary (not ops queue)"
domain: infotech
repo: issue-core
status: ready
owner: grok
topic_slug: issue-core
priority: medium
created: "2026-08-03"
updated: "2026-08-03"
depends_on: []
related:
- ACT-ADR-005
- ACTIVITY-WP-0022
- ISSUE-WP-0004
- ISSUE-WP-0005
state_hub_workstream_id: "0b75b7ae-c8e3-4737-8fa8-2f60a12e6d14"
---
# ISSUE-WP-0006 — Forgejo-only projection boundary
## Origin
ACT-ADR-005 and founder direction (2026-08-03):
1. **Gitea is no longer relevant** — self-hosted forge is **Forgejo** only.
2. issue-core must not be used as the **ops claim queue** for activity-core.
3. issue-core remains the **multi-tracker facade** (project/link external issues).
## Goal
Align code, docs, and env names so operators and agents never plan on Gitea,
and so rein-aharness stops treating issue-core as the primary automation queue
(handoff language to ops_run in ACTIVITY-WP-0026 / REIN-A-0002).
## Tasks
### T01 — Terminology sweep: Gitea → Forgejo (product language)
```task
id: ISSUE-WP-0006-T01
status: todo
priority: high
state_hub_task_id: "e2148c3f-fe46-4397-af23-dda7eab5534e"
```
Sweep INTENT, SCOPE, README, ROADMAP, workplans, comments:
- Prefer **Forgejo** for the self-hosted forge product.
- Where code talks to the Forgejo HTTP API that is Gitea-compatible, say
**“Forgejo (Gitea-compatible API)”** once — do not present Gitea as a
supported second product or migration target.
- Rename operator-facing env docs that say `GITEA_*` for forge access to
`FORGEJO_*` **or** document aliases: `FORGEJO_TOKEN` preferred;
legacy `GITEA_*` only as deprecated alias if code still requires it.
**Done when:** `rg -i gitea` in docs is zero for “we use Gitea”, or only
compatibility notes remain.
---
### T02 — INTENT/SCOPE: ops queue non-goal
```task
id: ISSUE-WP-0006-T02
status: todo
priority: high
state_hub_task_id: "78247ad9-65fb-4966-96ec-0a0c70620b0e"
```
Explicit section:
- Internal scheduled automation claim/execute → **activity-core ops_run**
(ACT-ADR-005).
- issue-core does **not** provide the fleet ops claim queue.
- `POST /issues/` = external tracker create/link only.
- Default activity-core sink remains state-hub progress + ops_run; **not** rest
to issue-core for Binky/FI.
**Done when:** INTENT/SCOPE quote ACT-ADR-005; no contradiction with “poll us for automation.”
---
### T03 — Connector docs: projection path only
```task
id: ISSUE-WP-0006-T03
status: todo
priority: medium
state_hub_task_id: "41bd7596-62cb-475b-8ad0-648066ffd8b8"
```
Update AGENT_INTEGRATION / connector docs:
1. Author work record in repo → hub index.
2. Optional: project/link via issue-core to **Forgejo** (or GitHub/Jira later).
3. Mapping UUID ↔ `(backend=forgejo, external_id)`.
**Done when:** happy path diagram has no “activity-core → issue-core → harness”
as the primary automation loop.
---
### T04 — Coordinate rein-aharness intake docs
```task
id: ISSUE-WP-0006-T04
status: todo
priority: low
state_hub_task_id: "8f217196-ab3e-4443-b0c8-c670cf9c33f5"
```
Message or PR note for REIN-A-0002-T06: issue-core poll = legacy/external only.
No code change required in issue-core if rein owns the doc cut.
**Done when:** cross-link in ISSUE-WP-0006 and REIN-A-0002.
## Acceptance
- [ ] No Gitea-as-product planning
- [ ] Projection boundary clear
- [ ] Ops claim queue explicitly out of scope for issue-core
## Out of scope
- Implementing ops_run (ACTIVITY-WP-0026)
- Fixing Forgejo PAT for rest sink (only if projection needs it later)
- GitHub/Jira connectors