feat(databases-on-aws): add native DSQL foreign key support - #261
Conversation
c8df943 to
d32d3bd
Compare
|
Note: Automated review pass using the Reviewed the FK rollout across the skill content and the eval harness. The DSQL-side premise checks out: native FK support is confirmed in the Aurora DSQL release notes (2026-08-26), every row of the new Supported Options table matches the CREATE TABLE / ALTER TABLE / SET CONSTRAINTS syntax pages, and every DDL example added here passes The blocking problems are in the eval harness, and they are not theoretical — they were reproduced by running it. On the content side, the This PR is also two changes in one: FK skill content, and ~890 lines of unrelated eval-harness hardening (judge sandboxing, redaction, infra-error taxonomy, exit codes). Landing the harness first and re-baselining would make the FK content's eval deltas mean something. Scope note: findings about the ORM adapters not yet emitting FK DDL, and about companion-PR merge ordering, are excluded per the author's confirmation that those PRs are in flight.
Reviewed at head SHA |
|
Moved harness changes into #262 |
e409b27 to
ce36b84
Compare
ce36b84 to
24739c9
Compare
|
Re-reviewed The paradigm change is correct and complete. Six independent sweeps found no residual "FKs are unsupported / enforce in the application layer" guidance anywhere in
Validated findings
Parked below the confidence threshold (60): Candidates dropped after validation
Correction to my earlier review at Reviewed at head SHA |
PR #261 takeover updateImplemented the validated foreign-key review findings on top of PR #261 while keeping the What changed
Empirical corrections
Validation
The efficacy run used the same prompts with no database, MCP, shell, write, or web tools. The Merge orderPR #261 and PR #262 intentionally overlap in five eval files. The FK eval semantics belong in
The standalone MCP skill and Kiro Power still require a separately tracked synchronization |
Consolidated review matrixThis table records the areas reviewed for PR #261, the resulting finding or disposition, Validated findings and changes
Findings dropped or narrowed after validation
|
f36cd3d to
e980366
Compare
amaksimo
left a comment
There was a problem hiding this comment.
Thanks for the thorough follow-up. I found one migration-ordering issue that can break the cutover, plus two eval consistency issues. The inline comments cover the first two. One more: dsql_lint_eval_results.md still marks app-layer FK enforcement and removing the FK as PASS (lines 49, 55, and 109), although these evals now require preserving native FKs and current dsql_lint does so. Please regenerate the snapshot or label those specific results as pre-native-FK/stale, so readers are not told the old behavior is still correct.
a6a0b30 to
075f735
Compare
|
Addressed the remaining review-summary item in 075f735: |
Folded into 2nd commit for direct constraint
075f735 to
8922ad6
Compare
Part of the foreign key rollout with: - awslabs/aurora-dsql-orms#598 - awslabs/aurora-dsql-tools#147
Present foreign keys as normal native DSQL functionality and remove retired application-layer replacement framing. Correct tenant-scoped optional relationship semantics, DSQL post-creation validation, OCC and SQLSTATE boundaries, deferral transaction scope, referential-action limits, and shared-parent modeling. Make table recreation relationship-safe with a schema-aware pre-create FK and dependent-view gate, single handling for self-references, exact restoration, a write fence, explicit destructive confirmation, and phase-specific recovery. Replace obsolete UNIQUE table recreation with documented async-index promotion, protect referenced keys during primary-key and AUTO_INCREMENT migrations, and correct focused MySQL, ORM, lint, and routing guidance. Expand the functional corpus to 19 prompts and 80 assertions covering dependency preflight, self-FKs, direct UNIQUE promotion, referenced-primary-key preservation, tenant nullability, and recovery.
Document direct CHECK, UNIQUE, constraint, default, and DROP NOT NULL operations while keeping table recreation only for true structural changes.\n\nSimplify generic table recreation to a dependency guard and user-approved bespoke plan, retain SELECT FOR UPDATE for write-skew decisions with OCC retry, and use concise foreign-key-constraint terminology.\n\nRebase FK eval semantics onto the schema-v2 harness from #262, remove the obsolete application-layer FK eval, use semantic grading for lint preservation assertions, and retain separate DSQL Lint follow-up work.
8922ad6 to
97057bd
Compare
David feedback tracker — PR #261Reviewed SHA:
|
…s#4565) Part of the foreign key release. Bring the Aurora DSQL MCP server's agent steering in line with native DSQL foreign key support, mirroring the canonical guidance from the databases-on-aws plugin: awslabs/agent-plugins#261 - Kiro Power tree (kiro_power/): POWER.md updated for the FK reframe (Workflows 1/3/6, steering bullet, error scenarios); 21 steering/*.md files brought byte-identical to the agent-plugins tip references — native FK usage (NOT VALID + ALTER TABLE ASYNC ... VALIDATE CONSTRAINT), direct constraint operations, table-recreation narrowing, and the associated MySQL/PostgreSQL/ORM/troubleshooting guidance. - Packaging: CHANGELOG.md, pyproject.toml, uv.lock. Note: the standalone dsql-skill was deprecated upstream (awslabs#4562); its deprecation stubs are retained and the FK content lives canonically in agent-plugins and the Kiro Power tree.
Aurora DSQL shipped @aws/aurora-dsql-drizzle, which the skill had no coverage of. Adds a Drizzle gotchas section to the ORM guide at EF Core depth, registers the adapter in language.md, connectivity-tools.md, dsql-lint.md, and the SKILL.md triggers and workflow. Adds two functional evals and three trigger cases. Version goes to 1.9.0 since #261 already claims 1.8.0.
Aurora DSQL shipped @aws/aurora-dsql-drizzle, which the skill had no coverage of. Adds a Drizzle gotchas section to the ORM guide at EF Core depth, registers the adapter in language.md, connectivity-tools.md, dsql-lint.md, and the SKILL.md triggers and workflow. Adds two functional evals and three trigger cases. Version goes to 1.9.0 since #261 already claims 1.8.0.
Aurora DSQL shipped @aws/aurora-dsql-drizzle, which the skill had no coverage of. Adds a Drizzle gotchas section to the ORM guide at EF Core depth, registers the adapter in language.md, connectivity-tools.md, dsql-lint.md, and the SKILL.md triggers and workflow. Adds two functional evals and three trigger cases. Version goes to 1.9.0 since #261 already claims 1.8.0.
Aurora DSQL shipped @aws/aurora-dsql-drizzle, which the skill had no coverage of. Adds a Drizzle gotchas section to the ORM guide at EF Core depth, registers the adapter in language.md, connectivity-tools.md, dsql-lint.md, and the SKILL.md triggers and workflow. Adds two functional evals and three trigger cases. Version goes to 1.9.0 since #261 already claims 1.8.0.
Summary
Part of the foreign-key rollout with:
Validation
mise run buildBy submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the project license.