fix(genai): SMA join alias resolution and Pass 1 column_aliases - #269
Open
vishpillai123 wants to merge 2 commits into
Open
fix(genai): SMA join alias resolution and Pass 1 column_aliases#269vishpillai123 wants to merge 2 commits into
vishpillai123 wants to merge 2 commits into
Conversation
Join-key validation now reverse-maps canonical keys to physical columns (matching the executor), and Pass 1 can append column_aliases_to_add so JOIN name bridges are not dropped when refining. Co-authored-by: Cursor <cursoragent@cursor.com>
3 tasks
vishpillai123
marked this pull request as draft
August 4, 2026 21:46
vishpillai123
marked this pull request as ready for review
August 5, 2026 18:32
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.
Summary
validate_manifestjoin-key alias resolution so canonicaljoin_keysmap to physical columns (same direction as the field executor), and bridge checks require both sides to share that canonical name.column_aliases_to_add/column_aliases_to_add_by_entityand merge them into the refined manifest (previously Pass 1 could only rewrite per-field keys and silently dropped alias bridges).Asana
https://app.asana.com/1/6325821815997/project/1208486153653829/task/1217160064972995?focus=true
Context
A production run hit
ExecutionError: student: missing columns ['term_descr']after Pass 1 “fixed”JOIN_KEY_NOT_IN_BASE_TABLEby renamingterm_desc→term_descrwithrefined_by_llmand emptycolumn_aliases. The incomplete fix is addressed here by (1) making the correct alias validate cleanly and (2) letting Pass 1 land the alias.Test plan
pytest tests/genai/mapping/schema_mapping_agent/manifest/test_join_alias_resolution.pypytest tests/genai/mapping/schema_mapping_agent/manifest/test_pass1_column_aliases.pyrefined_by_llmMade with Cursor