docs: add agent-readable documentation and repository metadata - #596
Open
const-cloudinary wants to merge 1 commit into
Open
docs: add agent-readable documentation and repository metadata#596const-cloudinary wants to merge 1 commit into
const-cloudinary wants to merge 1 commit into
Conversation
Bring the repository up to the Cloudinary agent-readable documentation standard established in cloudinary_npm (PRs #742, #744). - README restructured: install, quick start, common tasks, when to use, compatibility, documentation, AI agent read paths, support, security. Replaces the dead Travis CI badge with GitHub Actions. - docs/ — 17 version-matched Markdown task pages shipped inside the gem, with the agent-rules banner and a locator one-liner. Includes Rails, Active Storage, and CarrierWave pages this gem needs and npm has no equivalent for. - examples/ — 12 runnable files, 1:1 with the task docs, cross-linked. - AGENTS.md (six sections) + CLAUDE.md; LICENSE (MIT) at root; SECURITY.md with private vulnerability reporting; context7.json. - gemspec: ship docs/ and examples/ explicitly, add metadata URIs. - gitignore artifacts produced by running the examples. Every snippet was executed against a live cloud rather than read from the source. Behaviours corrected as a result include upload_large defaulting to resource_type :raw, overwrite: false returning `existing` instead of raising, folder: search returning nothing in dynamic-folder environments, and the upload response omitting moderation_status. No library code changed.
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.
Goal
Ship version-matched documentation inside the published gem, so an AI coding agent working in a user's project reads docs that match the installed code instead of relying on stale training data. Follows the standard established in cloudinary_npm (#742, #744).
Agent read path, verified against a real install:
Added
docs/— 17 Markdown task pages, shipped in the gem. Index carries the agent-rules banner and locator one-liner.examples/— 12 runnable files, 1:1 with the task docs, cross-linked.AGENTS.md(6 sections) +CLAUDE.md(@AGENTS.md).LICENSE— MIT, canonical text, at root.SECURITY.md— private vulnerability reporting.context7.json.Changed
README.md— restructured: install, quick start, common tasks, when to use, compatibility, documentation, AI agent read paths, support, security. Dead Travis CI badge replaced with GitHub Actions.cloudinary.gemspec— shipdocs/andexamples/explicitly; adddocumentation_uri,source_code_uri,bug_tracker_uri..gitignore— artifacts produced by running the examples.No changes to
lib/orspec/. No changelog entry (docs-only).Behaviours corrected by execution
Every snippet was run against a live cloud rather than read from source. Docs were wrong on these until tested:
upload_largedefaults toresource_type: :raw— a video uploaded without it succeeds silently as an untransformable blob.overwrite: falsedoes not raise; it returns the existing asset withexisting => true.folder:examplesmatches 0 of 61 images on a dynamic-folder environment (the default for new clouds). Docs usepublic_id:examples/*.moderation_statuskey;resource()andupdate()have both it andmoderation.Cloudinary::ApiandCloudinary::Searchraise bareRuntimeErrorfor missing config;UploaderandUtilsraiseCloudinaryException.rescue CloudinaryExceptionmisses the Admin API path.?_a=analytics param is appended;/v1/placeholder appears when the public_id contains a slash and no version is known.CLOUDINARY_CLOUD_NAMEcausesCLOUDINARY_URLto be ignored entirely, not merged.*.Verification
.gemcontentsmaster)Notes
context7.jsoncarries the account-scoped key from cloudinary_npm. It is inert until the library is submitted at context7.com — still outstanding..cursor/and copilot files this standard excludes, and is superseded by this PR.samples/flagged as legacy inAGENTS.md; not modified.