diff --git a/docs/hub-core-extraction-boundary.md b/docs/hub-core-extraction-boundary.md index 1e9fa74..9d5a032 100644 --- a/docs/hub-core-extraction-boundary.md +++ b/docs/hub-core-extraction-boundary.md @@ -1,6 +1,6 @@ # Hub-Core Extraction Boundary -Last reviewed: 2026-06-06 +Last reviewed: 2026-06-07 ## Purpose @@ -116,6 +116,10 @@ Current implementation status: mounts the hub-core capability catalog router factory with State Hub's own domain, repo, and catalog models injected, while keeping capability request workflow routes local. +- 2026-06-07: T08 capability request read router import completed. State Hub now + mounts the hub-core request list/detail router factory with State Hub's own + domain and request models injected, while keeping request creation, status + transitions, acceptance, patching, dispute, and reroute workflow routes local. ## Extract Now @@ -186,7 +190,7 @@ implementation is coupled to dev-hub concepts: | --- | --- | | `Domain` and `domains.py` detail views | Detail counts now use a dev-hub callback behind the hub-core router factory. Domain relationships still need a later model split if State Hub stops carrying topics/goals on the core table. | | `ManagedRepo` | State Hub create/read schemas now extend hub-core contracts, with `topic_id`, SBOM fields, and state-sync timestamps kept as dev-hub extensions. The repos router still carries onboarding, DoI, dispatch, and sync behavior locally. | -| `CapabilityRequest` | Catalog schemas and catalog CRUD routes now import from hub-core. Adapter seam is implemented with generic `request_context` and `fulfillment_context`; State Hub still needs a later refactor to map workstream/task references into those fields or a dev-hub extension table before request workflow routes can move. | +| `CapabilityRequest` | Catalog schemas, catalog CRUD routes, and read-only request list/detail routes now import from hub-core. Adapter seam is implemented with generic `request_context` and `fulfillment_context`; State Hub still needs a later refactor to map workstream/task references into those fields or a dev-hub extension table before request workflow routes can move. | | `ProgressEvent` | Adapter seam implemented with generic `subject_refs`; State Hub still needs a later refactor to map topic/workstream/task/decision foreign keys into that field or a dev-hub extension table. | | MCP tools in `mcp_server/server.py` | Generic tools are still mixed into the State Hub server module. T08 should begin replacing those registrations with `HubCoreMCPServer` inheritance or composition while dev-hub keeps its own tools. | @@ -224,6 +228,6 @@ to import it: ## Next Step Continue T08 by applying host-model injection or callback seams to the next -lowest-risk generic routers. Repos and the capability request workflow each -need a small dependency-injection review before replacement. Do not rename +lowest-risk generic routers. Repos and the capability request write workflow +each need a small dependency-injection review before replacement. Do not rename State Hub to dev-hub until T05-T08 prove the shared package boundary. diff --git a/workplans/CUST-WP-0025-fos-hub-bootstrap.md b/workplans/CUST-WP-0025-fos-hub-bootstrap.md index 866cfe0..4723cd7 100644 --- a/workplans/CUST-WP-0025-fos-hub-bootstrap.md +++ b/workplans/CUST-WP-0025-fos-hub-bootstrap.md @@ -336,6 +336,17 @@ flow transitions, notifications, rerouting, and task-unblock side effects. Verification: hub-core pytest passed with 21 tests; State Hub capability/import/MCP/core focused tests passed with 95 tests. +Implementation slice 11 (2026-06-07): added +`hub_core.routers.capabilities.create_capability_request_read_router` with host +domain/request model and response-schema injection, then replaced State Hub's +local capability request list/detail routes with that hub-core factory. State +Hub keeps request creation, acceptance, status transitions, metadata patching, +dispute, and reroute routes local because they still enforce State Hub flow +transitions, notifications, and task-unblock side effects. Verification: +hub-core compile checks passed, hub-core pytest passed with 22 tests, the +post-format import slice passed with 14 tests, State Hub compile checks passed, +and State Hub capability/import/MCP/core focused tests passed with 95 tests. + ### T09 — Rename MCP server state-hub to dev-hub ```task