Repository navigation
Expose namespace-scoped operator service catalog reads - #412
Conversation
|
Accepted as the PHP proving contract for a separately qualified native catalog-read cohort: eight GETs with required observer namespace, role refusal, strict filters, bounded pages and related lists, stable ID ties, immutable original deadline/attempt/failure details, and opaque references withheld across payload ownership boundaries. The read contract and discovery version will be checked with the eventual published PHP tuple and actual consumers before any native parity claim. The current SDK timer candidate stays fixed at |
rmcdaniel
left a comment
There was a problem hiding this comment.
Reviewed head 125dc4bb9aa12d94979ffbebfe6c76d84b760f38, tree ca170049a8273f5db066619e835b63b3e50ba037.
The eight-file change adds only the operator catalog read surface, discovery/transport wiring, contract and proving fixtures. Reads require the resolved namespace and existing operator/admin role order, reuse shared scoped queries/DTOs and do not initialize execution services. Unknown filters fail without widening visibility. Pages and nested related arrays are bounded with stable ties and explicit truncation. Original deadlines, statuses and attempts are retained. Foreign payload references are redacted before transport mapping, with explicit observer ownership. Existing role, protocol, catalog and payload tests pass alongside the new fixtures, 127 tests / 1,153 assertions. No source issue found. Normal hosted gates remain required before merge. The Rust owner accepted this PHP proving contract in comment 6112947218 for a separate native/fixture cohort, without a parity claim. SDK and Waterline consumer publication remain follow-through.
|
The release preparation in #413 completes the catalog read projection using actual committed PHP call formats. Owners receive The contract document and source regressions now cover these forms. Catalog/external transport checks pass 69 tests / 590 assertions, including real external reference envelopes and null/false/zero values. PHP SDK follow-up uses this exact field, preserves raw opaque references and refuses foreign/unverified hydration. No new stable tag has been published. Native implementation and shared corpus remain with #325's owner. |
Operator outcome
Implement the Server HTTP prerequisite for durable-workflow/waterline#174. Operators can browse a paginated service catalog and find the original durable Nexus call without registry mutation privileges or scanning every endpoint.
/api/service-catalog.The PHP HTTP side is coordinated in Waterline #174. Native implementation and shared differential qualification remain with Server #325's owner. SDK wrappers and published Waterline API/browser inspection are subsequent consumer work, so this PR does not close #174 or Workflow #753.
Verification
Affected checks pass 127 tests / 1,153 assertions against the exact installed published Workflow 2.5.12 package. They exercise list/detail shape, same/caller/target/unrelated namespaces, scopes, stable pagination ties, strict filters, role ordering, non-disclosing 404s, original deadlines/attempts, opaque versus redacted payloads, discovery and protocol/header precedence. Existing catalog, authorization and external-payload regressions pass alongside the new read fixtures. Pint passes. Normal repository checks and published read qualification remain required. No native or full Nexus parity claim.