feat: implement ISSUE-WP-0005 connector mapping and scope alignment
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 2s
Build and Publish Container Image / build-and-push (push) Successful in 1m22s

Add MappingService (work_record_uuid ↔ external id), project/map CLI with
outward push-status, optional TaskSpec work_record fields, boundary-sync
policy, and packaging/capability framing cleanup. Mark WP-0005 finished.
This commit is contained in:
tegwick 2026-07-22 00:25:06 +02:00
parent 6855fb2a32
commit f88e9a28fe
16 changed files with 1300 additions and 179 deletions

View file

@ -333,14 +333,33 @@ issue-core/
## Documentation
- **[INTENT.md](INTENT.md)** — why issue-core exists (connector, not landing zone)
- **[SCOPE.md](SCOPE.md)** — in/out of scope and integration boundaries
- **[docs/uuid-external-id-mapping.md](docs/uuid-external-id-mapping.md)** — mapping design (not implemented yet)
- **[INTENT.md](INTENT.md)** — why issue-core exists (work-record-aligned connector)
- **[SCOPE.md](SCOPE.md)** — shipped inventory and product boundary
- **[docs/uuid-external-id-mapping.md](docs/uuid-external-id-mapping.md)** — mapping design
- **[docs/boundary-sync-and-status-mapping.md](docs/boundary-sync-and-status-mapping.md)** — dual-lifecycle policy
- **[AGENT_INTEGRATION.md](AGENT_INTEGRATION.md)** — programmatic API for tracker backends
- **[ROADMAP.md](ROADMAP.md)** — feature trajectory (connector-aligned)
- Work-record canon: `the-custodian/canon/standards/work-record-types_v0.1.md`
- Architecture §4.2: `the-custodian/research/WorkOrchestrationArchitectureDraft.md`
### Work-record projection (mapping)
```bash
# Project a work record to the default backend (idempotent)
issue project <work-record-uuid> --title "External title" --canonical-id ISSUE-WP-0005-T05
# Link an existing tracker issue
issue map link <work-record-uuid> 42
# Resolve / detach / outward status push
issue map show --uuid <work-record-uuid>
issue map push-status --uuid <work-record-uuid> --status progress
issue map detach --uuid <work-record-uuid>
```
Mappings live in `~/.config/issue-tracker/mappings.db` (bookkeeping), independent
of whether CRUD targets Gitea or local SQLite.
## Roadmap (summary)
### Connector alignment (docs — ISSUE-WP-0004)