feat(API): document translation_keys_sort_collation on /projects endpoints - #1270
Merged
Merged
Conversation
… endpoints
Add translation_keys_sort_collation to the project_details schema so it
shows up as a readable field on GET/POST/PATCH /projects{,/{project_id}}
responses, and document its two valid enum values (general_ci,
unicode_ci) on the create/update request bodies, matching
app/models/project.rb's enum definition in strings-app.
STRINGS-3445
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Contributor
API changelog (oasdiff)Doc-only edits (descriptions, examples) do not appear here. |
…llation The compare-output CI check bundles main.yaml and diffs it against the committed doc/compiled.json artifact. That file was left stale after adding translation_keys_sort_collation, causing the check to fail. Co-Authored-By: Junior (Claude Sonnet 5) <noreply@anthropic.com>
Contributor
Author
|
Junior hit its fix-attempt cap (5/5) and has stopped retrying this PR. Still failingCI checks:
Unresolved bot review threads: Next stepsA human needs to take it from here — either:
|
Sven Dunemann (forelabs)
approved these changes
Sep 15, 2026
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 changed
translation_keys_sort_collationto theproject_detailsschema (schemas/project_details.yaml), so it now shows up as a documented, readable field on the responses forGET /projects/{project_id},POST /projects, andPATCH /projects/{project_id}(all three already reference this schema for their response body).general_ci,unicode_ci) on the request bodies forPOST /projects(paths/projects/create.yaml) andPATCH /projects/{project_id}(paths/projects/update.yaml), matchingapp/models/project.rb'senum :translation_keys_sort_collation, { general_ci: 0, unicode_ci: 1 }in strings-app.Why
STRINGS-3248 added
translation_keys_sort_collationtoProject::API_EXPOSED_ATTRIBUTESin strings-app, so the field is now returned byGET /api/v2/projects/{project_id}(and, per that ticket, the list endpoint) in addition to the existing POST/PATCH write support. Since it's an enum-backed column rather than a settings-store attribute, the automatedopenapi-syncbot flow may not produce a correct spec update for it, so this PR manually verifies/adds the documentation as a tracking follow-up.The lightweight
projectschema used forGET /projects(list) intentionally omits settings-style attributes likecldr_versionand the various boolean flags already present onproject_details— following that existing precedent,translation_keys_sort_collationwas not added there either, only toproject_details, consistent with howcldr_versionand similar fields are handled.Per the ticket,
GET /projects/{project_id}/settingsremains intentionally undocumented — no changes were made for that endpoint.phrase-engineering/strings-git-syncwill be updated with the same schema change in a separate PR against that repo.Test plan
npx swagger-cli validate main.yaml— passesnpx swagger-cli bundle -t yaml -w 300 main.yaml— bundles successfullybash ./lint.sh(openapi-generator-cli validate) — no validation errorstmp/compiled.yaml) contains the new field/enum in all three expected locations (project_details schema, create request body, update request body)STRINGS-3445
Co-Authored-By: junior-dev
🤖 Generated with Claude Code