{
  "eval_id": 3,
  "eval_name": "orm-agent-sqlalchemy",
  "skill": "wiki-orm-agent",
  "prompt": "Detect and map the ORM entities in this Python project that uses SQLAlchemy with PostgreSQL. The project has a single models.py file declaring multiple entities that inherit from a shared declarative Base.",
  "assertions": [
    {
      "text": "Every class that inherits from the declarative Base is identified as an entity — detected-entities.json has an entry per SQLAlchemy class in the fixture",
      "passed": null,
      "evidence": null
    },
    {
      "text": "Each entity's table_name matches its own __tablename__ assignment (the per-class windowing fix; multi-class single-file input must not collapse to one table)",
      "passed": null,
      "evidence": null
    },
    {
      "text": "relationship() declarations are picked up by the relationship_patterns, with type and target_entity populated where the back-ref is unambiguous",
      "passed": null,
      "evidence": null
    },
    {
      "text": "Mermaid erDiagram contains one node per extracted entity with its columns, and AT LEAST ONE edge between two of them — with the extended edge-rendering in output.ts, `relationship`, `foreign_key`, `one_to_one`, `many_to_one` types now produce edges too (not just one_to_many + many_to_many). Zero edges is a failure.",
      "passed": null,
      "evidence": null
    },
    {
      "text": "Generated markdown has frontmatter with type='entity' and orm_profile='sqlalchemy'",
      "passed": null,
      "evidence": null
    },
    {
      "text": "mermaid_lint.js passes on the generated page",
      "passed": null,
      "evidence": null
    }
  ]
}
