generated from coulomb/repo-seed
Renames the package, distribution, CLI alias, Makefile targets, and working directory from issue-facade to issue-core, signalling its role as the authoritative task lifecycle manager for the Coulomb org (peer to activity-core, rules-core, project-core). Adds POST /issues/ ingestion endpoint for activity-core's IssueSink, under a new optional [api] extra. The endpoint is served by `issue serve`, authenticates via the ISSUE_CORE_API_KEY env var (Bearer or X-API-Key header), and routes the TaskSpec payload to the configured default backend with full traceability metadata embedded in sync_metadata. - T01: Python package issue_tracker -> issue_core, dir rename - T02: registered in state hub under custodian domain - T03: INTENT.md (what it is, what it isn't, how it fits) - T04: SCOPE.md (in/out-of-scope, integration boundaries) - T05: POST /issues/ via FastAPI + Uvicorn, 9 unit tests - T06: docs/nats-task-ingestion.md design stub Closes ISSC-WP-0001. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
25 lines
775 B
Python
25 lines
775 B
Python
"""
|
|
issue-core — Authoritative Task Lifecycle Manager
|
|
|
|
The single observable place in the Coulomb org where tasks land —
|
|
regardless of whether they were created by a human, by activity-core,
|
|
or by an agent. Backend-agnostic via a plugin architecture.
|
|
|
|
Features:
|
|
- Unified issue model across all backends
|
|
- Plugin-based backend architecture
|
|
- Local SQLite backend for offline work
|
|
- Bidirectional synchronization
|
|
- CLI-first interface
|
|
- REST ingestion endpoint for activity-core's IssueSink
|
|
|
|
Supported Backends:
|
|
- Local SQLite (offline/standalone)
|
|
- Gitea (GitHub-compatible API)
|
|
- Future: GitHub, GitLab, JIRA, Redmine
|
|
"""
|
|
|
|
__version__ = "0.2.0"
|
|
__author__ = "Coulomb / MarkiTect Project"
|
|
__description__ = "Authoritative task lifecycle manager with plugin architecture"
|