feat: add service inspection profile and DACS-5 reconciliation guards#25
feat: add service inspection profile and DACS-5 reconciliation guards#25mj-deving wants to merge 7 commits into
Conversation
266da2a to
63f23c3
Compare
|
Pushed two focused Directory hardening consumers on top of #25:
Validation:
|
|
Reviewed on current The inspection profile itself — clean and honest ✅The advertised surface is a pure catalog-data projection: no outbound fetch (no SSRF), JSON-only via
|
…ofile # Conflicts: # reference-implementations/dacs-directory/app/api/dacs/listings/route.ts # reference-implementations/dacs-directory/app/service/[seller]/[listingId]/[version]/page.tsx # reference-implementations/dacs-directory/src/catalog/types.ts # reference-implementations/dacs-directory/test/discovery-contract.test.ts
|
Updated at
The branch is current and ready for maintainer re-review. |
Summary
Adds a generic Directory service-inspection handoff for every listing and makes the bundled DACS-5 reconciliation updates explicit.
Service inspection
GET /api/dacs/inspect-service/{listingId}/{version}?seller=...directory-service-profileenvelope containing listing identity, artifact profile, source descriptor, maturity, limitations, and linksinspection.hrefaffordance in listing discoveryInspect service/ verifier-handoff panel on service pagesThe
sellerquery is required because listing IDs are seller-scoped; missing or blank values fail closed instead of selecting the first matching catalog entry.DACS-5 reconciliation alignment
This branch also carries two independently tested Directory correctness updates:
phaseSummary.kindmismatch is divergence.Safety and claim boundary
inspection.href, not request-host-derived absolute URLs.uri-referencefor the handoff.bundleCount, claim live paid history, or fetch arbitrary external sources.Validation
Merged current Community
mainat0881fe455cca8622e737307b42e71cdc67440846.bun run typecheck: passedbun run build: passedgit diff --check: passedThe build emits the existing local
NEXT_PUBLIC_DIRECTORY_URLwarning when no public origin is configured.