[
  {
    "fragmentId": "method:1al0hre:handle__fragment",
    "ownerFileId": "file:y077jr:getreaderpagequeryhandler-cs",
    "ownerSymbolId": "method:1al0hre:handle",
    "ownerSymbolName": "Handle",
    "entryNodeId": "method:1al0hre:handle__entry",
    "exitNodeIds": [
      "method:1al0hre:handle__action_18_handle_return_18_0__return",
      "method:1al0hre:handle__action_18_return_18__return",
      "method:1al0hre:handle__implicit_return"
    ],
    "nodes": [
      {
        "id": "method:1al0hre:handle__entry",
        "kind": "entry",
        "label": "Handle entry",
        "line": 16,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.99,
        "detail": "Handles GetReaderPageQuery by calling the epub reader to fetch the requested page content and returns the Result-wrapped ReaderPageViewModel."
      },
      {
        "id": "method:1al0hre:handle__action_18_handle_return_18_0__return",
        "kind": "return",
        "label": "Returns result",
        "line": 18,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.7,
        "detail": "return _epubReader.GetEpubContentAsync(request.EbookId, request.ChapterIndex, request.UserId, cancellationToken);"
      },
      {
        "id": "method:1al0hre:handle__action_18_return_18__return",
        "kind": "return",
        "label": "Return epub reader result",
        "line": 18,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.7,
        "detail": "Returns the Task<Result<ReaderPageViewModel>> produced by IEpubReader without additional mapping"
      },
      {
        "id": "method:1al0hre:handle__action_18_external_call_18__linear",
        "kind": "http-call",
        "label": "Delegate to epub reader",
        "line": 18,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.7,
        "detail": "_epubReader.GetEpubContentAsync(request.EbookId, request.ChapterIndex, request.UserId, cancellationToken)"
      },
      {
        "id": "method:1al0hre:handle__call_18_GetEpubContentAsync",
        "kind": "call",
        "label": "GetEpubContentAsync",
        "line": 18,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.88,
        "detail": "request.EbookId, request.ChapterIndex, request.UserId, cancellationToken"
      },
      {
        "id": "method:1al0hre:handle__implicit_return",
        "kind": "return",
        "label": "return",
        "line": 19,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.72,
        "detail": "Implicit method exit inferred from method boundary."
      }
    ],
    "edges": [
      {
        "id": "method:1al0hre:handle__entry__method:1al0hre:handle__action_18_handle_return_18_0__return",
        "from": "method:1al0hre:handle__entry",
        "to": "method:1al0hre:handle__action_18_handle_return_18_0__return",
        "kind": "return",
        "line": 18,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.7
      },
      {
        "id": "method:1al0hre:handle__action_18_handle_return_18_0__return__method:1al0hre:handle__action_18_return_18__return",
        "from": "method:1al0hre:handle__action_18_handle_return_18_0__return",
        "to": "method:1al0hre:handle__action_18_return_18__return",
        "kind": "return",
        "line": 18,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.7
      },
      {
        "id": "method:1al0hre:handle__action_18_return_18__return__method:1al0hre:handle__action_18_external_call_18__linear",
        "from": "method:1al0hre:handle__action_18_return_18__return",
        "to": "method:1al0hre:handle__action_18_external_call_18__linear",
        "kind": "next",
        "line": 18,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.7
      },
      {
        "id": "method:1al0hre:handle__action_18_external_call_18__linear__call_method:1al0hre:handle__call_18_GetEpubContentAsync",
        "from": "method:1al0hre:handle__action_18_external_call_18__linear",
        "to": "method:1al0hre:handle__call_18_GetEpubContentAsync",
        "kind": "call",
        "label": "request.EbookId, request.ChapterIndex, request.UserId, cancellationToken",
        "line": 18,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.88
      },
      {
        "id": "method:1al0hre:handle__call_18_GetEpubContentAsync__implicit_return",
        "from": "method:1al0hre:handle__call_18_GetEpubContentAsync",
        "to": "method:1al0hre:handle__implicit_return",
        "kind": "return",
        "line": 19,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "confidence": 0.72
      }
    ],
    "jumpTargets": [
      {
        "id": "method:1al0hre:handle__call_18_GetEpubContentAsync__jump_unknown_GetEpubContentAsync",
        "fromNodeId": "method:1al0hre:handle__call_18_GetEpubContentAsync",
        "kind": "call-target",
        "targetPath": "unknown",
        "targetHint": "GetEpubContentAsync",
        "line": 18,
        "sourcePath": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "reason": "Call target GetEpubContentAsync in unknown could not be matched to an extracted method symbol.",
        "status": "unresolved"
      }
    ],
    "exceptionTargets": [],
    "loopBackEdges": [],
    "mergeNodeIds": [],
    "language": "csharp",
    "confidence": 0.7999999999999999,
    "lineSpan": {
      "start": 16,
      "end": 19
    },
    "unsupportedConstructs": [],
    "evidence": [
      {
        "path": "NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
        "line": 16,
        "summary": "Control-flow fragment extracted for method Handle.",
        "kind": "file-summary"
      }
    ]
  }
]