docs(skills): cover the local contract override in /fetch-protos - #1328
Merged
Conversation
The skill told you to publish a release when the contract change you need isn't out yet. That path still exists for CI release builds, but it is no longer the way to try a field: `protoLocalRoot` in `local.properties` includes both client repos as composite builds, and Gradle substitutes them for the published coordinates. Adds the override to the pre-flight context, replaces the publish-first paragraph with the local loop, notes that Step 4 then builds the client repo too, and warns against leaving the property set on a handed-off branch.
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.
When the contract change you need is not released yet,
/fetch-protostold you to publish one from the client repo. That path still exists for CI release builds, but it is no longer the way to try a field — Maven Central will not take a version number twice, so a throwaway release burns a real version.protoLocalRootinlocal.propertiesincludesocp-client-protocolandflipcash2-client-protocolfrom the orchestrator workspace as composite builds. Gradle substitutes them for the published coordinates because the group and module match, so the pins ingradle/libs.versions.tomlare ignored while it is set.local.propertiesis untracked and CI never writes it.The skill now:
.protosurfaces as a codegen failure in the included buildprotoLocalRootset on a handed-off branch, where it silently overrides the pins for whoever builds nextThe full loop, including what stops a local state from shipping, is in
docs/proto-local-development.mdin the cross-platform orchestrator.The matching iOS change is code-payments/code-ios-app#647.