Open
Description
Describe the feature you'd like to request
Problem
The current amplify-codegen depth logic (--maxDepth) increments depth for every nesting level, including into non-@model types (embedded objects/lists within a table). This limits traversal into a single table’s embedded structures, treating them as equivalent to joins, when only @model relationships (table-to-table joins) should consume depth.
Describe the solution you'd like
Add an option to redefine depth so:
- Depth Consumes Only on @model Joins: Nesting into non-@model types doesn’t increment depth.
- Infinite Non-@model Depth: Fully expand embedded types without depth limits, respecting cycles.
Benefits
- Logical Complexity: Depth reflects table joins (e.g., Todo to User @model), not embedded structure within a table, matching Amplify’s single-table design model.
- Full Embedded Exposure: Infinite depth for non-@model types allows complete traversal of a table’s embedded data.
Proposed Implementation
New Config Option: depthByModelOnly: true
(default false)—Depth increments only for @model joins, preserving current behavior unless opted in.
Describe alternatives you've considered
None
Additional context
No response
Is this something that you'd be interested in working on?
- 👋 I may be able to implement this feature request
Would this feature include a breaking change?
- ⚠️ This feature might incur a breaking change
Metadata
Metadata
Assignees
Type
Projects
Milestone
Relationships
Development
No branches or pull requests
Activity