docs(ISSUE-WP-0006): Forgejo-only language and projection boundary
Prefer Forgejo as the self-hosted forge product. Keep Gitea only as the Gitea-compatible API identifier (module backends/gitea, type string gitea). FORGEJO_TOKEN is preferred; GITEA_* remains a deprecated alias. INTENT/SCOPE quote ACT-ADR-005: issue-core is not the fleet ops claim queue. Connector docs describe repo work record → hub index → optional Forgejo projection, not activity-core → issue-core → harness. Assistant: grok Assistant-Session: 01a09dc6-3f0d-7c93-8b11-8e83c0623d49
This commit is contained in:
parent
f9d276dadf
commit
ee9b85215d
34 changed files with 410 additions and 263 deletions
|
|
@ -49,8 +49,8 @@ be an alternative origin.
|
|||
|
||||
This workplan brings issue-core's own docs, scope, and (where cheap) code
|
||||
in line with that decision. It does not remove issue-core's existing
|
||||
capability — Gitea/GitHub backend CRUD stays useful — it retargets *what
|
||||
issue-core is for*.
|
||||
capability — Forgejo/GitHub backend CRUD stays useful — it retargets *what
|
||||
issue-core is for*. (Product language: Forgejo only; see ISSUE-WP-0006.)
|
||||
|
||||
## Task: Rewrite INTENT.md — connector, not landing zone
|
||||
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ Close the gap between:
|
|||
| Layer | State at start of this WP |
|
||||
| --- | --- |
|
||||
| **INTENT** | Work-record-aligned connector (2026-07-22) |
|
||||
| **SCOPE §1 shipped** | Models, SQLite/Gitea, CLI, REST TaskSpec, backend sync |
|
||||
| **SCOPE §1 shipped** | Models, SQLite/Forgejo, CLI, REST TaskSpec, backend sync |
|
||||
| **SCOPE §1.8 / target** | Mapping store/API, boundary sync, work_record_uuid, dual-lifecycle rules |
|
||||
|
||||
Deliver a **minimum viable connector core**: durable mapping + project/link
|
||||
|
|
@ -137,14 +137,14 @@ state_hub_task_id: "027871b0-696d-5ab7-b18c-b26167e97813"
|
|||
Per `docs/uuid-external-id-mapping.md`:
|
||||
|
||||
- Table `work_record_issue_map` (or equivalent) on local backend / dedicated
|
||||
store used even when CRUD backend is Gitea
|
||||
store used even when CRUD backend is Forgejo
|
||||
- Uniqueness: active `(backend, external_id)` and active
|
||||
`(work_record_uuid, backend)`
|
||||
- Domain service `MappingService`: upsert, resolve by UUID, by canonical id
|
||||
(if provided), by external id, detach
|
||||
- Unit tests for idempotent project and uniqueness
|
||||
|
||||
**Acceptance:** Tests pass without a live Gitea; store survives reconnect;
|
||||
**Acceptance:** Tests pass without a live Forgejo; store survives reconnect;
|
||||
SCOPE §1.8 “mapping store” can move toward shipped with an honest partial
|
||||
note until CLI/API land.
|
||||
|
||||
|
|
@ -208,7 +208,7 @@ Implement **outward-only** application of T03 rules for mapped records
|
|||
- Do **not** write work-record files
|
||||
- Inward sync remains out of scope for this task (document as next)
|
||||
|
||||
**Acceptance:** Policy tests + one integration-style test on local/Gitea mock;
|
||||
**Acceptance:** Policy tests + one integration-style test on local/Forgejo mock;
|
||||
SCOPE distinguishes backend sync vs work-record boundary sync clearly.
|
||||
|
||||
## Task: SCOPE inventory refresh after implementation
|
||||
|
|
|
|||
|
|
@ -4,18 +4,20 @@ type: workplan
|
|||
title: "Forgejo-only forge + projection boundary (not ops queue)"
|
||||
domain: infotech
|
||||
repo: issue-core
|
||||
status: ready
|
||||
status: finished
|
||||
owner: grok
|
||||
topic_slug: issue-core
|
||||
priority: medium
|
||||
created: "2026-08-03"
|
||||
updated: "2026-08-03"
|
||||
updated: "2026-09-14"
|
||||
depends_on: []
|
||||
related:
|
||||
- ACT-ADR-005
|
||||
- ACTIVITY-WP-0022
|
||||
- ISSUE-WP-0004
|
||||
- ISSUE-WP-0005
|
||||
- REIN-A-0002
|
||||
- REINAH-WP-0005
|
||||
state_hub_workstream_id: "4d465264-cbe1-56ba-84ed-bd580b649b76"
|
||||
---
|
||||
|
||||
|
|
@ -41,7 +43,7 @@ and so rein-aharness stops treating issue-core as the primary automation queue
|
|||
|
||||
```task
|
||||
id: ISSUE-WP-0006-T01
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "927eee42-e22d-5c0d-a4f8-dcd36c53c8e9"
|
||||
```
|
||||
|
|
@ -65,7 +67,7 @@ compatibility notes remain.
|
|||
|
||||
```task
|
||||
id: ISSUE-WP-0006-T02
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "a1d69a48-833b-5e5e-8286-14f5aba627f3"
|
||||
```
|
||||
|
|
@ -87,7 +89,7 @@ Explicit section:
|
|||
|
||||
```task
|
||||
id: ISSUE-WP-0006-T03
|
||||
status: todo
|
||||
status: done
|
||||
priority: medium
|
||||
state_hub_task_id: "75eef8a3-abd7-50dd-9171-3488fda84da5"
|
||||
```
|
||||
|
|
@ -107,7 +109,7 @@ as the primary automation loop.
|
|||
|
||||
```task
|
||||
id: ISSUE-WP-0006-T04
|
||||
status: todo
|
||||
status: done
|
||||
priority: low
|
||||
state_hub_task_id: "5be0bce4-1816-599f-a98b-4fa1565a8b0e"
|
||||
```
|
||||
|
|
@ -117,14 +119,32 @@ 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.
|
||||
|
||||
**Closed 2026-09-14:** REIN-A-0002 was completed as **REINAH-WP-0005**. T06
|
||||
there already marked issue-core poll as legacy/external. Cross-links added:
|
||||
|
||||
- this workplan `related: REIN-A-0002`, `REINAH-WP-0005`
|
||||
- `~/rein-aharness/workplans/REINAH-WP-0005-ops-run-claim-loop.md` T06 note
|
||||
+ `related: ISSUE-WP-0006`
|
||||
- `~/rein-aharness/docs/task-intake.md` (legacy/external section)
|
||||
- State Hub message to `rein-aharness`
|
||||
|
||||
## Acceptance
|
||||
|
||||
- [ ] No Gitea-as-product planning
|
||||
- [ ] Projection boundary clear
|
||||
- [ ] Ops claim queue explicitly out of scope for issue-core
|
||||
- [x] No Gitea-as-product planning
|
||||
- [x] Projection boundary clear
|
||||
- [x] 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
|
||||
- Implementing ops_run (ACTIVITY-WP-0026) — lives in activity-core / REINAH-WP-0005
|
||||
- Fixing Forgejo PAT for rest sink (only if projection needs it later) — ISSUE-WP-0003 residual / deploy
|
||||
- GitHub/Jira connectors — product growth, not this workplan
|
||||
|
||||
No new residual: those items already have live work records elsewhere.
|
||||
|
||||
## Close note (2026-09-14)
|
||||
|
||||
Product language is **Forgejo** only. The HTTP API is Gitea-compatible;
|
||||
module `issue_core.backends.gitea` and backend type `gitea` remain as
|
||||
identifiers. `FORGEJO_TOKEN` is preferred; `GITEA_*` is a deprecated alias.
|
||||
INTENT/SCOPE quote ACT-ADR-005: issue-core is not the ops claim queue.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue