{ "version": "1.1", "id": "ports-adapters", "title": "ports-adapters runtime fixture", "question": "Does the ports-adapters logical composition render correctly?", "type": "architecture", "direction": "LR", "audience": [ "renderer maintainer" ], "summary": "Executable ports-adapters fixture.", "alt": "Executable technical diagram fixture for the ports-adapters composition profile.", "long_description": "This fixture validates the node roles, edges, and layout rules of the ports-adapters profile.", "source_context": { "document": "examples/runtime-profiles/fixture.md", "document_sha256": "0000000000000000000000000000000000000000000000000000000000000000", "anchor": { "kind": "line", "value": 1, "line": 1 } }, "composition": { "profile": "ports-adapters", "diagram_only": true, "reference_ids": [ "order-ports-adapters" ], "rationale": "Runtime regression fixture for ports-adapters.", "focus_node": "core" }, "groups": [], "nodes": [ { "id": "web", "label": "Web Adapter", "kind": "adapter", "role": "inbound-adapter", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false, "details": [ "REST · inbound" ] }, { "id": "batch", "label": "Test / Batch", "kind": "adapter", "role": "inbound-adapter", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false, "details": [ "inbound" ] }, { "id": "in-port", "label": "Input Port", "kind": "interface", "role": "port", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false, "shape": "port" }, { "id": "core", "label": "Application Core", "kind": "domain", "role": "core", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false, "shape": "hexagon", "emphasis": "primary", "details": [ "domain + use cases" ] }, { "id": "out-port", "label": "Output Port", "kind": "interface", "role": "port", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false, "shape": "port" }, { "id": "persistence", "label": "Persistence Adapter", "kind": "adapter", "role": "outbound-adapter", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false, "details": [ "JPA · outbound" ] }, { "id": "db", "label": "DB", "kind": "database", "role": "external-system", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false, "shape": "database" } ], "edges": [ { "id": "web-port", "from": "web", "to": "in-port", "label": "call", "kind": "request", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false }, { "id": "batch-port", "from": "batch", "to": "in-port", "label": "call", "kind": "request", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false }, { "id": "port-core", "from": "in-port", "to": "core", "label": "invoke use case", "kind": "request", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false, "emphasis": "primary" }, { "id": "core-out", "from": "core", "to": "out-port", "label": "requires", "kind": "request", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false }, { "id": "adapter-out", "from": "persistence", "to": "out-port", "label": "implements", "kind": "dependency", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false }, { "id": "adapter-db", "from": "persistence", "to": "db", "label": "JDBC", "kind": "request", "evidence": [ { "start_line": 1, "end_line": 1 } ], "assumption": false } ], "legend": [], "metadata": { "fixture": true } }