feat: parse inert resourceDependencies section in application definitions - #1940
Open
serguei-gorokhov wants to merge 1 commit into
Open
serguei-gorokhov wants to merge 1 commit into
serguei-gorokhov wants to merge 1 commit into
Conversation
…ions Add the ResourceDependency link-record POJO (kind, linkId, target.path, access, required) and the Application.resourceDependencies field. The section parses from both snake_case and camelCase, round-trips, is carried by the copy constructor, and is omitted from serialization when absent — existing definitions are byte-identical. Deliberately inert: nothing consumes the section yet. Write-time validation, admin consent, and request-start resolution land in the following PRs of the series. The existing Deployment.dependencies field (deployment-name list) is untouched. Spec: documentation repo, offline-access-delegation/implementation-specs/pr1-definition-model.md Co-Authored-By: Claude Code <noreply@anthropic.com>
serguei-gorokhov
requested review from
Oleksii-Klimov and
astsiapanay
as code owners
September 9, 2026 18:28
Contributor
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.OpenSSF ScorecardScorecard details
Scanned Files
|
This was referenced Sep 9, 2026
astsiapanay
requested changes
Sep 11, 2026
| private Set<ResourceAccessType> access = Set.of(); | ||
|
|
||
| @JsonInclude(JsonInclude.Include.NON_DEFAULT) | ||
| private boolean required; |
Collaborator
There was a problem hiding this comment.
Add javadoc what the field means
| public static class Target { | ||
|
|
||
| // Two forms only, nothing else: a concrete global-view path, or a current-user placeholder rooted path. | ||
| private String path; |
Collaborator
There was a problem hiding this comment.
Should it be DIAL resource URL instead of generic name path?
Collaborator
There was a problem hiding this comment.
The URL should be validated: DIAL Core must be able to deserialize a string to DIAL Resource URL
| - SIGNED_IN | ||
| - SIGNED_OUT | ||
| - FAILED | ||
| ResourceDependency: |
Collaborator
There was a problem hiding this comment.
Add descriptions per new field
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.
Applicable issues
Description of changes
Adds the
ResourceDependencylink-record POJO (kind,linkId,target.path,access,required) and theApplication.resourceDependenciesfield. The section parses from both snake_case (resource_dependencies) and camelCase (resourceDependencies), round-trips, is carried by the copy constructor, and is omitted from serialization when absent — existing definitions are byte-identical.Deliberately inert: nothing consumes the section yet. Write-time validation, admin consent, and request-start resolution land in the following PRs of the series. The existing
Deployment.dependenciesfield (deployment-name list) is untouched.The
consentprompt-policy field is deliberately absent (deferred to phase 2); every v1 field is consumed by v1.The diff also carries the regenerated
docs/open_api_core.yaml(+24 lines — the new section andResourceDependency/ResourceDependencyTargetschemas, generated from the POJO byreplaceSpec); generated docs only, no endpoint behavior.First PR of a nine-PR stacked series (each PR's base is the previous story's branch) publishing the resource-dependencies v1 work.
Checklist
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
🤖 Generated with Claude Code