Capability registry for planning and implementation reuse based on discovery and delivery maturity.
Find a file
tegwick e0a4de3310 REUSE-WP-0019-T02: hub recompose staleness tracking + Forgejo webhook
reuse_surface/hub/store.py: compose_state table tracking composed_at/stale,
updated only on a *forced* recompose (refresh=true, webhook, future
scheduled fallback) -- a plain GET still serves current best-effort data
but never silently reports itself as freshly composed.

reuse_surface/hub/webhooks.py: constant-time HMAC-SHA256 signature
verification (fails closed on an empty/unconfigured secret) and
path-only push-payload inspection (never parses file content, per design
principle 2 -- webhook only decides whether to trigger a pull-based
recompose).

New endpoint POST /v1/webhooks/forgejo, accepting both
X-Forgejo-Signature and X-Gitea-Signature headers since sibling repos
migrate independently. GET /v1/federated and POST /v1/federated/compose
now share an asyncio.Lock with the webhook so concurrent recompose
triggers coalesce instead of overlapping.

No separate /v1/recompose route was added -- POST /v1/federated/compose
already did that job from earlier hub work; specs/FederationHubAPI.md now
documents this explicitly instead of duplicating it.

28 new pytest cases (128 total pass). Live-verified: ran the actual hub
service locally and sent a real HMAC-signed webhook over HTTP, confirming
the full webhook-to-recompose path, signature rejection, and the
irrelevant-path no-op.

Does NOT deploy to the live reuse.coulomb.social hub -- that needs a
container rebuild/push/k8s rollout, a separate production-deployment
action out of scope here without explicit sign-off.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-07 18:24:55 +02:00
.gitea/workflows REUSE-WP-0018 T01/T02/T04/T06: plan-check deterministic matching + State Hub bridge 2026-07-07 00:57:18 +02:00
.kaizen Onboard coulomb-loop kaizen engagement (LOOP-WP-0005 expansion) 2026-06-18 17:24:34 +02:00
agents Onboard coulomb-loop kaizen engagement (LOOP-WP-0005 expansion) 2026-06-18 17:24:34 +02:00
docs REUSE-WP-0019-T01: forge host abstraction + URL migration inventory 2026-07-07 18:14:30 +02:00
history Finish REUSE-WP-0017: T05 approved, T07 closeout complete. 2026-07-07 16:37:53 +02:00
registry REUSE-WP-0019-T01: forge host abstraction + URL migration inventory 2026-07-07 18:14:30 +02:00
reuse_surface REUSE-WP-0019-T02: hub recompose staleness tracking + Forgejo webhook 2026-07-07 18:24:55 +02:00
schemas REUSE-WP-0018-T03: LLM semantic rerank for plan-check 2026-07-07 17:27:39 +02:00
specs REUSE-WP-0019-T02: hub recompose staleness tracking + Forgejo webhook 2026-07-07 18:24:55 +02:00
templates REUSE-WP-0017-T01: explicit capability_status on roster + coverage split in report gaps 2026-07-06 18:36:05 +02:00
tests REUSE-WP-0019-T02: hub recompose staleness tracking + Forgejo webhook 2026-07-07 18:24:55 +02:00
tools REUSE-WP-0019-T01: forge host abstraction + URL migration inventory 2026-07-07 18:14:30 +02:00
workplans REUSE-WP-0019-T02: hub recompose staleness tracking + Forgejo webhook 2026-07-07 18:24:55 +02:00
.custodian-brief.md chore(consistency): sync task status from DB [auto] 2026-07-07 18:15:47 +02:00
.gitignore Complete WP-0010: HTTP remote federation with cache 2026-06-15 02:28:44 +02:00
.repo-classification.yaml Human-review .repo-classification.yaml (CUST-WP-0050 follow-up) 2026-06-22 17:56:16 +02:00
AGENTS.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
CLAUDE.md Normalize agent instructions and workplan frontmatter (STATE-WP-0067) 2026-06-22 23:16:28 +02:00
Dockerfile Fix K8s service env collision on REUSE_SURFACE_PORT 2026-06-15 10:08:54 +02:00
INTENT.md docs: refresh SCOPE and INTENT↔SCOPE gap analysis post WP-0014 2026-06-16 02:17:07 +02:00
LICENSE Initial commit 2026-06-14 20:58:40 +00:00
pyproject.toml Implement REUSE-WP-0013 registry establish, update, and stats 2026-06-16 01:21:01 +02:00
README.md Update README.md 2026-06-14 20:59:01 +00:00
SCOPE.md Finish REUSE-WP-0017: T05 approved, T07 closeout complete. 2026-07-07 16:37:53 +02:00
uv.lock WP-0016 finished: interactive registry maintain with llm-connect automation 2026-06-18 04:00:39 +02:00

Capability registry for planning and implementation reuse based on discovery and delivery maturity.