Catalog rejection reasons: add TERMS_LIMIT_EXCEEDED + URI_UNAVAILABLE - #15
Closed
KonstantinMirin wants to merge 2 commits into
Closed
Catalog rejection reasons: add TERMS_LIMIT_EXCEEDED + URI_UNAVAILABLE#15KonstantinMirin wants to merge 2 commits into
KonstantinMirin wants to merge 2 commits into
Conversation
…t reasons (RAMP-102) CatalogRejectionReason lacked honest values for two rejection paths: - TERMS_LIMIT_EXCEEDED (8): a single entry over the per-entry license-term cap (distinct from QUOTA_EXCEEDED, which is a per-caller push quota). - URI_UNAVAILABLE (9): the URI cannot be claimed by this caller. Named from the caller's own perspective ON PURPOSE — it must NOT disclose that another resource/contributor already owns the URI. Within one publisher, mutually- untrusting contributors share a catalog, so an 'owned by another' reason would be a confirmed-existence oracle for mapping a competitor's catalog. Regenerated Go/TS/Python. buf lint + canonical round-trip + doc-conformance pass.
…on-enum-extensions # Conflicts: # gen/descriptor.binpb # gen/ts/wire/schemas.ts
This was referenced Jul 6, 2026
Contributor
Author
|
Superseded by and included in #17. This PR's commits are ancestors of |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Extends
CatalogRejectionReasonwith two values the catalog-push path needs:CATALOG_REJECTION_REASON_TERMS_LIMIT_EXCEEDED(8) — a single entry carries more license terms than the per-entry cap allows.CATALOG_REJECTION_REASON_URI_UNAVAILABLE(9) — the URI cannot be claimed by this caller's entries.Why
URI_UNAVAILABLEis named from the caller's perspective (privacy)It deliberately does not say "owned by another contributor." Within one publisher, mutually-untrusting contributors share a catalog, so an "owned by another" reason would be a confirmed-existence oracle a contributor could use to map a competitor's catalog. The conflict is resolvable only by the publisher (who is authorized to see full ownership); the human-readable message routes the caller there without confirming who, if anyone, holds the URI.
Generated code
Regenerated with the pinned toolchain (buf 1.66.1, datamodel-code-generator 0.64.0, json-schema-to-zod 2.8.1): Go, descriptor, validation corpus, and the Pydantic/Zod SDK types. The SDK-types pass also re-syncs
gen/ts/wire/schemas.ts+gen/python/wire/models.py, which the base branch had left out of date — sosdk-typesCI is green on this branch.Stacking
Stacked on #14 (base
feature/ramp-102-relay-proto); retarget tomainas the stack lands.