{{ message }}
[APPS][Connections Part 11] Resolve static definitions through module graph#374
Merged
gh-worker-dd-mergequeue-cf854d[bot] merged 9 commits intoMay 18, 2026
Conversation
Collaborator
Author
Collaborator
Author
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 27f2171ba2
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
sarenji
approved these changes
May 18, 2026
5b543fa to
4548a21
Compare
99ec178 to
af45faf
Compare
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.


Motivation
This is the next PR in the backend connection ID analysis stack. The previous PR enriches parsed backend module records with domain-neutral import, export, star export, and top-level binding facts. The imported connection ID integration needs a reusable way to resolve those facts through the backend module graph without embedding import/export traversal inside connection ID-specific code.
Changes
Adds a domain-neutral static definition resolver for parsed backend module records. Given an ESTree identifier reference in a module, callers can resolve it to a concrete top-level const binding, or to a structured unsupported result with a stable reason code.
Example:
For the
HTTP_CONNECTION_IDidentifier inactions.backend.ts, the resolver follows the named import intoconnections.tsand returns the exported top-level const binding:It does not evaluate the initializer into a string. That value-level evaluation is handled by the follow-up static string resolver PR.
The resolver is demand-driven: it follows named imports, local export aliases, named re-exports, local import/export relays, and unambiguous star exports for one requested symbol at a time.
Supported cases:
Unsupported cases return structured reason codes instead of throwing connection ID-specific errors.
Unsupported cases:
The result includes hop metadata so the follow-up connection ID PR can translate generic resolver failures into existing fail-closed diagnostics without recomputing graph traversal.
QA Instructions
No manual QA needed. This is an internal AST-analysis helper with focused unit coverage and no manifest behavior changes in this PR.
Blast Radius
This only affects the High Code Apps backend AST parsing internals in
@dd/apps-plugin. The resolver is not wired into connection ID extraction or manifest output until the next stack PR, so customer-visible behavior should be unchanged.Documentation