Skip to content

Releases: kraghavan/schema-travels

newer LLMs to support schema review and design

Choose a tag to compare

@kraghavan kraghavan released this 07 Apr 00:27
10352a2

supporting use of local LLM (via ollama) and other frontier.

Output for from end to end testing can be found int he text file attached below.

logs-from-output-todo-script-2.3.0-final.txt

v2.0.0: dynamosb schema generation support

Choose a tag to compare

@kraghavan kraghavan released this 27 Mar 06:49

[2.0.1] - 2025-03-27

Added

  • DynamoDB AI Review Workflow

    • ClaudeAdvisor.review_dynamodb_design() — AI reviews local design
    • DynamoDBReview model — structured review with entity/GSI changes
    • apply_review() helper — merges AI suggestions into design
    • summarize_review_changes() — human-readable review summary
  • Consistent AI Flow

    • MongoDB: Claude as architect (designs schema)
    • DynamoDB: Claude as reviewer (validates local design)
    • Both targets now use AI when --use-ai (default)

Fixed

  • Table Alias Resolution (mutations.py)

    • SELECT u.* FROM users u now correctly tracks users table
    • New _extract_tables_with_aliases() method
    • Alias mapping passed to column extraction methods
  • DynamoDB Output Cleanup

    • No MongoDB-style EMBED/REFERENCE in DynamoDB output
    • recommendations=[] for DynamoDB (design in metadata)
    • Console skips recommendations table for DynamoDB

Technical

  • New module: recommender/dynamodb_review.py
  • New models: DynamoDBReview, EntityChange, GSIChange, GSIChangeAction, ReviewChangeType
  • Updated: claude_advisor.py, schema_generator.py, mutations.py, cli/main.py
  • AI reviews cached separately with _review suffix

[2.0.0] - 2025-03-26

Added

  • DynamoDB Single-Table Design Support

    • --target dynamodb option for DynamoDB schema generation
    • --dynamodb-mode [auto|single|multi] for design mode control
    • --dynamodb-output [json|terraform|nosql_workbench] for output formats
  • Access Cluster Analysis

    • Union-Find algorithm groups co-accessed tables
    • CO_ACCESS_THRESHOLD = 0.70 for single-table candidates
    • Automatic PK/SK pattern generation per entity
  • GSI Optimization

    • SELECT clause extraction for projection type decisions
    • KEYS_ONLY / INCLUDE / ALL based on actual column usage
    • Frequently filtered columns → GSI candidates
    • Max 5 GSIs per table (DynamoDB limit)
  • Output Formats

    • JSON: Full design with entities, GSIs, access patterns
    • Terraform HCL: Ready-to-deploy infrastructure code
    • NoSQL Workbench: Import-ready JSON format
  • New Modules

    • recommender/dynamodb_models.py — Pydantic models for DynamoDB
    • recommender/dynamodb_designer.py — Algorithmic design engine
    • recommender/dynamodb_output.py — Output formatters
  • Visualization

    • tools/visualize_schema.py updated for DynamoDB
    • Orange/black AWS-themed HTML output
    • Entity grid with PK/SK patterns
    • GSI table with projection types

v1.1.0: schema-travels

Choose a tag to compare

@kraghavan kraghavan released this 27 Feb 00:33
1534264

What's Changed

  • KRAG-01: first push to allow data migration from original schema and logs by @kraghavan in #1
  • KRAG-2: adding cache layers by @kraghavan in #2

New Contributors

Full Changelog: https://github.com/kraghavan/schema-travels/commits/v1.1.0