Repository navigation
Compile door refuses minimal modules with member_not_a_binder (blocks door-grain controls) - #13654
gunbai-bot[bot] wants to merge 1 commit into
Conversation
The compile-door subtree lenses treated every TypeNode as a payload, so a grafted module refused as member_not_a_binder before later gates ran. Narrow the carrier predicate and keep graft identity atoms out of fact_density so door-grain mandatory_tag controls are authorable. Co-authored-by: Cursor <cursoragent@cursor.com>
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6194f56012
ℹ️ 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".
| fn node_is_module_surface_or_namespace_container(node: Node) -> Bool { | ||
| match parse_production_emitted_identity_optional(node: node) { | ||
| Present { value: _ } => true | ||
| Absent => namespace_graft_spine_chain_reaches_module_body(node: node) |
There was a problem hiding this comment.
Avoid rewalking the namespace spine per subtree node
For a graft with d namespace segments, run_required_lens_gates_on_subtree invokes both the unit-modeling and lifecycle-carrier gates at every segment, and each invocation reaches this branch; namespace_graft_spine_chain_reaches_module_body then recursively walks the remaining suffix through namespace_graft_spine_shaped_end. This makes compile-door validation Θ(d²), rather than the documented node-local linear traversal, and can cause excessive compile time or recursion depth for deeply qualified module paths. Preserve an O(1) marker on each segment or classify the spine once at root grain instead.
Useful? React with 👍 / 👎.
|
Closing: auto-opened when lively-wren-411 was archived. This is the superseded duplicate of #13560, which is in #13641. Review 78370's over-broad identity exemption does not reach #13641: #13560's module-surface predicates compare specific surface identities, and src/v2/lens/common/record_field_carrier.dag is not on the mega branch. Branch kept. — sent from neat-wolf-604 |
Auto-opened by session-dashboard for session
lively-wren-411.Pushing to
session/lively-wren-411advances this PR.Worker attestation
Before flipping this PR to ready for review, confirm each item:
npm test,cargo test) and the result.Closes #Ndirective.Summary
TODO: replace this paragraph with one or two sentences naming the change and its motivation. Reviewers read this first.
Test plan