{"nodes": [{"id": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "label": "tokens.py", "file_type": "code", "source_file": "app/domain/tokens.py", "source_location": "L1"}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_tokentype", "label": "TokenType", "file_type": "code", "source_file": "app/domain/tokens.py", "source_location": "L15", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_tokenclaims", "label": "TokenClaims", "file_type": "code", "source_file": "app/domain/tokens.py", "source_location": "L21", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_issuedtoken", "label": "IssuedToken", "file_type": "code", "source_file": "app/domain/tokens.py", "source_location": "L31", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_tokenpair", "label": "TokenPair", "file_type": "code", "source_file": "app/domain/tokens.py", "source_location": "L41", "_callable": true}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_rationale_1", "label": "Token value objects \u2014 framework-free. The auth flow issues a short-lived *acces", "file_type": "rationale", "source_file": "app/domain/tokens.py", "source_location": "L1"}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_rationale_22", "label": "Decoded, verified claims from a JWT.", "file_type": "rationale", "source_file": "app/domain/tokens.py", "source_location": "L22"}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_rationale_32", "label": "A freshly minted token: the encoded string plus the metadata needed to persi", "file_type": "rationale", "source_file": "app/domain/tokens.py", "source_location": "L32"}, {"id": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_rationale_42", "label": "The access + refresh pair returned to clients on login/refresh.", "file_type": "rationale", "source_file": "app/domain/tokens.py", "source_location": "L42"}], "edges": [{"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "target": "datetime", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L9", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "target": "enum", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L10", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "target": "uuid", "relation": "imports", "context": "import", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L11", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "target": "dataclasses", "relation": "imports_from", "context": "import", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L12", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "target": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_tokentype", "relation": "contains", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L15", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "target": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_tokenclaims", "relation": "contains", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L21", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "target": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_issuedtoken", "relation": "contains", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L31", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "target": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_tokenpair", "relation": "contains", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L41", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_rationale_1", "target": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_py", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L1", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_rationale_22", "target": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_tokenclaims", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L22", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_rationale_32", "target": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_issuedtoken", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L32", "weight": 1.0}, {"source": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_rationale_42", "target": "users_senko_work_mcma_compose_mcma_backend_app_domain_tokens_tokenpair", "relation": "rationale_for", "confidence": "EXTRACTED", "source_file": "app/domain/tokens.py", "source_location": "L42", "weight": 1.0}], "raw_calls": []}