36905 lines
1.5 MiB
Plaintext
36905 lines
1.5 MiB
Plaintext
{
|
|
"generatedAt": "2026-05-22T06:57:31.134Z",
|
|
"runId": "v4-1779429619297-t7x306q1",
|
|
"stats": {
|
|
"documentCount": 10,
|
|
"domainCount": 750,
|
|
"capabilityCount": 75,
|
|
"flowCount": 75,
|
|
"rankedFlowCount": 75
|
|
},
|
|
"validation": {
|
|
"status": "warn",
|
|
"coverage": {
|
|
"totalDomains": 750,
|
|
"coveredDomains": 750,
|
|
"totalCapabilities": 75,
|
|
"coveredCapabilities": 75,
|
|
"totalFlows": 75,
|
|
"coveredFlows": 75
|
|
},
|
|
"issueCount": 6,
|
|
"issues": [
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "application-layer.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_composition_and_handler_discovery",
|
|
"message": "Business flow MAUI app composition and handler discovery is low confidence.",
|
|
"evidenceCount": 5,
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "application-layer.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ai_groundedness_verification",
|
|
"message": "Business flow AI groundedness verification is low confidence.",
|
|
"evidenceCount": 6,
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "data-and-persistence.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_app_composition_and_maui_bootstrap",
|
|
"message": "Business flow App composition and MAUI bootstrap is low confidence.",
|
|
"evidenceCount": 5,
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "maui-mobile.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_startup_flow",
|
|
"message": "Business flow MAUI App Startup Flow is low confidence.",
|
|
"evidenceCount": 5,
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "overview.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_startup_and_composition",
|
|
"message": "Business flow MAUI app startup and composition is low confidence.",
|
|
"evidenceCount": 4,
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "web-client-wasm.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_epub_content_retrieval_flow",
|
|
"message": "Business flow Epub Content Retrieval Flow is low confidence.",
|
|
"evidenceCount": 4,
|
|
"confidence": "low"
|
|
}
|
|
]
|
|
},
|
|
"gapReport": {
|
|
"status": "warn",
|
|
"gapCount": 26,
|
|
"gaps": [
|
|
{
|
|
"id": "low_confidence_flow_flow_maui_app_composition_and_handler_discovery",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_composition_and_handler_discovery",
|
|
"message": "Business flow MAUI app composition and handler discovery remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "low_confidence_flow_flow_ai_groundedness_verification",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ai_groundedness_verification",
|
|
"message": "Business flow AI groundedness verification remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_web_minimal_api_application_handler_dispatch",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_web_minimal_api_application_handler_dispatch",
|
|
"message": "Business flow Web Minimal API → Application handler dispatch is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_http_request_token_refresh_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_http_request_token_refresh_flow",
|
|
"message": "Business flow HTTP Request + Token Refresh Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_knowledge_query_api_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_knowledge_query_api_flow",
|
|
"message": "Business flow Knowledge Query API Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "low_confidence_flow_flow_app_composition_and_maui_bootstrap",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_app_composition_and_maui_bootstrap",
|
|
"message": "Business flow App composition and MAUI bootstrap remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_ensure_database_initialized",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ensure_database_initialized",
|
|
"message": "Business flow Ensure Database Initialized is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_knowledge_retrieval_caching_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_knowledge_retrieval_caching_flow",
|
|
"message": "Business flow Knowledge Retrieval & Caching Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_epub_chapter_read_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_epub_chapter_read_flow",
|
|
"message": "Business flow EPUB Chapter Read Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "low_confidence_flow_flow_maui_app_startup_flow",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_startup_flow",
|
|
"message": "Business flow MAUI App Startup Flow remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_ensure_database_initialized",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ensure_database_initialized",
|
|
"message": "Business flow Ensure Database Initialized is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "low_confidence_flow_flow_maui_app_startup_and_composition",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_startup_and_composition",
|
|
"message": "Business flow MAUI app startup and composition remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_epub_ingestion_and_knowledge_unit_creation",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_epub_ingestion_and_knowledge_unit_creation",
|
|
"message": "Business flow EPUB ingestion and knowledge-unit creation is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown",
|
|
"self",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_cross_client_notification_flow_server_side",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_cross_client_notification_flow_server_side",
|
|
"message": "Business flow Cross-Client Notification Flow (server-side) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Messaging/ISyncBroadcaster.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_update_progress",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_update_progress",
|
|
"message": "Business flow Update Progress is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_client_side_api_call_with_automatic_token_attach_refresh",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_client_side_api_call_with_automatic_token_attach_refresh",
|
|
"message": "Business flow Client-side API call with automatic token attach & refresh is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_send_async",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_send_async",
|
|
"message": "Business flow Send Async is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_knowledge_question_semantic_search_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_knowledge_question_semantic_search_flow",
|
|
"message": "Business flow Knowledge Question / Semantic Search Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_ebook_retrieval_ingestion_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ebook_retrieval_ingestion_flow",
|
|
"message": "Business flow Ebook Retrieval / Ingestion Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "low_confidence_flow_flow_epub_content_retrieval_flow",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_epub_content_retrieval_flow",
|
|
"message": "Business flow Epub Content Retrieval Flow remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_wasm_authentication_header_and_token_refresh",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_wasm_authentication_header_and_token_refresh",
|
|
"message": "Business flow WASM Authentication Header and Token Refresh is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"documents": [
|
|
{
|
|
"documentFilename": "application-layer.md",
|
|
"documentTitle": "Application Layer: Commands, Queries and DTOs",
|
|
"relativeOutputPath": "domains/application-layer.md",
|
|
"collectionKind": "domains",
|
|
"publicationTier": "secondary",
|
|
"businessModel": {
|
|
"documentFilename": "application-layer.md",
|
|
"documentTitle": "Application Layer: Commands, Queries and DTOs",
|
|
"summary": "Application Layer: Commands, Queries and DTOs centers on ai, ai action, ai tokens and currently highlights WASM client startup and DI validation as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "ai",
|
|
"name": "ai",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_action",
|
|
"name": "ai action",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens",
|
|
"name": "ai tokens",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_verification",
|
|
"name": "ai verification",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_knowledge",
|
|
"name": "ai/knowledge",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "answer",
|
|
"name": "answer",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommand.cs",
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommand.cs",
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "answering",
|
|
"name": "answering",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "application_health_readiness",
|
|
"name": "application health / readiness",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "auth",
|
|
"name": "auth",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "author",
|
|
"name": "author",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "billing",
|
|
"name": "billing",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "book",
|
|
"name": "book",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter",
|
|
"name": "chapter",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_readerpage",
|
|
"name": "chapter / readerpage",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "citation",
|
|
"name": "citation",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "command",
|
|
"name": "command",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "contentblock",
|
|
"name": "contentblock",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "context_snippet",
|
|
"name": "context snippet",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "cosinedistance",
|
|
"name": "cosinedistance",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "coverimage",
|
|
"name": "coverimage",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "device_sync_broadcast",
|
|
"name": "device sync / broadcast",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook",
|
|
"name": "ebook",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_epub_ingestion",
|
|
"name": "ebook / epub ingestion",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebooks_lastreadbook",
|
|
"name": "ebooks / lastreadbook",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding",
|
|
"name": "embedding",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "epub",
|
|
"name": "epub",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graph",
|
|
"name": "graph",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs",
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs",
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graphdata",
|
|
"name": "graphdata",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQueryHandler.cs",
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQueryHandler.cs",
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graphlink",
|
|
"name": "graphlink",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graphnode",
|
|
"name": "graphnode",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "grounded_ai_response",
|
|
"name": "grounded ai response",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedness",
|
|
"name": "groundedness",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedresponse",
|
|
"name": "groundedresponse",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_authenticationstateprovider",
|
|
"name": "identity (authenticationstateprovider)",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ingestion_progress",
|
|
"name": "ingestion progress",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "initializationstatus",
|
|
"name": "initializationstatus",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQuery.cs",
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQuery.cs",
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "keyconcept",
|
|
"name": "keyconcept",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge",
|
|
"name": "knowledge",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_knowledge_service_graph_summary",
|
|
"name": "knowledge (knowledge service, graph, summary)",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_graph",
|
|
"name": "knowledge graph",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_retrieval",
|
|
"name": "knowledge retrieval",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs",
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs",
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgegraph_knowledgecoordinator",
|
|
"name": "knowledgegraph / knowledgecoordinator",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgelink",
|
|
"name": "knowledgelink",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeservice",
|
|
"name": "knowledgeservice",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunit",
|
|
"name": "knowledgeunit",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "lastreadbookdto",
|
|
"name": "lastreadbookdto",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "library",
|
|
"name": "library",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "library_question",
|
|
"name": "library question",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "link",
|
|
"name": "link",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "metadata",
|
|
"name": "metadata",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer",
|
|
"name": "nexususer",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_identity",
|
|
"name": "nexususer (identity)",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "node",
|
|
"name": "node",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "options",
|
|
"name": "options",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "provenance",
|
|
"name": "provenance",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "query",
|
|
"name": "query",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs",
|
|
"NexusReader.Application/Abstractions/Messaging/IQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs",
|
|
"NexusReader.Application/Abstractions/Messaging/IQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "question",
|
|
"name": "question",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz",
|
|
"name": "quiz",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommand.cs",
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommand.cs",
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_state",
|
|
"name": "quiz state",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quizquestion",
|
|
"name": "quizquestion",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quizresults",
|
|
"name": "quizresults",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_navigation",
|
|
"name": "reader navigation",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_session_content",
|
|
"name": "reader session/content",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readerpage",
|
|
"name": "readerpage",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reading_progress",
|
|
"name": "reading progress",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readingprogress",
|
|
"name": "readingprogress",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync",
|
|
"name": "real time sync",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync_broadcast",
|
|
"name": "real time sync/broadcast",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "result",
|
|
"name": "result",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs",
|
|
"NexusReader.Application/Abstractions/Messaging/IQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs",
|
|
"NexusReader.Application/Abstractions/Messaging/IQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "result_tresponse",
|
|
"name": "result<tresponse>",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "roles",
|
|
"name": "roles",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "search_result",
|
|
"name": "search result",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semantic_search",
|
|
"name": "semantic search",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticknowledgecache",
|
|
"name": "semanticknowledgecache",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscriptionplan",
|
|
"name": "subscriptionplan",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "sync",
|
|
"name": "sync",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenant",
|
|
"name": "tenant",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenant_user_isolation",
|
|
"name": "tenant / user isolation",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenant_scoping",
|
|
"name": "tenant scoping",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenantid",
|
|
"name": "tenantid",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenantid_userid_multitenancy_audit_metadata",
|
|
"name": "tenantid/userid (multitenancy/audit metadata)",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "theme_focus_mode",
|
|
"name": "theme & focus mode",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user",
|
|
"name": "user",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_devices",
|
|
"name": "user devices",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_ownership",
|
|
"name": "user/ownership",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "userprofile",
|
|
"name": "userprofile",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "userprofiledto",
|
|
"name": "userprofiledto",
|
|
"description": "Application Layer: Commands, Queries and DTOs is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_wasm_client_startup_and_di_validation",
|
|
"name": "WASM client startup and DI validation",
|
|
"description": "WASM client startup and DI validation coordinates 4 business-relevant steps beginning at NexusReader.Web.Client/Program.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_wasm_client_startup_and_di_validation"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_maui_app_composition_and_handler_discovery",
|
|
"name": "MAUI app composition and handler discovery",
|
|
"description": "MAUI app composition and handler discovery coordinates 5 business-relevant steps beginning at NexusReader.Maui/MauiProgram.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_maui_app_composition_and_handler_discovery"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_web_minimal_api_application_handler_dispatch",
|
|
"name": "Web Minimal API → Application handler dispatch",
|
|
"description": "Web Minimal API → Application handler dispatch coordinates 5 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_web_minimal_api_application_handler_dispatch"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ebook_ingestion",
|
|
"name": "Ebook ingestion",
|
|
"description": "Ebook ingestion coordinates 5 business-relevant steps beginning at NexusReader.Application/Commands/Library/IngestEbookCommand.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ebook_ingestion"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_semantic_search_library_qa",
|
|
"name": "Semantic search / Library QA",
|
|
"description": "Semantic search / Library QA coordinates 5 business-relevant steps beginning at NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_semantic_search_library_qa"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ai_groundedness_verification",
|
|
"name": "AI groundedness verification",
|
|
"description": "AI groundedness verification coordinates 3 business-relevant steps beginning at NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ai_groundedness_verification"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_reader_page_retrieval_and_progress_sync",
|
|
"name": "Reader page retrieval and progress sync",
|
|
"description": "Reader page retrieval and progress sync coordinates 5 business-relevant steps beginning at NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_reader_page_retrieval_and_progress_sync"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_knowledge_graph_retrieval",
|
|
"name": "Knowledge graph retrieval",
|
|
"description": "Knowledge graph retrieval coordinates 3 business-relevant steps beginning at NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_knowledge_graph_retrieval"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_quiz_answer_submission",
|
|
"name": "Quiz answer submission",
|
|
"description": "Quiz answer submission coordinates 3 business-relevant steps beginning at NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_quiz_answer_submission"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) coordinates 8 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_program_top_level"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ensure_database_initialized"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_handle_subscription_success"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_wasm_client_startup_and_di_validation",
|
|
"name": "WASM client startup and DI validation",
|
|
"description": "WASM client startup and DI validation starts at NexusReader.Web.Client/Program.cs and follows 8 grounded steps: Enter Program (top level startup) -> Call Throwing Db Context Factory. -> Call Throwing Embedding Generator. -> Call Throwing Book Storage Service. -> ....",
|
|
"capabilityId": "capability_wasm_client_startup_and_di_validation",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_entry",
|
|
"label": "Enter Program (top level startup)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingdbcontextfactory_ctor_49",
|
|
"label": "Call Throwing Db Context Factory.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingembeddinggenerator_ctor_50",
|
|
"label": "Call Throwing Embedding Generator.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingbookstorageservice_ctor_51",
|
|
"label": "Call Throwing Book Storage Service.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingebookrepository_ctor_52",
|
|
"label": "Call Throwing Ebook Repository.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingsyncbroadcaster_ctor_53",
|
|
"label": "Call Throwing Sync Broadcaster.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_nexusreader_application_addapplication_55",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_result",
|
|
"label": "Complete Program (top level startup)",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_maui_app_composition_and_handler_discovery",
|
|
"name": "MAUI app composition and handler discovery",
|
|
"description": "MAUI app composition and handler discovery starts at NexusReader.Maui/MauiProgram.cs and follows 4 grounded steps: Enter Create Maui App -> Returns result -> Call Add Application -> Call Dependency Injection.",
|
|
"capabilityId": "capability_maui_app_composition_and_handler_discovery",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_entry",
|
|
"label": "Enter Create Maui App",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_createmauiapp_return_57_0",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_nexusreader_application_addapplication_51",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_nexusreader_application_dependencyinjection_assembly_54",
|
|
"label": "Call Dependency Injection",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "low",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_web_minimal_api_application_handler_dispatch",
|
|
"name": "Web Minimal API → Application handler dispatch",
|
|
"description": "Web Minimal API → Application handler dispatch starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_web_minimal_api_application_handler_dispatch",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ebook_ingestion",
|
|
"name": "Ebook ingestion",
|
|
"description": "Ebook ingestion starts at NexusReader.Application/Commands/Library/IngestEbookCommand.cs and follows 5 grounded steps: API constructs Ingest Ebook Command with metadata and EPUB payload -> Mediator dispatches to Ingest Ebook Command Handler -> Handler stores binary assets via IBook Storage Service -> Handler maps DTO to domain entities (Mapster) and persists via IEbook Repository/App Db Context -> ....",
|
|
"capabilityId": "capability_ebook_ingestion",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "ebook_ingestion_1",
|
|
"label": "API constructs Ingest Ebook Command with metadata and EPUB payload",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ebook_ingestion_2",
|
|
"label": "Mediator dispatches to Ingest Ebook Command Handler",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ebook_ingestion_3",
|
|
"label": "Handler stores binary assets via IBook Storage Service",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ebook_ingestion_4",
|
|
"label": "Handler maps DTO to domain entities (Mapster) and persists via IEbook Repository/App Db Context",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ebook_ingestion_5",
|
|
"label": "Post persist: enqueue/trigger semantic indexing and AI groundedness verification jobs; return created Ebook Id",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_semantic_search_library_qa",
|
|
"name": "Semantic search / Library QA",
|
|
"description": "Semantic search / Library QA starts at NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs and follows 8 grounded steps: Enter Handle -> Evaluates branch condition -> Returns result -> Reads repository or persistence state -> ....",
|
|
"capabilityId": "capability_semantic_search_library_qa",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Data.Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_application_queries_library_searchlibrarysemanticallyquery_cs_handle_entry",
|
|
"label": "Enter Handle",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Data.Persistence/AppDbContext.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_queries_library_searchlibrarysemanticallyquery_cs_handle_handle_branch_43_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_queries_library_searchlibrarysemanticallyquery_cs_handle_handle_return_45_1",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_queries_library_searchlibrarysemanticallyquery_cs_handle_handle_repository_read_55_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_queries_library_searchlibrarysemanticallyquery_cs_handle_return_61",
|
|
"label": "Return mapped results",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_queries_library_searchlibrarysemanticallyquery_cs_handle_nexusreader_data_persistence_appdbcontext_cs_semanticknowledgecache_54",
|
|
"label": "Call Semantic Knowledge Cache",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Data.Persistence/AppDbContext.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_queries_library_searchlibrarysemanticallyquery_cs_handle_external_call",
|
|
"label": "Calls IEmbeddingGenerator.GenerateAsync with the request.QueryText (external/AI service)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_queries_library_searchlibrarysemanticallyquery_cs_handle_persistence_read",
|
|
"label": ".Where(c => c.TenantId == request.TenantId && c.Embedding != null)",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Data.Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ai_groundedness_verification",
|
|
"name": "AI groundedness verification",
|
|
"description": "AI groundedness verification starts at NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs and follows 5 grounded steps: Enter Handle -> Returns result -> Returns service result directly -> Call Verify Groundedness Async -> ....",
|
|
"capabilityId": "capability_ai_groundedness_verification",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_application_commands_ai_verifygroundednesscommand_cs_handle_entry",
|
|
"label": "Enter Handle",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_ai_verifygroundednesscommand_cs_handle_handle_return_20_0",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_ai_verifygroundednesscommand_cs_handle_return_20",
|
|
"label": "Returns service result directly",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_ai_verifygroundednesscommand_cs_handle_nexusreader_application_abstractions_services_iknowledgeservice_cs_verifygroundednessasync_20",
|
|
"label": "Call Verify Groundedness Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_ai_verifygroundednesscommand_cs_handle_external_call",
|
|
"label": "await _knowledgeService.VerifyGroundednessAsync(...)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "low",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_reader_page_retrieval_and_progress_sync",
|
|
"name": "Reader page retrieval and progress sync",
|
|
"description": "Reader page retrieval and progress sync starts at NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs and follows 5 grounded steps: Client requests Get Reader Page Query or sends Update Reading Progress Command -> Get Reader Page Query Handler uses IEpub Reader and Mapster to build Reader Page View Model -> Update Reading Progress Command Handler updates progress via App Db Context -> Update Reading Progress Command Handler broadcasts updates via ISync Broadcaster to other clients (excluding origin) -> ....",
|
|
"capabilityId": "capability_reader_page_retrieval_and_progress_sync",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "reader_page_retrieval_and_progress_sync_1",
|
|
"label": "Client requests Get Reader Page Query or sends Update Reading Progress Command",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "reader_page_retrieval_and_progress_sync_2",
|
|
"label": "Get Reader Page Query Handler uses IEpub Reader and Mapster to build Reader Page View Model",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "reader_page_retrieval_and_progress_sync_3",
|
|
"label": "Update Reading Progress Command Handler updates progress via App Db Context",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "reader_page_retrieval_and_progress_sync_4",
|
|
"label": "Update Reading Progress Command Handler broadcasts updates via ISync Broadcaster to other clients (excluding origin)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "reader_page_retrieval_and_progress_sync_5",
|
|
"label": "Handlers return Fluent Results wrapped DTOs or status",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_knowledge_graph_retrieval",
|
|
"name": "Knowledge graph retrieval",
|
|
"description": "Knowledge graph retrieval starts at NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs and follows 3 grounded steps: Get Knowledge Graph Query dispatched -> Handler delegates to IKnowledge Service to build/assemble graph data -> Graph Data Dto mapped and returned (JSON source gen used for serialization).",
|
|
"capabilityId": "capability_knowledge_graph_retrieval",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "knowledge_graph_retrieval_1",
|
|
"label": "Get Knowledge Graph Query dispatched",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "knowledge_graph_retrieval_2",
|
|
"label": "Handler delegates to IKnowledge Service to build/assemble graph data",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "knowledge_graph_retrieval_3",
|
|
"label": "Graph Data Dto mapped and returned (JSON source gen used for serialization)",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.875,
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "medium",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_quiz_answer_submission",
|
|
"name": "Quiz answer submission",
|
|
"description": "Quiz answer submission starts at NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs and follows 7 grounded steps: Enter Handle -> Evaluates branch condition -> Return success Result -> Returns result -> ....",
|
|
"capabilityId": "capability_quiz_answer_submission",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_application_commands_quiz_submitanswercommandhandler_cs_handle_entry",
|
|
"label": "Enter Handle",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_quiz_submitanswercommandhandler_cs_handle_handle_branch_18_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_quiz_submitanswercommandhandler_cs_handle_return_21",
|
|
"label": "Return success Result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_quiz_submitanswercommandhandler_cs_handle_handle_return_21_1",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_quiz_submitanswercommandhandler_cs_handle_return_24",
|
|
"label": "Return failure Result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_quiz_submitanswercommandhandler_cs_handle_nexusreader_application_abstractions_services_vibrateasync_20",
|
|
"label": "Call Vibrate Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_quiz_submitanswercommandhandler_cs_handle_external_call",
|
|
"label": "await _platformService.VibrateAsync(50)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "medium",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_program_top_level",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_ensure_database_initialized",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_handle_subscription_success",
|
|
"domainIds": [
|
|
"ai",
|
|
"ai_action",
|
|
"ai_tokens",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"answer",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"auth",
|
|
"author",
|
|
"billing",
|
|
"book",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"citation",
|
|
"command",
|
|
"contentblock",
|
|
"context_snippet",
|
|
"cosinedistance",
|
|
"coverimage",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebooks_lastreadbook",
|
|
"embedding",
|
|
"epub",
|
|
"graph",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"ingestion_progress",
|
|
"initializationstatus",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph",
|
|
"knowledge_retrieval",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"lastreadbookdto",
|
|
"library",
|
|
"library_question",
|
|
"link",
|
|
"metadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"node",
|
|
"options",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresults",
|
|
"reader_navigation",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"roles",
|
|
"search_result",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"theme_focus_mode",
|
|
"user",
|
|
"user_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "application_layer_md",
|
|
"summaryCount": 40,
|
|
"dataFlowCount": 12,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 8,
|
|
"chunkingIssueCodes": [
|
|
"split-contract-family",
|
|
"split-event-flow"
|
|
],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "low_confidence_flow_flow_maui_app_composition_and_handler_discovery",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_composition_and_handler_discovery",
|
|
"message": "Business flow MAUI app composition and handler discovery remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "low_confidence_flow_flow_ai_groundedness_verification",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ai_groundedness_verification",
|
|
"message": "Business flow AI groundedness verification remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_web_minimal_api_application_handler_dispatch",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_web_minimal_api_application_handler_dispatch",
|
|
"message": "Business flow Web Minimal API → Application handler dispatch is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": [
|
|
"Semantic cross-reference chunking raised 2 continuity warning(s)."
|
|
]
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_ai_groundedness_verification",
|
|
"name": "AI groundedness verification",
|
|
"rank": 1,
|
|
"score": 0.875,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.76,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.98,
|
|
"userComprehension": 0.9
|
|
},
|
|
"reason": "Ranked because AI groundedness verification combines business value 0.95, evidence strength 0.76, architecture coverage 0.75, execution truth 0.98, and comprehension 0.90 for a total score of 0.88.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"flowId": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"rank": 2,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Ensure Database Initialized combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"rank": 3,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Handle Subscription Success combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"rank": 4,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Program (top level) combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_web_minimal_api_application_handler_dispatch",
|
|
"name": "Web Minimal API → Application handler dispatch",
|
|
"rank": 5,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Web Minimal API → Application handler dispatch combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_semantic_search_library_qa",
|
|
"name": "Semantic search / Library QA",
|
|
"rank": 6,
|
|
"score": 0.858,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Semantic search / Library QA combines business value 0.95, evidence strength 0.85, architecture coverage 0.92, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Data.Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_ebook_ingestion",
|
|
"name": "Ebook ingestion",
|
|
"rank": 7,
|
|
"score": 0.854,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 1,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 0.66,
|
|
"userComprehension": 0.82
|
|
},
|
|
"reason": "Ranked because Ebook ingestion combines business value 0.95, evidence strength 1.00, architecture coverage 0.83, execution truth 0.66, and comprehension 0.82 for a total score of 0.85.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_quiz_answer_submission",
|
|
"name": "Quiz answer submission",
|
|
"rank": 8,
|
|
"score": 0.854,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.794,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.42
|
|
},
|
|
"reason": "Ranked because Quiz answer submission combines business value 0.95, evidence strength 0.79, architecture coverage 0.83, execution truth 1.00, and comprehension 0.42 for a total score of 0.85.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "medium"
|
|
},
|
|
{
|
|
"flowId": "flow_reader_page_retrieval_and_progress_sync",
|
|
"name": "Reader page retrieval and progress sync",
|
|
"rank": 9,
|
|
"score": 0.72,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 1,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.18,
|
|
"userComprehension": 0.82
|
|
},
|
|
"reason": "Ranked because Reader page retrieval and progress sync combines business value 0.95, evidence strength 1.00, architecture coverage 0.75, execution truth 0.18, and comprehension 0.82 for a total score of 0.72.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_maui_app_composition_and_handler_discovery",
|
|
"name": "MAUI app composition and handler discovery",
|
|
"rank": 10,
|
|
"score": 0.683,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.76,
|
|
"architectureCoverage": 0.667,
|
|
"executionTruth": 0.37,
|
|
"userComprehension": 0.66
|
|
},
|
|
"reason": "Ranked because MAUI app composition and handler discovery combines business value 0.95, evidence strength 0.76, architecture coverage 0.67, execution truth 0.37, and comprehension 0.66 for a total score of 0.68.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"flowId": "flow_knowledge_graph_retrieval",
|
|
"name": "Knowledge graph retrieval",
|
|
"rank": 11,
|
|
"score": 0.671,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.875,
|
|
"evidenceStrength": 0.88,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.36,
|
|
"userComprehension": 0.34
|
|
},
|
|
"reason": "Ranked because Knowledge graph retrieval combines business value 0.88, evidence strength 0.88, architecture coverage 0.75, execution truth 0.36, and comprehension 0.34 for a total score of 0.67.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "medium"
|
|
},
|
|
{
|
|
"flowId": "flow_wasm_client_startup_and_di_validation",
|
|
"name": "WASM client startup and DI validation",
|
|
"rank": 12,
|
|
"score": 0.566,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.775,
|
|
"architectureCoverage": 0.667,
|
|
"executionTruth": 0.11,
|
|
"userComprehension": 0.1
|
|
},
|
|
"reason": "Ranked because WASM client startup and DI validation combines business value 0.95, evidence strength 0.78, architecture coverage 0.67, execution truth 0.11, and comprehension 0.10 for a total score of 0.57.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "warn",
|
|
"coverage": {
|
|
"totalDomains": 87,
|
|
"coveredDomains": 87,
|
|
"totalCapabilities": 12,
|
|
"coveredCapabilities": 12,
|
|
"totalFlows": 12,
|
|
"coveredFlows": 12
|
|
},
|
|
"issueCount": 2,
|
|
"issues": [
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "application-layer.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_composition_and_handler_discovery",
|
|
"message": "Business flow MAUI app composition and handler discovery is low confidence.",
|
|
"evidenceCount": 5,
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "application-layer.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ai_groundedness_verification",
|
|
"message": "Business flow AI groundedness verification is low confidence.",
|
|
"evidenceCount": 6,
|
|
"confidence": "low"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"documentFilename": "business-overview.md",
|
|
"documentTitle": "Business Overview",
|
|
"relativeOutputPath": "business/business-overview.md",
|
|
"collectionKind": "business",
|
|
"publicationTier": "primary",
|
|
"businessModel": {
|
|
"documentFilename": "business-overview.md",
|
|
"documentTitle": "Business Overview",
|
|
"summary": "Business Overview centers on account, ai token usage / limits, ai tokens and currently highlights Authentication (Login/Register) Flow as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "account",
|
|
"name": "account",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_token_usage_limits",
|
|
"name": "ai token usage / limits",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens",
|
|
"name": "ai tokens",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens_aitokensused_aitokenlimit",
|
|
"name": "ai tokens (aitokensused, aitokenlimit)",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "auth",
|
|
"name": "auth",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication",
|
|
"name": "authentication",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "author",
|
|
"name": "author",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Domain/Entities/Author.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Domain/Entities/Author.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authorization_policy",
|
|
"name": "authorization policy",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "command",
|
|
"name": "command",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "cookie_based_sign_in",
|
|
"name": "cookie based sign in",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook",
|
|
"name": "ebook",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Domain/Entities/Author.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Domain/Entities/Author.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_epub_ingestion",
|
|
"name": "ebook / epub ingestion",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding",
|
|
"name": "embedding",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "external_google_login",
|
|
"name": "external (google) login",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_authenticationstateprovider",
|
|
"name": "identity (authenticationstateprovider)",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "jwt",
|
|
"name": "jwt",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_knowledge_service_graph_summary",
|
|
"name": "knowledge (knowledge service, graph, summary)",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgegraph_knowledgecoordinator",
|
|
"name": "knowledgegraph / knowledgecoordinator",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_identity",
|
|
"name": "nexususer (identity)",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "pro_subscription",
|
|
"name": "pro subscription",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "query",
|
|
"name": "query",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_state",
|
|
"name": "quiz state",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_navigation",
|
|
"name": "reader navigation",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync_broadcast",
|
|
"name": "real time sync/broadcast",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "result",
|
|
"name": "result",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "result_tresponse",
|
|
"name": "result<tresponse>",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_client_storage",
|
|
"name": "secure client storage",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "session_cookie_sign_in_orchestration",
|
|
"name": "session/cookie sign in orchestration",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscription_plan",
|
|
"name": "subscription / plan",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscriptionplan",
|
|
"name": "subscriptionplan",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "sync",
|
|
"name": "sync",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenantid",
|
|
"name": "tenantid",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "theme_focus_mode",
|
|
"name": "theme & focus mode",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token_refresh",
|
|
"name": "token refresh",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user",
|
|
"name": "user",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_registration",
|
|
"name": "user registration",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "userprofile",
|
|
"name": "userprofile",
|
|
"description": "Business Overview is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_authentication_login_register_flow",
|
|
"name": "Authentication (Login/Register) Flow",
|
|
"description": "Authentication (Login/Register) Flow coordinates 5 business-relevant steps beginning at NexusReader.UI.Shared/Pages/Account/Login.razor.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_authentication_login_register_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_http_request_token_refresh_flow",
|
|
"name": "HTTP Request + Token Refresh Flow",
|
|
"description": "HTTP Request + Token Refresh Flow coordinates 4 business-relevant steps beginning at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_http_request_token_refresh_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_knowledge_query_api_flow",
|
|
"name": "Knowledge Query API Flow",
|
|
"description": "Knowledge Query API Flow coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_knowledge_query_api_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) coordinates 8 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_program_top_level"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ensure_database_initialized"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_handle_subscription_success"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_authentication_login_register_flow",
|
|
"name": "Authentication (Login/Register) Flow",
|
|
"description": "Authentication (Login/Register) Flow starts at NexusReader.UI.Shared/Pages/Account/Login.razor and follows 9 grounded steps: Enter Handle Login -> Falls back to alternate path -> Evaluates branch condition -> Reads repository or persistence state -> ....",
|
|
"capabilityId": "capability_authentication_login_register_flow",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_entry",
|
|
"label": "Enter Handle Login",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_handlelogin_fallback_139_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_handlelogin_branch_134_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_handlelogin_repository_read_141_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_nexusreader_ui_shared_services_iidentityservice_cs_loginasync_133",
|
|
"label": "Call Login Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_unknown_nexusauth_submitloginform_js_via_ijsruntime_137",
|
|
"label": "Call nexus Auth",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_external_call",
|
|
"label": "await IdentityService.LoginAsync(...)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_persistence_read",
|
|
"label": "_errorMessage = result.Errors.FirstOrDefault()?.Message ?? \"Nieprawidłowy e-mail lub hasło.\";",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_result",
|
|
"label": "Complete Handle Login",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"unknown"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"unknown",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_http_request_token_refresh_flow",
|
|
"name": "HTTP Request + Token Refresh Flow",
|
|
"description": "HTTP Request + Token Refresh Flow starts at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs and follows 12 grounded steps: Enter Send Async -> Falls back to alternate path -> Calls external dependency -> Evaluates branch condition -> ....",
|
|
"capabilityId": "capability_http_request_token_refresh_flow",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_entry",
|
|
"label": "Enter Send Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_fallback_73_6",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_external_call_27_0",
|
|
"label": "Calls external dependency",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_branch_45_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_return_95_11",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_return_109",
|
|
"label": "Return response",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_self_clonehttprequestmessageasync_93",
|
|
"label": "Call Clone Http Request Message Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_getsecurestring_47",
|
|
"label": "Call Get Secure String",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_refreshtokenasync_78",
|
|
"label": "Call Refresh Token Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_logoutasync_87",
|
|
"label": "Call Logout Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "var response = await base.SendAsync(request, cancellationToken);",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_knowledge_query_api_flow",
|
|
"name": "Knowledge Query API Flow",
|
|
"description": "Knowledge Query API Flow starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_knowledge_query_api_flow",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_program_top_level",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_ensure_database_initialized",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_handle_subscription_success",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "business_overview_md",
|
|
"summaryCount": 15,
|
|
"dataFlowCount": 6,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 1,
|
|
"chunkingIssueCodes": [],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "ambiguous_business_flow_flow_http_request_token_refresh_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_http_request_token_refresh_flow",
|
|
"message": "Business flow HTTP Request + Token Refresh Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_knowledge_query_api_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_knowledge_query_api_flow",
|
|
"message": "Business flow Knowledge Query API Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": []
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_authentication_login_register_flow",
|
|
"name": "Authentication (Login/Register) Flow",
|
|
"rank": 1,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Authentication (Login/Register) Flow combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"unknown",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"rank": 2,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Ensure Database Initialized combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"rank": 3,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Handle Subscription Success combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_knowledge_query_api_flow",
|
|
"name": "Knowledge Query API Flow",
|
|
"rank": 4,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Knowledge Query API Flow combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"rank": 5,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Program (top level) combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_http_request_token_refresh_flow",
|
|
"name": "HTTP Request + Token Refresh Flow",
|
|
"rank": 6,
|
|
"score": 0.825,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.7,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because HTTP Request + Token Refresh Flow combines business value 0.95, evidence strength 0.70, architecture coverage 0.92, execution truth 1.00, and comprehension 0.18 for a total score of 0.82.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "pass",
|
|
"coverage": {
|
|
"totalDomains": 37,
|
|
"coveredDomains": 37,
|
|
"totalCapabilities": 6,
|
|
"coveredCapabilities": 6,
|
|
"totalFlows": 6,
|
|
"coveredFlows": 6
|
|
},
|
|
"issueCount": 0,
|
|
"issues": []
|
|
}
|
|
},
|
|
{
|
|
"documentFilename": "data-and-persistence.md",
|
|
"documentTitle": "Data Layer, EF Core and Repositories",
|
|
"relativeOutputPath": "domains/data-and-persistence.md",
|
|
"collectionKind": "domains",
|
|
"publicationTier": "secondary",
|
|
"businessModel": {
|
|
"documentFilename": "data-and-persistence.md",
|
|
"documentTitle": "Data Layer, EF Core and Repositories",
|
|
"summary": "Data Layer, EF Core and Repositories centers on addeddate, aitoken accounting, aitokenlimit and currently highlights WASM DI bootstrap & stub registration as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "addeddate",
|
|
"name": "addeddate",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "aitoken_accounting",
|
|
"name": "aitoken accounting",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "aitokenlimit",
|
|
"name": "aitokenlimit",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "application_layer_integration",
|
|
"name": "application layer integration",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "asp_net_identity",
|
|
"name": "asp.net identity",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "asp_net_identity_roles_claims_tokens_logins",
|
|
"name": "asp.net identity (roles, claims, tokens, logins)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "aspnet_identity_roles_users_claims",
|
|
"name": "aspnet identity (roles/users/claims)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "auth",
|
|
"name": "auth",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication",
|
|
"name": "authentication",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "author",
|
|
"name": "author",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter",
|
|
"name": "chapter",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_index",
|
|
"name": "chapter index",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_retrieval",
|
|
"name": "chapter retrieval",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "client_wasm",
|
|
"name": "client (wasm)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "configuration_json_env_file_support",
|
|
"name": "configuration (json/env file support)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "contenthash",
|
|
"name": "contenthash",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "createdat",
|
|
"name": "createdat",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "database_providers_sqlite_postgresql",
|
|
"name": "database providers (sqlite, postgresql)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "description_column",
|
|
"name": "description column",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicecontext",
|
|
"name": "devicecontext",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicetype",
|
|
"name": "devicetype",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "displayorientation",
|
|
"name": "displayorientation",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook",
|
|
"name": "ebook",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs",
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs",
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_epub_ingestion",
|
|
"name": "ebook / epub ingestion",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebookid",
|
|
"name": "ebookid",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebooks",
|
|
"name": "ebooks",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebooks_table",
|
|
"name": "ebooks table",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding",
|
|
"name": "embedding",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding_vector",
|
|
"name": "embedding vector",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "epub",
|
|
"name": "epub",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedness",
|
|
"name": "groundedness",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedresponse",
|
|
"name": "groundedresponse",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_authenticationstateprovider",
|
|
"name": "identity (authenticationstateprovider)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_roles_claims_logins",
|
|
"name": "identity roles/claims/logins",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "isunlimitedtokens",
|
|
"name": "isunlimitedtokens",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "jwt",
|
|
"name": "jwt",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_knowledge_service_graph_summary",
|
|
"name": "knowledge (knowledge service, graph, summary)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_unit_vector_embeddings",
|
|
"name": "knowledge unit (vector embeddings)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_unit_link_graph_edges",
|
|
"name": "knowledge unit link (graph edges)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgegraph_knowledgecoordinator",
|
|
"name": "knowledgegraph / knowledgecoordinator",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgepacket",
|
|
"name": "knowledgepacket",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunit",
|
|
"name": "knowledgeunit",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunit_vector_embeddings",
|
|
"name": "knowledgeunit (vector embeddings)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunit_vectorized_content",
|
|
"name": "knowledgeunit (vectorized content)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunitlink",
|
|
"name": "knowledgeunitlink",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunitlink_relations",
|
|
"name": "knowledgeunitlink (relations)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "lastreaddate",
|
|
"name": "lastreaddate",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "localepubmetadata",
|
|
"name": "localepubmetadata",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer",
|
|
"name": "nexususer",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_admin",
|
|
"name": "nexususer (admin)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/DbInitializer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/DbInitializer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_application_user",
|
|
"name": "nexususer (application user)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_identity",
|
|
"name": "nexususer (identity)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "persistence",
|
|
"name": "persistence",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "progress",
|
|
"name": "progress",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_results",
|
|
"name": "quiz results",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_state",
|
|
"name": "quiz state",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quizresult",
|
|
"name": "quizresult",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_navigation",
|
|
"name": "reader navigation",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readerpage",
|
|
"name": "readerpage",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync_broadcast",
|
|
"name": "real time sync/broadcast",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "relevantcontext",
|
|
"name": "relevantcontext",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "role",
|
|
"name": "role",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs",
|
|
"NexusReader.Data/Persistence/DbInitializer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs",
|
|
"NexusReader.Data/Persistence/DbInitializer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_client_storage",
|
|
"name": "secure client storage",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semantic_knowledge_cache",
|
|
"name": "semantic knowledge cache",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticknowledgecache",
|
|
"name": "semanticknowledgecache",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticknowledgecache_ai_semantic_caching",
|
|
"name": "semanticknowledgecache (ai/semantic caching)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticsearch",
|
|
"name": "semanticsearch",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "shared_ui",
|
|
"name": "shared ui",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "stripeproductid",
|
|
"name": "stripeproductid",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscription_plan",
|
|
"name": "subscription plan",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscriptionplan",
|
|
"name": "subscriptionplan",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "sync",
|
|
"name": "sync",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenant",
|
|
"name": "tenant",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "theme_focus_mode",
|
|
"name": "theme & focus mode",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token_refresh",
|
|
"name": "token refresh",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_aspnetusers",
|
|
"name": "user (aspnetusers)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_identity",
|
|
"name": "user (identity)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_nexususer",
|
|
"name": "user (nexususer)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vector_embeddings_storage_pgvector",
|
|
"name": "vector embeddings storage (pgvector)",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vibration",
|
|
"name": "vibration",
|
|
"description": "Data Layer, EF Core and Repositories is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_wasm_di_bootstrap_stub_registration",
|
|
"name": "WASM DI bootstrap & stub registration",
|
|
"description": "WASM DI bootstrap & stub registration coordinates 4 business-relevant steps beginning at NexusReader.Web.Client/Program.cs.",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_wasm_di_bootstrap_stub_registration"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_app_composition_and_maui_bootstrap",
|
|
"name": "App composition and MAUI bootstrap",
|
|
"description": "App composition and MAUI bootstrap coordinates 4 business-relevant steps beginning at NexusReader.Maui/MauiProgram.cs.",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_app_composition_and_maui_bootstrap"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_database_initialization_and_seeding_robust_startup",
|
|
"name": "Database initialization and seeding (robust startup)",
|
|
"description": "Database initialization and seeding (robust startup) coordinates 5 business-relevant steps beginning at NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs.",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_database_initialization_and_seeding_robust_startup"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_runtime_data_access_repositories_appdbcontext",
|
|
"name": "Runtime data access (repositories -> AppDbContext)",
|
|
"description": "Runtime data access (repositories -> AppDbContext) coordinates 4 business-relevant steps beginning at Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs).",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_runtime_data_access_repositories_appdbcontext"
|
|
],
|
|
"evidencePaths": [
|
|
"Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_schema_evolution_via_ef_core_migrations",
|
|
"name": "Schema evolution via EF Core migrations",
|
|
"description": "Schema evolution via EF Core migrations coordinates 4 business-relevant steps beginning at NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs.",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_schema_evolution_via_ef_core_migrations"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_provider_aware_query_and_provider_specific_features",
|
|
"name": "Provider-aware query and provider-specific features",
|
|
"description": "Provider-aware query and provider-specific features coordinates 3 business-relevant steps beginning at NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs.",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_provider_aware_query_and_provider_specific_features"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) coordinates 8 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_program_top_level"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ensure_database_initialized"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_handle_subscription_success"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_wasm_di_bootstrap_stub_registration",
|
|
"name": "WASM DI bootstrap & stub registration",
|
|
"description": "WASM DI bootstrap & stub registration starts at NexusReader.Web.Client/Program.cs and follows 8 grounded steps: Enter Program (top level startup) -> Call Throwing Db Context Factory. -> Call Throwing Embedding Generator. -> Call Throwing Book Storage Service. -> ....",
|
|
"capabilityId": "capability_wasm_di_bootstrap_stub_registration",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_entry",
|
|
"label": "Enter Program (top level startup)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingdbcontextfactory_ctor_49",
|
|
"label": "Call Throwing Db Context Factory.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingembeddinggenerator_ctor_50",
|
|
"label": "Call Throwing Embedding Generator.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingbookstorageservice_ctor_51",
|
|
"label": "Call Throwing Book Storage Service.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingebookrepository_ctor_52",
|
|
"label": "Call Throwing Ebook Repository.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingsyncbroadcaster_ctor_53",
|
|
"label": "Call Throwing Sync Broadcaster.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_nexusreader_application_addapplication_55",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_result",
|
|
"label": "Complete Program (top level startup)",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_app_composition_and_maui_bootstrap",
|
|
"name": "App composition and MAUI bootstrap",
|
|
"description": "App composition and MAUI bootstrap starts at NexusReader.Maui/MauiProgram.cs and follows 4 grounded steps: Enter Create Maui App -> Returns result -> Call Add Application -> Call Dependency Injection.",
|
|
"capabilityId": "capability_app_composition_and_maui_bootstrap",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_entry",
|
|
"label": "Enter Create Maui App",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_createmauiapp_return_57_0",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_nexusreader_application_addapplication_51",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_nexusreader_application_dependencyinjection_assembly_54",
|
|
"label": "Call Dependency Injection",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "low",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_database_initialization_and_seeding_robust_startup",
|
|
"name": "Database initialization and seeding (robust startup)",
|
|
"description": "Database initialization and seeding (robust startup) starts at NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs and follows 5 grounded steps: Web app startup registers App Db Context and Db Context Factory -> Ensure Database Initialized/Db Initializer invoked (wrapped with retry/backoff) -> IDb Context Factory or scoped App Db Context used to apply pending migrations (Database -> Db Initializer performs idempotent seed: Subscription Plans, Roles, Admin user (hash via IPassword Hasher), sample Author/Ebook -> ....",
|
|
"capabilityId": "capability_database_initialization_and_seeding_robust_startup",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "database_initialization_and_seeding_robust_startup_1",
|
|
"label": "Web app startup registers App Db Context and Db Context Factory",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "database_initialization_and_seeding_robust_startup_2",
|
|
"label": "Ensure Database Initialized/Db Initializer invoked (wrapped with retry/backoff)",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "database_initialization_and_seeding_robust_startup_3",
|
|
"label": "IDb Context Factory or scoped App Db Context used to apply pending migrations (Database",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "database_initialization_and_seeding_robust_startup_4",
|
|
"label": "Db Initializer performs idempotent seed: Subscription Plans, Roles, Admin user (hash via IPassword Hasher), sample Author/Ebook",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "database_initialization_and_seeding_robust_startup_5",
|
|
"label": "Commit changes; application services rely on seeded rows",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_runtime_data_access_repositories_appdbcontext",
|
|
"name": "Runtime data access (repositories -> AppDbContext)",
|
|
"description": "Runtime data access (repositories -> AppDbContext) starts at Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs) and follows 4 grounded steps: API minimal endpoints or Mediat R handlers receive requests -> Handlers call IEbook Repository (or other repo interfaces) -> Ebook Repository uses App Db Context Db Sets to query/add/update entities and sets domain defaults (e.g -> Save Changes Async commits unit of work to database.",
|
|
"capabilityId": "capability_runtime_data_access_repositories_appdbcontext",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "runtime_data_access_repositories_appdbcontext_1",
|
|
"label": "API minimal endpoints or Mediat R handlers receive requests",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "runtime_data_access_repositories_appdbcontext_2",
|
|
"label": "Handlers call IEbook Repository (or other repo interfaces)",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "runtime_data_access_repositories_appdbcontext_3",
|
|
"label": "Ebook Repository uses App Db Context Db Sets to query/add/update entities and sets domain defaults (e.g",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "runtime_data_access_repositories_appdbcontext_4",
|
|
"label": "Save Changes Async commits unit of work to database",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_schema_evolution_via_ef_core_migrations",
|
|
"name": "Schema evolution via EF Core migrations",
|
|
"description": "Schema evolution via EF Core migrations starts at NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs and follows 4 grounded steps: Developers scaffold migrations using dotnet ef which uses App Db Context Factory to build model -> Migration classes (.cs and .Designer -> Apply migrations via dotnet ef or let app call Database -> Schema evolves (initial schema > quiz results > author normalization > ebook progress/flags/description > knowledge unit FK fixes > normalized subscription changes) and seed data updated.",
|
|
"capabilityId": "capability_schema_evolution_via_ef_core_migrations",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "schema_evolution_via_ef_core_migrations_1",
|
|
"label": "Developers scaffold migrations using dotnet ef which uses App Db Context Factory to build model",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "schema_evolution_via_ef_core_migrations_2",
|
|
"label": "Migration classes (.cs and .Designer",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "schema_evolution_via_ef_core_migrations_3",
|
|
"label": "Apply migrations via dotnet ef or let app call Database",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "schema_evolution_via_ef_core_migrations_4",
|
|
"label": "Schema evolves (initial schema > quiz results > author normalization > ebook progress/flags/description > knowledge unit FK fixes > normalized subscription changes) and seed data updated",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_provider_aware_query_and_provider_specific_features",
|
|
"name": "Provider-aware query and provider-specific features",
|
|
"description": "Provider-aware query and provider-specific features starts at NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs and follows 3 grounded steps: Repository query logic detects database provider (e.g -> Uses EF.Functions -> App Db Context configures pgvector extension and vector columns/indexes when Postgres provider is selected.",
|
|
"capabilityId": "capability_provider_aware_query_and_provider_specific_features",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "provider_aware_query_and_provider_specific_features_1",
|
|
"label": "Repository query logic detects database provider (e.g",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "provider_aware_query_and_provider_specific_features_2",
|
|
"label": "Uses EF.Functions",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "provider_aware_query_and_provider_specific_features_3",
|
|
"label": "App Db Context configures pgvector extension and vector columns/indexes when Postgres provider is selected",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.885,
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "medium",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_program_top_level",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_ensure_database_initialized",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_handle_subscription_success",
|
|
"domainIds": [
|
|
"addeddate",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"configuration_json_env_file_support",
|
|
"contenthash",
|
|
"createdat",
|
|
"database_providers_sqlite_postgresql",
|
|
"description_column",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"isunlimitedtokens",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreaddate",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"persistence",
|
|
"progress",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizresult",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"role",
|
|
"secure_client_storage",
|
|
"semantic_knowledge_cache",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"stripeproductid",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenant",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "data_and_persistence_md",
|
|
"summaryCount": 38,
|
|
"dataFlowCount": 9,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 7,
|
|
"chunkingIssueCodes": [
|
|
"split-contract-family"
|
|
],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "low_confidence_flow_flow_app_composition_and_maui_bootstrap",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_app_composition_and_maui_bootstrap",
|
|
"message": "Business flow App composition and MAUI bootstrap remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_ensure_database_initialized",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ensure_database_initialized",
|
|
"message": "Business flow Ensure Database Initialized is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": [
|
|
"Semantic cross-reference chunking raised 1 continuity warning(s)."
|
|
]
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"rank": 1,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Ensure Database Initialized combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"rank": 2,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Handle Subscription Success combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"rank": 3,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Program (top level) combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_runtime_data_access_repositories_appdbcontext",
|
|
"name": "Runtime data access (repositories -> AppDbContext)",
|
|
"rank": 4,
|
|
"score": 0.841,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 1,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 0.67,
|
|
"userComprehension": 0.66
|
|
},
|
|
"reason": "Ranked because Runtime data access (repositories -> AppDbContext) combines business value 0.95, evidence strength 1.00, architecture coverage 0.83, execution truth 0.67, and comprehension 0.66 for a total score of 0.84.",
|
|
"evidencePaths": [
|
|
"Application handlers -> IEbookRepository (NexusReader.Infrastructure/Persistence/EbookRepository.cs)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_database_initialization_and_seeding_robust_startup",
|
|
"name": "Database initialization and seeding (robust startup)",
|
|
"rank": 5,
|
|
"score": 0.797,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 1,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 0.43,
|
|
"userComprehension": 0.82
|
|
},
|
|
"reason": "Ranked because Database initialization and seeding (robust startup) combines business value 0.95, evidence strength 1.00, architecture coverage 0.83, execution truth 0.43, and comprehension 0.82 for a total score of 0.80.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Data/Persistence/DbInitializer.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_schema_evolution_via_ef_core_migrations",
|
|
"name": "Schema evolution via EF Core migrations",
|
|
"rank": 6,
|
|
"score": 0.766,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 1,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 0.37,
|
|
"userComprehension": 0.66
|
|
},
|
|
"reason": "Ranked because Schema evolution via EF Core migrations combines business value 0.95, evidence strength 1.00, architecture coverage 0.83, execution truth 0.37, and comprehension 0.66 for a total score of 0.77.",
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations and NexusReader.Data/Persistence/AppDbContextFactory.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_provider_aware_query_and_provider_specific_features",
|
|
"name": "Provider-aware query and provider-specific features",
|
|
"rank": 7,
|
|
"score": 0.699,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.885,
|
|
"evidenceStrength": 0.88,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.43,
|
|
"userComprehension": 0.42
|
|
},
|
|
"reason": "Ranked because Provider-aware query and provider-specific features combines business value 0.89, evidence strength 0.88, architecture coverage 0.75, execution truth 0.43, and comprehension 0.42 for a total score of 0.70.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs and NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "medium"
|
|
},
|
|
{
|
|
"flowId": "flow_app_composition_and_maui_bootstrap",
|
|
"name": "App composition and MAUI bootstrap",
|
|
"rank": 8,
|
|
"score": 0.683,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.76,
|
|
"architectureCoverage": 0.667,
|
|
"executionTruth": 0.37,
|
|
"userComprehension": 0.66
|
|
},
|
|
"reason": "Ranked because App composition and MAUI bootstrap combines business value 0.95, evidence strength 0.76, architecture coverage 0.67, execution truth 0.37, and comprehension 0.66 for a total score of 0.68.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"flowId": "flow_wasm_di_bootstrap_stub_registration",
|
|
"name": "WASM DI bootstrap & stub registration",
|
|
"rank": 9,
|
|
"score": 0.566,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.775,
|
|
"architectureCoverage": 0.667,
|
|
"executionTruth": 0.11,
|
|
"userComprehension": 0.1
|
|
},
|
|
"reason": "Ranked because WASM DI bootstrap & stub registration combines business value 0.95, evidence strength 0.78, architecture coverage 0.67, execution truth 0.11, and comprehension 0.10 for a total score of 0.57.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "warn",
|
|
"coverage": {
|
|
"totalDomains": 80,
|
|
"coveredDomains": 80,
|
|
"totalCapabilities": 9,
|
|
"coveredCapabilities": 9,
|
|
"totalFlows": 9,
|
|
"coveredFlows": 9
|
|
},
|
|
"issueCount": 1,
|
|
"issues": [
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "data-and-persistence.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_app_composition_and_maui_bootstrap",
|
|
"message": "Business flow App composition and MAUI bootstrap is low confidence.",
|
|
"evidenceCount": 5,
|
|
"confidence": "low"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"documentFilename": "infrastructure-services.md",
|
|
"documentTitle": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub",
|
|
"relativeOutputPath": "domains/infrastructure-services.md",
|
|
"collectionKind": "domains",
|
|
"publicationTier": "secondary",
|
|
"businessModel": {
|
|
"documentFilename": "infrastructure-services.md",
|
|
"documentTitle": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub",
|
|
"summary": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub centers on ai configuration, ai token limit, ai tokens / token limits and currently highlights Knowledge Retrieval & Caching Flow as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "ai_configuration",
|
|
"name": "ai configuration",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_token_limit",
|
|
"name": "ai token limit",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens_token_limits",
|
|
"name": "ai tokens / token limits",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "auth",
|
|
"name": "auth",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication",
|
|
"name": "authentication",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication_identity",
|
|
"name": "authentication/identity",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "author",
|
|
"name": "author",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authorization_policy",
|
|
"name": "authorization/policy",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "background_processing",
|
|
"name": "background processing",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "billing",
|
|
"name": "billing",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/BillingService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/BillingService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "book_ebook_file",
|
|
"name": "book (ebook file)",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_retrieval",
|
|
"name": "chapter retrieval",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_readingorder",
|
|
"name": "chapter/readingorder",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "content_normalization",
|
|
"name": "content normalization",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Helpers/ContentHasher.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Helpers/ContentHasher.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"name": "contentblock (textsegmentblock, aiactiontriggerblock)",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "cover_cover_image",
|
|
"name": "cover (cover image)",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "deterministic_hashing",
|
|
"name": "deterministic hashing",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Helpers/ContentHasher.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Helpers/ContentHasher.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicecontext",
|
|
"name": "devicecontext",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicetype",
|
|
"name": "devicetype",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "displayorientation",
|
|
"name": "displayorientation",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook",
|
|
"name": "ebook",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_epub_ingestion",
|
|
"name": "ebook / epub ingestion",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_processing",
|
|
"name": "ebook processing",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding",
|
|
"name": "embedding",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embeddings",
|
|
"name": "embeddings",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "epub",
|
|
"name": "epub",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graph_relationships",
|
|
"name": "graph relationships",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedness",
|
|
"name": "groundedness",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedresponse",
|
|
"name": "groundedresponse",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "grounding_fact_checking",
|
|
"name": "grounding/fact checking",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_authenticationstateprovider",
|
|
"name": "identity (authenticationstateprovider)",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "jwt",
|
|
"name": "jwt",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_knowledge_service_graph_summary",
|
|
"name": "knowledge (knowledge service, graph, summary)",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_graph_expansion",
|
|
"name": "knowledge graph expansion",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgegraph_knowledgecoordinator",
|
|
"name": "knowledgegraph / knowledgecoordinator",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgepacket",
|
|
"name": "knowledgepacket",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunit",
|
|
"name": "knowledgeunit",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunitlink",
|
|
"name": "knowledgeunitlink",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "llm_model_selection",
|
|
"name": "llm model selection",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "localepubmetadata",
|
|
"name": "localepubmetadata",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer",
|
|
"name": "nexususer",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/BillingService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/BillingService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_identity",
|
|
"name": "nexususer (identity)",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "payments",
|
|
"name": "payments",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "productid",
|
|
"name": "productid",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/StripeSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/StripeSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_state",
|
|
"name": "quiz state",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "rate_size_limits_and_retry_policy",
|
|
"name": "rate/size limits and retry policy",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_navigation",
|
|
"name": "reader navigation",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readerpage",
|
|
"name": "readerpage",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync_broadcast",
|
|
"name": "real time sync/broadcast",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "relevantcontext",
|
|
"name": "relevantcontext",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "resilience_and_http_retries",
|
|
"name": "resilience and http retries",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_client_storage",
|
|
"name": "secure client storage",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semantic_embeddings_and_vector_search",
|
|
"name": "semantic embeddings and vector search",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticsearch",
|
|
"name": "semanticsearch",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "stripe",
|
|
"name": "stripe",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/StripeSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/StripeSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscriptionplan",
|
|
"name": "subscriptionplan",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "sync",
|
|
"name": "sync",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "theme_focus_mode",
|
|
"name": "theme & focus mode",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token_refresh",
|
|
"name": "token refresh",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user",
|
|
"name": "user",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vector_search_embeddings",
|
|
"name": "vector search / embeddings",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vibration",
|
|
"name": "vibration",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "web_root_relative_static_asset_paths_uploads_covers",
|
|
"name": "web root relative static asset paths (uploads, covers)",
|
|
"description": "Infrastructure Services: Knowledge, AI, Billing, Storage, Epub is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_knowledge_retrieval_caching_flow",
|
|
"name": "Knowledge Retrieval & Caching Flow",
|
|
"description": "Knowledge Retrieval & Caching Flow coordinates 7 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_knowledge_retrieval_caching_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_epub_chapter_read_flow",
|
|
"name": "EPUB Chapter Read Flow",
|
|
"description": "EPUB Chapter Read Flow coordinates 5 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_epub_chapter_read_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_stripe_billing_webhook_flow",
|
|
"name": "Stripe Billing Webhook Flow",
|
|
"description": "Stripe Billing Webhook Flow coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_stripe_billing_webhook_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_token_authorization_flow",
|
|
"name": "Token Authorization Flow",
|
|
"description": "Token Authorization Flow coordinates 3 business-relevant steps beginning at NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs.",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_token_authorization_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_wasm_knowledge_client_flow",
|
|
"name": "WASM Knowledge Client Flow",
|
|
"description": "WASM Knowledge Client Flow coordinates 4 business-relevant steps beginning at NexusReader.Web.Client/Services/WasmKnowledgeService.cs.",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_wasm_knowledge_client_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) coordinates 8 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_program_top_level"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ensure_database_initialized"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_handle_subscription_success"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_knowledge_retrieval_caching_flow",
|
|
"name": "Knowledge Retrieval & Caching Flow",
|
|
"description": "Knowledge Retrieval & Caching Flow starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_knowledge_retrieval_caching_flow",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_epub_chapter_read_flow",
|
|
"name": "EPUB Chapter Read Flow",
|
|
"description": "EPUB Chapter Read Flow starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_epub_chapter_read_flow",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_stripe_billing_webhook_flow",
|
|
"name": "Stripe Billing Webhook Flow",
|
|
"description": "Stripe Billing Webhook Flow starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_stripe_billing_webhook_flow",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_token_authorization_flow",
|
|
"name": "Token Authorization Flow",
|
|
"description": "Token Authorization Flow starts at NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs and follows 3 grounded steps: Protected API endpoint is decorated with policy referencing Token Limit Requirement -> Authorization subsystem invokes Token Limit Handler -> Handler uses App Db Context to load Nexus User subscription/tokens and decides success/failure.",
|
|
"capabilityId": "capability_token_authorization_flow",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "token_authorization_flow_1",
|
|
"label": "Protected API endpoint is decorated with policy referencing Token Limit Requirement",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "token_authorization_flow_2",
|
|
"label": "Authorization subsystem invokes Token Limit Handler",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "token_authorization_flow_3",
|
|
"label": "Handler uses App Db Context to load Nexus User subscription/tokens and decides success/failure",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.855,
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "medium",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_wasm_knowledge_client_flow",
|
|
"name": "WASM Knowledge Client Flow",
|
|
"description": "WASM Knowledge Client Flow starts at NexusReader.Web.Client/Services/WasmKnowledgeService.cs and follows 7 grounded steps: Enter Get Relevant Context Async -> Evaluates branch condition -> Reads repository or persistence state -> Return Ok or Fail depending on deserialization -> ....",
|
|
"capabilityId": "capability_wasm_knowledge_client_flow",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_entry",
|
|
"label": "Enter Get Relevant Context Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_getrelevantcontextasync_branch_42_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_getrelevantcontextasync_repository_read_45_1",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_return_45",
|
|
"label": "Return Ok or Fail depending on deserialization",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_getrelevantcontextasync_return_45_2",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_external_call",
|
|
"label": "POST /api/knowledge/relevant with { query, tenantId }",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_persistence_read",
|
|
"label": "return context != null ? Result.Ok(context) : Result.Fail(\"Failed to deserialize relevant context.\");",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_program_top_level",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_ensure_database_initialized",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_handle_subscription_success",
|
|
"domainIds": [
|
|
"ai_configuration",
|
|
"ai_token_limit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization_policy",
|
|
"background_processing",
|
|
"billing",
|
|
"book_ebook_file",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"content_normalization",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"cover_cover_image",
|
|
"deterministic_hashing",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"ebook_processing",
|
|
"embedding",
|
|
"embeddings",
|
|
"epub",
|
|
"graph_relationships",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"grounding_fact_checking",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_graph_expansion",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"knowledgeunit",
|
|
"knowledgeunitlink",
|
|
"llm_model_selection",
|
|
"localepubmetadata",
|
|
"nexususer",
|
|
"nexususer_identity",
|
|
"payments",
|
|
"productid",
|
|
"quiz_state",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"secure_client_storage",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semanticsearch",
|
|
"stripe",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"vector_search_embeddings",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "infrastructure_services_md",
|
|
"summaryCount": 19,
|
|
"dataFlowCount": 8,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 1,
|
|
"chunkingIssueCodes": [],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "ambiguous_business_flow_flow_knowledge_retrieval_caching_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_knowledge_retrieval_caching_flow",
|
|
"message": "Business flow Knowledge Retrieval & Caching Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_epub_chapter_read_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_epub_chapter_read_flow",
|
|
"message": "Business flow EPUB Chapter Read Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": []
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_wasm_knowledge_client_flow",
|
|
"name": "WASM Knowledge Client Flow",
|
|
"rank": 1,
|
|
"score": 0.877,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.829,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.42
|
|
},
|
|
"reason": "Ranked because WASM Knowledge Client Flow combines business value 0.95, evidence strength 0.83, architecture coverage 0.92, execution truth 1.00, and comprehension 0.42 for a total score of 0.88.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"rank": 2,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Ensure Database Initialized combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_epub_chapter_read_flow",
|
|
"name": "EPUB Chapter Read Flow",
|
|
"rank": 3,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because EPUB Chapter Read Flow combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"rank": 4,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Handle Subscription Success combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_knowledge_retrieval_caching_flow",
|
|
"name": "Knowledge Retrieval & Caching Flow",
|
|
"rank": 5,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Knowledge Retrieval & Caching Flow combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"rank": 6,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Program (top level) combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_stripe_billing_webhook_flow",
|
|
"name": "Stripe Billing Webhook Flow",
|
|
"rank": 7,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Stripe Billing Webhook Flow combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_token_authorization_flow",
|
|
"name": "Token Authorization Flow",
|
|
"rank": 8,
|
|
"score": 0.591,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.855,
|
|
"evidenceStrength": 0.88,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.06,
|
|
"userComprehension": 0.34
|
|
},
|
|
"reason": "Ranked because Token Authorization Flow combines business value 0.85, evidence strength 0.88, architecture coverage 0.75, execution truth 0.06, and comprehension 0.34 for a total score of 0.59.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "medium"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "pass",
|
|
"coverage": {
|
|
"totalDomains": 63,
|
|
"coveredDomains": 63,
|
|
"totalCapabilities": 8,
|
|
"coveredCapabilities": 8,
|
|
"totalFlows": 8,
|
|
"coveredFlows": 8
|
|
},
|
|
"issueCount": 0,
|
|
"issues": []
|
|
}
|
|
},
|
|
{
|
|
"documentFilename": "maui-mobile.md",
|
|
"documentTitle": "MAUI Mobile Host: App wiring and platform services",
|
|
"relativeOutputPath": "domains/maui-mobile.md",
|
|
"collectionKind": "domains",
|
|
"publicationTier": "secondary",
|
|
"businessModel": {
|
|
"documentFilename": "maui-mobile.md",
|
|
"documentTitle": "MAUI Mobile Host: App wiring and platform services",
|
|
"summary": "MAUI Mobile Host: App wiring and platform services centers on android, application layer integration, auth and currently highlights MAUI App Startup Flow as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "android",
|
|
"name": "android",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "application_layer_integration",
|
|
"name": "application layer integration",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "auth",
|
|
"name": "auth",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication",
|
|
"name": "authentication",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "author",
|
|
"name": "author",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_retrieval",
|
|
"name": "chapter retrieval",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "client_wasm",
|
|
"name": "client (wasm)",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "device",
|
|
"name": "device",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicecontext",
|
|
"name": "devicecontext",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicetype",
|
|
"name": "devicetype",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "displayorientation",
|
|
"name": "displayorientation",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook",
|
|
"name": "ebook",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_epub_ingestion",
|
|
"name": "ebook / epub ingestion",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding",
|
|
"name": "embedding",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "epub",
|
|
"name": "epub",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedness",
|
|
"name": "groundedness",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedresponse",
|
|
"name": "groundedresponse",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "haptics",
|
|
"name": "haptics",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_authenticationstateprovider",
|
|
"name": "identity (authenticationstateprovider)",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ios",
|
|
"name": "ios",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "jwt",
|
|
"name": "jwt",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_knowledge_service_graph_summary",
|
|
"name": "knowledge (knowledge service, graph, summary)",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgegraph_knowledgecoordinator",
|
|
"name": "knowledgegraph / knowledgecoordinator",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgepacket",
|
|
"name": "knowledgepacket",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "localepubmetadata",
|
|
"name": "localepubmetadata",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "maccatalyst",
|
|
"name": "maccatalyst",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "maui",
|
|
"name": "maui",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "maui_razor_components",
|
|
"name": "maui razor components",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/_Imports.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/_Imports.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "mobile",
|
|
"name": "mobile",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "mobile_client_ui",
|
|
"name": "mobile client ui",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/NexusReader.Maui.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/NexusReader.Maui.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_identity",
|
|
"name": "nexususer (identity)",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "platform_specific_infrastructure",
|
|
"name": "platform specific infrastructure",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/NexusReader.Maui.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/NexusReader.Maui.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "platform_specific_native_storage_bridge",
|
|
"name": "platform specific native storage bridge",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "preferences_based_persistence",
|
|
"name": "preferences based persistence",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "preferences_based_storage",
|
|
"name": "preferences based storage",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_state",
|
|
"name": "quiz state",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_navigation",
|
|
"name": "reader navigation",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readerpage",
|
|
"name": "readerpage",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync_broadcast",
|
|
"name": "real time sync/broadcast",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "relevantcontext",
|
|
"name": "relevantcontext",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "result_wrapping_for_error_handling",
|
|
"name": "result wrapping for error handling",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_client_storage",
|
|
"name": "secure client storage",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_storage",
|
|
"name": "secure storage",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "securestorage_encrypted_storage",
|
|
"name": "securestorage (encrypted storage)",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticsearch",
|
|
"name": "semanticsearch",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "shared_ui",
|
|
"name": "shared ui",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscriptionplan",
|
|
"name": "subscriptionplan",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "sync",
|
|
"name": "sync",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "theme_focus_mode",
|
|
"name": "theme & focus mode",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token_refresh",
|
|
"name": "token refresh",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ui_shared",
|
|
"name": "ui shared",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/_Imports.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/_Imports.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vibration",
|
|
"name": "vibration",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "windows",
|
|
"name": "windows",
|
|
"description": "MAUI Mobile Host: App wiring and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_maui_app_startup_flow",
|
|
"name": "MAUI App Startup Flow",
|
|
"description": "MAUI App Startup Flow coordinates 5 business-relevant steps beginning at NexusReader.Maui/MauiProgram.cs.",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_maui_app_startup_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_native_storage_access_flow",
|
|
"name": "Native Storage Access Flow",
|
|
"description": "Native Storage Access Flow coordinates 3 business-relevant steps beginning at INativeStorageService (injected into consumers).",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"INativeStorageService (injected into consumers)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_native_storage_access_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"INativeStorageService (injected into consumers)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_platform_vibration_device_context_flow",
|
|
"name": "Platform Vibration / Device Context Flow",
|
|
"description": "Platform Vibration / Device Context Flow coordinates 3 business-relevant steps beginning at IPlatformService (injected into UI/services).",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"IPlatformService (injected into UI/services)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_platform_vibration_device_context_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"IPlatformService (injected into UI/services)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_mobile_api_http_flow",
|
|
"name": "Mobile -> API HTTP Flow",
|
|
"description": "Mobile -> API HTTP Flow coordinates 3 business-relevant steps beginning at HttpClient configured in NexusReader.Maui/MauiProgram.cs.",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"HttpClient configured in NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_mobile_api_http_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"HttpClient configured in NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) coordinates 8 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_program_top_level"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ensure_database_initialized"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_handle_subscription_success"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_maui_app_startup_flow",
|
|
"name": "MAUI App Startup Flow",
|
|
"description": "MAUI App Startup Flow starts at NexusReader.Maui/MauiProgram.cs and follows 4 grounded steps: Enter Create Maui App -> Returns result -> Call Add Application -> Call Dependency Injection.",
|
|
"capabilityId": "capability_maui_app_startup_flow",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_entry",
|
|
"label": "Enter Create Maui App",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_createmauiapp_return_57_0",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_nexusreader_application_addapplication_51",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_nexusreader_application_dependencyinjection_assembly_54",
|
|
"label": "Call Dependency Injection",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "low",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_native_storage_access_flow",
|
|
"name": "Native Storage Access Flow",
|
|
"description": "Native Storage Access Flow starts at INativeStorageService (injected into consumers) and follows 3 grounded steps: Application code requests INative Storage Service via DI -> Maui Storage Service (Infrastructure.Mobile or Nexus Reader -> Results/exceptions are mapped to Fluent Results.",
|
|
"capabilityId": "capability_native_storage_access_flow",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"INativeStorageService (injected into consumers)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "native_storage_access_flow_1",
|
|
"label": "Application code requests INative Storage Service via DI",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"INativeStorageService (injected into consumers)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "native_storage_access_flow_2",
|
|
"label": "Maui Storage Service (Infrastructure.Mobile or Nexus Reader",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"INativeStorageService (injected into consumers)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "native_storage_access_flow_3",
|
|
"label": "Results/exceptions are mapped to Fluent Results",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"INativeStorageService (injected into consumers)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.875,
|
|
"evidencePaths": [
|
|
"INativeStorageService (injected into consumers)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "medium",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_platform_vibration_device_context_flow",
|
|
"name": "Platform Vibration / Device Context Flow",
|
|
"description": "Platform Vibration / Device Context Flow starts at IPlatformService (injected into UI/services) and follows 3 grounded steps: UI or service calls IPlatform Service -> Maui Platform Service translates calls to MAUI Device Info/Device Display/Haptic Feedback -> Responses mapped to application enums and returned as Fluent Results.",
|
|
"capabilityId": "capability_platform_vibration_device_context_flow",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"IPlatformService (injected into UI/services)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "platform_vibration_device_context_flow_1",
|
|
"label": "UI or service calls IPlatform Service",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"IPlatformService (injected into UI/services)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "platform_vibration_device_context_flow_2",
|
|
"label": "Maui Platform Service translates calls to MAUI Device Info/Device Display/Haptic Feedback",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"IPlatformService (injected into UI/services)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "platform_vibration_device_context_flow_3",
|
|
"label": "Responses mapped to application enums and returned as Fluent Results",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"IPlatformService (injected into UI/services)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.875,
|
|
"evidencePaths": [
|
|
"IPlatformService (injected into UI/services)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "medium",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_mobile_api_http_flow",
|
|
"name": "Mobile -> API HTTP Flow",
|
|
"description": "Mobile -> API HTTP Flow starts at HttpClient configured in NexusReader.Maui/MauiProgram.cs and follows 3 grounded steps: Maui Program configures Http Client with Base Address http://10.0.2 -> Application or UI issues HTTP requests via injected Http Client -> Requests reach development API host (emulator host routing).",
|
|
"capabilityId": "capability_mobile_api_http_flow",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"HttpClient configured in NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "mobile_api_http_flow_1",
|
|
"label": "Maui Program configures Http Client with Base Address http://10.0.2",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"HttpClient configured in NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "mobile_api_http_flow_2",
|
|
"label": "Application or UI issues HTTP requests via injected Http Client",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"HttpClient configured in NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "mobile_api_http_flow_3",
|
|
"label": "Requests reach development API host (emulator host routing)",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"HttpClient configured in NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.855,
|
|
"evidencePaths": [
|
|
"HttpClient configured in NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "medium",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_program_top_level",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_ensure_database_initialized",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_handle_subscription_success",
|
|
"domainIds": [
|
|
"android",
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"device",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"haptics",
|
|
"identity_authenticationstateprovider",
|
|
"ios",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"maccatalyst",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"nexususer_identity",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_persistence",
|
|
"preferences_based_storage",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"result_wrapping_for_error_handling",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"securestorage_encrypted_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"ui_shared",
|
|
"vibration",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "maui_mobile_md",
|
|
"summaryCount": 20,
|
|
"dataFlowCount": 7,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 1,
|
|
"chunkingIssueCodes": [],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "low_confidence_flow_flow_maui_app_startup_flow",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_startup_flow",
|
|
"message": "Business flow MAUI App Startup Flow remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_ensure_database_initialized",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ensure_database_initialized",
|
|
"message": "Business flow Ensure Database Initialized is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": []
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"rank": 1,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Ensure Database Initialized combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"rank": 2,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Handle Subscription Success combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"rank": 3,
|
|
"score": 0.873,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.85,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Program (top level) combines business value 0.95, evidence strength 0.85, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_maui_app_startup_flow",
|
|
"name": "MAUI App Startup Flow",
|
|
"rank": 4,
|
|
"score": 0.683,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.76,
|
|
"architectureCoverage": 0.667,
|
|
"executionTruth": 0.37,
|
|
"userComprehension": 0.66
|
|
},
|
|
"reason": "Ranked because MAUI App Startup Flow combines business value 0.95, evidence strength 0.76, architecture coverage 0.67, execution truth 0.37, and comprehension 0.66 for a total score of 0.68.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"flowId": "flow_native_storage_access_flow",
|
|
"name": "Native Storage Access Flow",
|
|
"rank": 5,
|
|
"score": 0.671,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.875,
|
|
"evidenceStrength": 0.88,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.36,
|
|
"userComprehension": 0.34
|
|
},
|
|
"reason": "Ranked because Native Storage Access Flow combines business value 0.88, evidence strength 0.88, architecture coverage 0.75, execution truth 0.36, and comprehension 0.34 for a total score of 0.67.",
|
|
"evidencePaths": [
|
|
"INativeStorageService (injected into consumers)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "medium"
|
|
},
|
|
{
|
|
"flowId": "flow_platform_vibration_device_context_flow",
|
|
"name": "Platform Vibration / Device Context Flow",
|
|
"rank": 6,
|
|
"score": 0.671,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.875,
|
|
"evidenceStrength": 0.88,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.36,
|
|
"userComprehension": 0.34
|
|
},
|
|
"reason": "Ranked because Platform Vibration / Device Context Flow combines business value 0.88, evidence strength 0.88, architecture coverage 0.75, execution truth 0.36, and comprehension 0.34 for a total score of 0.67.",
|
|
"evidencePaths": [
|
|
"IPlatformService (injected into UI/services)",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "medium"
|
|
},
|
|
{
|
|
"flowId": "flow_mobile_api_http_flow",
|
|
"name": "Mobile -> API HTTP Flow",
|
|
"rank": 7,
|
|
"score": 0.591,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.855,
|
|
"evidenceStrength": 0.88,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.06,
|
|
"userComprehension": 0.34
|
|
},
|
|
"reason": "Ranked because Mobile -> API HTTP Flow combines business value 0.85, evidence strength 0.88, architecture coverage 0.75, execution truth 0.06, and comprehension 0.34 for a total score of 0.59.",
|
|
"evidencePaths": [
|
|
"HttpClient configured in NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure.Mobile/Services/MauiPlatformService.cs"
|
|
],
|
|
"confidence": "medium"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "warn",
|
|
"coverage": {
|
|
"totalDomains": 53,
|
|
"coveredDomains": 53,
|
|
"totalCapabilities": 7,
|
|
"coveredCapabilities": 7,
|
|
"totalFlows": 7,
|
|
"coveredFlows": 7
|
|
},
|
|
"issueCount": 1,
|
|
"issues": [
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "maui-mobile.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_startup_flow",
|
|
"message": "Business flow MAUI App Startup Flow is low confidence.",
|
|
"evidenceCount": 5,
|
|
"confidence": "low"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"documentFilename": "overview.md",
|
|
"documentTitle": "Project Overview and Architecture",
|
|
"relativeOutputPath": "collections/overview.md",
|
|
"collectionKind": "collections",
|
|
"publicationTier": "primary",
|
|
"businessModel": {
|
|
"documentFilename": "overview.md",
|
|
"documentTitle": "Project Overview and Architecture",
|
|
"summary": "Project Overview and Architecture centers on account, addeddate, ai and currently highlights WASM client startup and DI validation as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "account",
|
|
"name": "account",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Settings.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Settings.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "addeddate",
|
|
"name": "addeddate",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai",
|
|
"name": "ai",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_chat_embeddings",
|
|
"name": "ai (chat/embeddings)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_action",
|
|
"name": "ai action",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_assistant_sidebar_knowledge_quiz_components",
|
|
"name": "ai assistant sidebar (knowledge/quiz components)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/ReaderLayout.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/ReaderLayout.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_assisted_summarization",
|
|
"name": "ai assisted summarization",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/SelectionAiPanel.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/SelectionAiPanel.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_configuration",
|
|
"name": "ai configuration",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_ingestion_knowledge_units",
|
|
"name": "ai ingestion / knowledge units",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/Ebook.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/Ebook.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_token_limit",
|
|
"name": "ai token limit",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_token_limits",
|
|
"name": "ai token limits",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/SubscriptionPlan.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/SubscriptionPlan.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_token_usage_limits",
|
|
"name": "ai token usage / limits",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens",
|
|
"name": "ai tokens",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens_aitokensused_aitokenlimit",
|
|
"name": "ai tokens (aitokensused, aitokenlimit)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens_token_limits",
|
|
"name": "ai tokens / token limits",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_verification",
|
|
"name": "ai verification",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_knowledge",
|
|
"name": "ai/knowledge",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_knowledge_microsoft_extensions_ai",
|
|
"name": "ai/knowledge (microsoft.extensions.ai)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_modeling",
|
|
"name": "ai/modeling",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "aitoken_accounting",
|
|
"name": "aitoken accounting",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "aitokenlimit",
|
|
"name": "aitokenlimit",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "aitokens",
|
|
"name": "aitokens",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/NexusUser.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/NexusUser.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "android",
|
|
"name": "android",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "answer",
|
|
"name": "answer",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommand.cs",
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommand.cs",
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "answer_submission",
|
|
"name": "answer/submission",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/KnowledgeCheck.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/KnowledgeCheck.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "answering",
|
|
"name": "answering",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "application_health_readiness",
|
|
"name": "application health / readiness",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "application_layer_integration",
|
|
"name": "application layer integration",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "asp_net_identity",
|
|
"name": "asp.net identity",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "asp_net_identity_roles_claims_tokens_logins",
|
|
"name": "asp.net identity (roles, claims, tokens, logins)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "aspnet_identity_roles_users_claims",
|
|
"name": "aspnet identity (roles/users/claims)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "auth",
|
|
"name": "auth",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Constants/StorageKeys.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Constants/StorageKeys.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication",
|
|
"name": "authentication",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IIdentityService.cs",
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor",
|
|
"NexusReader.UI.Shared/_Imports.razor",
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IIdentityService.cs",
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor",
|
|
"NexusReader.UI.Shared/_Imports.razor",
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication_authorization_blazor_auth_components",
|
|
"name": "authentication / authorization (blazor auth components)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/NexusReader.UI.Shared.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/NexusReader.UI.Shared.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication_claims",
|
|
"name": "authentication / claims",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication_state_notification",
|
|
"name": "authentication state notification",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IdentityService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IdentityService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication_token_access_refresh",
|
|
"name": "authentication token (access/refresh)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IdentityService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IdentityService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication_identity",
|
|
"name": "authentication/identity",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj",
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj",
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj",
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj",
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "author",
|
|
"name": "author",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Persistence/IEbookRepository.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Domain/Entities/Author.cs",
|
|
"NexusReader.Domain/Entities/Ebook.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Persistence/IEbookRepository.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Infrastructure/Persistence/EbookRepository.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Domain/Entities/Author.cs",
|
|
"NexusReader.Domain/Entities/Ebook.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authorization",
|
|
"name": "authorization",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/_Imports.razor",
|
|
"NexusReader.UI.Shared/Routes.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/_Imports.razor",
|
|
"NexusReader.UI.Shared/Routes.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authorization_prouser_policy",
|
|
"name": "authorization (prouser policy)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authorization_policy",
|
|
"name": "authorization policy",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authorization_policy",
|
|
"name": "authorization/policy",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "background_jobs_hangfire",
|
|
"name": "background jobs (hangfire)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "background_processing",
|
|
"name": "background processing",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "billing",
|
|
"name": "billing",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBillingService.cs",
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs",
|
|
"NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBillingService.cs",
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs",
|
|
"NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "billing_stripe_integration",
|
|
"name": "billing/stripe integration",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/SubscriptionPlan.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/SubscriptionPlan.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "blazor_component_composition",
|
|
"name": "blazor component composition",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Components/_Imports.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Components/_Imports.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "blazor_webassembly_hosting_server_client",
|
|
"name": "blazor webassembly hosting (server + client)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "block",
|
|
"name": "block",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/ReaderInteractionService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/ReaderInteractionService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "block_node",
|
|
"name": "block / node",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "block_textsegmentblock",
|
|
"name": "block / textsegmentblock",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "block_scrolling_highlighting",
|
|
"name": "block scrolling/highlighting",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IReaderInteractionService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IReaderInteractionService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "book",
|
|
"name": "book",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/CurrentReadingWidget.razor",
|
|
"NexusReader.UI.Shared/Components/Organisms/BookIngestionModal.razor",
|
|
"NexusReader.UI.Shared/Pages/Library.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/CurrentReadingWidget.razor",
|
|
"NexusReader.UI.Shared/Components/Organisms/BookIngestionModal.razor",
|
|
"NexusReader.UI.Shared/Pages/Library.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "book_ebook_file",
|
|
"name": "book (ebook file)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "change_notification",
|
|
"name": "change notification",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IThemeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IThemeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter",
|
|
"name": "chapter",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
|
|
"NexusReader.Application/Abstractions/Services/IEpubReader.cs",
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs",
|
|
"NexusReader.UI.Shared/Services/IReaderNavigationService.cs",
|
|
"NexusReader.UI.Shared/Services/ReaderNavigationService.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderFooter.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs",
|
|
"NexusReader.Application/Abstractions/Services/IEpubReader.cs",
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs",
|
|
"NexusReader.UI.Shared/Services/IReaderNavigationService.cs",
|
|
"NexusReader.UI.Shared/Services/ReaderNavigationService.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderFooter.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_readerpage",
|
|
"name": "chapter / readerpage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_index",
|
|
"name": "chapter index",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_retrieval",
|
|
"name": "chapter retrieval",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_readingorder",
|
|
"name": "chapter/readingorder",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "citation",
|
|
"name": "citation",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs",
|
|
"NexusReader.UI.Shared/Pages/Intelligence.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs",
|
|
"NexusReader.UI.Shared/Pages/Intelligence.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "client_wasm",
|
|
"name": "client (wasm)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "command",
|
|
"name": "command",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "configuration_json_env_file_support",
|
|
"name": "configuration (json/env file support)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "configuration_preferences",
|
|
"name": "configuration/preferences",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/INativeStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/INativeStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "connection_session",
|
|
"name": "connection/session",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "content_hashing_cache_key",
|
|
"name": "content hashing (cache key)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "content_normalization",
|
|
"name": "content normalization",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Helpers/ContentHasher.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Helpers/ContentHasher.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "contentblock",
|
|
"name": "contentblock",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"name": "contentblock (textsegmentblock, aiactiontriggerblock)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "contenthash",
|
|
"name": "contenthash",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "context_snippet",
|
|
"name": "context snippet",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "contextblock_contextblockid",
|
|
"name": "contextblock (contextblockid)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/AiAssistantBubble.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/AiAssistantBubble.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "cookie_based_sign_in",
|
|
"name": "cookie based sign in",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "cosinedistance",
|
|
"name": "cosinedistance",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "cover",
|
|
"name": "cover",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBookStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBookStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "cover_cover_image",
|
|
"name": "cover (cover image)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "coverimage",
|
|
"name": "coverimage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "createdat",
|
|
"name": "createdat",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "customer",
|
|
"name": "customer",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBillingService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBillingService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "database_connection",
|
|
"name": "database connection",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "database_providers_sqlite_postgresql",
|
|
"name": "database providers (sqlite, postgresql)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "debugging_inspect_uri",
|
|
"name": "debugging/inspect uri",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Properties/launchSettings.json"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Properties/launchSettings.json"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "description_column",
|
|
"name": "description column",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "deterministic_hashing",
|
|
"name": "deterministic hashing",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Helpers/ContentHasher.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Helpers/ContentHasher.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "development_environment",
|
|
"name": "development environment",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Properties/launchSettings.json"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Properties/launchSettings.json"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "device",
|
|
"name": "device",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "device_context_phone_tablet_desktop",
|
|
"name": "device context (phone/tablet/desktop)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/ReaderLayout.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/ReaderLayout.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "device_sync_broadcast",
|
|
"name": "device sync / broadcast",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicecontext",
|
|
"name": "devicecontext",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicetype",
|
|
"name": "devicetype",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "displayorientation",
|
|
"name": "displayorientation",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IPlatformService.cs",
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IPlatformService.cs",
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "domain_project_boundary_for_nexusreader",
|
|
"name": "domain project boundary for nexusreader",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/NexusReader.Domain.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/NexusReader.Domain.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "e_book_processing_versone_epub",
|
|
"name": "e book processing (versone.epub)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook",
|
|
"name": "ebook",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Persistence/IEbookRepository.cs",
|
|
"NexusReader.Application/Abstractions/Services/IBookStorageService.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs",
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Persistence/IEbookRepository.cs",
|
|
"NexusReader.Application/Abstractions/Services/IBookStorageService.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs",
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs",
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_chapter",
|
|
"name": "ebook / chapter",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_epub_ingestion",
|
|
"name": "ebook / epub ingestion",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_epub_processing",
|
|
"name": "ebook / epub processing",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_processing",
|
|
"name": "ebook processing",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebookid",
|
|
"name": "ebookid",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebooks",
|
|
"name": "ebooks",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebooks_lastreadbook",
|
|
"name": "ebooks / lastreadbook",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebooks_table",
|
|
"name": "ebooks table",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding",
|
|
"name": "embedding",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding_vector",
|
|
"name": "embedding vector",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embeddings",
|
|
"name": "embeddings",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "epub",
|
|
"name": "epub",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Application/Abstractions/Services/IEpubMetadataExtractor.cs",
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs",
|
|
"NexusReader.Infrastructure/Services/EpubMetadataExtractor.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Application/Abstractions/Services/IEpubMetadataExtractor.cs",
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs",
|
|
"NexusReader.Infrastructure/Services/EpubMetadataExtractor.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "epub_metadata",
|
|
"name": "epub metadata",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/BookIngestionModal.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/BookIngestionModal.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "error_handling_recovery",
|
|
"name": "error handling / recovery",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Routes.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Routes.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "external_google_login",
|
|
"name": "external (google) login",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "file_storage",
|
|
"name": "file storage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBookStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBookStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "focus_mode_ui_state",
|
|
"name": "focus mode (ui state)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/ReaderLayout.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/ReaderLayout.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "focusmode",
|
|
"name": "focusmode",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/FocusModeService.cs",
|
|
"NexusReader.UI.Shared/Services/IFocusModeService.cs",
|
|
"NexusReader.UI.Shared/Components/Molecules/IntelligenceToolbar.razor",
|
|
"NexusReader.UI.Shared/Components/Organisms/KnowledgeGraph.razor",
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/FocusModeService.cs",
|
|
"NexusReader.UI.Shared/Services/IFocusModeService.cs",
|
|
"NexusReader.UI.Shared/Components/Molecules/IntelligenceToolbar.razor",
|
|
"NexusReader.UI.Shared/Components/Organisms/KnowledgeGraph.razor",
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graph",
|
|
"name": "graph",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs",
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs",
|
|
"NexusReader.UI.Shared/Services/KnowledgeGraphService.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/KnowledgeGraph.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs",
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs",
|
|
"NexusReader.UI.Shared/Services/KnowledgeGraphService.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/KnowledgeGraph.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graph_db_neo4j",
|
|
"name": "graph db (neo4j)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graph_extraction",
|
|
"name": "graph extraction",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/PromptRegistry.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/PromptRegistry.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graph_relationships",
|
|
"name": "graph relationships",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graphdata",
|
|
"name": "graphdata",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQueryHandler.cs",
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQueryHandler.cs",
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graphlink",
|
|
"name": "graphlink",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "graphnode",
|
|
"name": "graphnode",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Common/AppJsonContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "grounded_ai_response",
|
|
"name": "grounded ai response",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedness",
|
|
"name": "groundedness",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedness_score_rationale",
|
|
"name": "groundedness (score, rationale)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/GroundednessBadge.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/GroundednessBadge.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedresponse",
|
|
"name": "groundedresponse",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs",
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs",
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedresponse_answer_citations",
|
|
"name": "groundedresponse (answer + citations)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Intelligence.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Intelligence.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "grounding_fact_checking",
|
|
"name": "grounding/fact checking",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity",
|
|
"name": "identity",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_authenticationstateprovider",
|
|
"name": "identity (authenticationstateprovider)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_roles_claims_logins",
|
|
"name": "identity roles/claims/logins",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_logout",
|
|
"name": "identity/logout",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/IntelligenceToolbar.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/IntelligenceToolbar.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "in_process_messaging_mediator_patterns_mediatr",
|
|
"name": "in process messaging/mediator patterns (mediatr)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/NexusReader.UI.Shared.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/NexusReader.UI.Shared.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ingestion",
|
|
"name": "ingestion",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ingestion_progress",
|
|
"name": "ingestion progress",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ingestion_preview",
|
|
"name": "ingestion/preview",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/EpubMetadataExtractor.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubMetadataExtractor.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "initializationstatus",
|
|
"name": "initializationstatus",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQuery.cs",
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQuery.cs",
|
|
"NexusReader.Application/Queries/System/GetInitializationStatusQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ios",
|
|
"name": "ios",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "isunlimitedtokens",
|
|
"name": "isunlimitedtokens",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "js_interop",
|
|
"name": "js interop",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Services/NativeStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/NativeStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "jwt",
|
|
"name": "jwt",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "key_value_storage",
|
|
"name": "key/value storage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/INativeStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/INativeStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "keyconcept",
|
|
"name": "keyconcept",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge",
|
|
"name": "knowledge",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_knowledge_service_graph_summary",
|
|
"name": "knowledge (knowledge service, graph, summary)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_extraction",
|
|
"name": "knowledge extraction",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/PromptRegistry.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/PromptRegistry.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_graph",
|
|
"name": "knowledge graph",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQueryHandler.cs",
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQueryHandler.cs",
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_graph_expansion",
|
|
"name": "knowledge graph expansion",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_integration",
|
|
"name": "knowledge integration",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Dashboard.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Dashboard.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_retrieval",
|
|
"name": "knowledge retrieval",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs",
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs",
|
|
"NexusReader.Application/DTOs/AI/RelevantContext.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_unit_vector_embeddings",
|
|
"name": "knowledge unit (vector embeddings)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_unit_link_graph_edges",
|
|
"name": "knowledge unit link (graph edges)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_unit_segmentation",
|
|
"name": "knowledge unit segmentation",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/PromptRegistry.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/PromptRegistry.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_ai_cache",
|
|
"name": "knowledge/ai cache",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/IntelligenceToolbar.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/IntelligenceToolbar.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgegraph",
|
|
"name": "knowledgegraph",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IKnowledgeGraphService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IKnowledgeGraphService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgegraph_knowledgecoordinator",
|
|
"name": "knowledgegraph / knowledgecoordinator",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgelink",
|
|
"name": "knowledgelink",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgepacket",
|
|
"name": "knowledgepacket",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.UI.Shared/Components/Molecules/AiAssistantBubble.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.UI.Shared/Components/Molecules/AiAssistantBubble.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeservice",
|
|
"name": "knowledgeservice",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/AI/VerifyGroundednessCommand.cs",
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunit",
|
|
"name": "knowledgeunit",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnit.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnitLink.cs",
|
|
"NexusReader.Domain/Enums/KnowledgeUnitType.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnit.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnitLink.cs",
|
|
"NexusReader.Domain/Enums/KnowledgeUnitType.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunit_vector_embeddings",
|
|
"name": "knowledgeunit (vector embeddings)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunit_vectorized_content",
|
|
"name": "knowledgeunit (vectorized content)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunitlink",
|
|
"name": "knowledgeunitlink",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnit.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnitLink.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnit.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnitLink.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgeunitlink_relations",
|
|
"name": "knowledgeunitlink (relations)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "lastreadbook_scope_selector",
|
|
"name": "lastreadbook (scope selector)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Intelligence.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Intelligence.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "lastreadbookdto",
|
|
"name": "lastreadbookdto",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "lastreaddate",
|
|
"name": "lastreaddate",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "library",
|
|
"name": "library",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.UI.Shared/Pages/Library.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Commands/Library/IngestEbookRequest.cs",
|
|
"NexusReader.UI.Shared/Pages/Library.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "library_ingestion",
|
|
"name": "library ingestion",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/BookIngestionModal.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/BookIngestionModal.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "library_question",
|
|
"name": "library question",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/AskLibraryQuestionQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "link",
|
|
"name": "link",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "llm_model_selection",
|
|
"name": "llm model selection",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "loading_state",
|
|
"name": "loading state",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeGraphService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeGraphService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "local_hosting",
|
|
"name": "local hosting",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Properties/launchSettings.json"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Properties/launchSettings.json"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "localepubmetadata",
|
|
"name": "localepubmetadata",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "localstorage",
|
|
"name": "localstorage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/WebStorageService.cs",
|
|
"NexusReader.Web/Services/NativeStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/WebStorageService.cs",
|
|
"NexusReader.Web/Services/NativeStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "logging",
|
|
"name": "logging",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/_Imports.razor",
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/_Imports.razor",
|
|
"NexusReader.Web/appsettings.json"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "logging_abstraction",
|
|
"name": "logging abstraction",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/NexusReader.UI.Shared.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/NexusReader.UI.Shared.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "logout",
|
|
"name": "logout",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "maccatalyst",
|
|
"name": "maccatalyst",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "mapping_dtos",
|
|
"name": "mapping/dtos",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "maui",
|
|
"name": "maui",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "maui_razor_components",
|
|
"name": "maui razor components",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/_Imports.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/_Imports.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "metadata",
|
|
"name": "metadata",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IEpubMetadataExtractor.cs",
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs",
|
|
"NexusReader.Infrastructure/Services/EpubMetadataExtractor.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IEpubMetadataExtractor.cs",
|
|
"NexusReader.Application/Queries/Reader/LocalEpubMetadata.cs",
|
|
"NexusReader.Infrastructure/Services/EpubMetadataExtractor.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "mobile",
|
|
"name": "mobile",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "mobile_client_ui",
|
|
"name": "mobile client ui",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/NexusReader.Maui.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/NexusReader.Maui.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "model_and_prompt_versioning",
|
|
"name": "model and prompt versioning",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "native_storage",
|
|
"name": "native storage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/WebStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/WebStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "navigation",
|
|
"name": "navigation",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/IntelligenceToolbar.razor",
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderFooter.razor",
|
|
"NexusReader.UI.Shared/Pages/NotFound.razor",
|
|
"NexusReader.UI.Shared/Routes.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/IntelligenceToolbar.razor",
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderFooter.razor",
|
|
"NexusReader.UI.Shared/Pages/NotFound.razor",
|
|
"NexusReader.UI.Shared/Routes.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "navigation_book_chapter_selection",
|
|
"name": "navigation (book/chapter selection)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer",
|
|
"name": "nexususer",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Domain/Entities/Ebook.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs",
|
|
"NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Domain/Entities/Ebook.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_admin",
|
|
"name": "nexususer (admin)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Persistence/DbInitializer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Persistence/DbInitializer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_application_user",
|
|
"name": "nexususer (application user)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_identity",
|
|
"name": "nexususer (identity)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "node",
|
|
"name": "node",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs",
|
|
"NexusReader.UI.Shared/Services/IKnowledgeGraphService.cs",
|
|
"NexusReader.UI.Shared/Services/KnowledgeGraphService.cs",
|
|
"NexusReader.UI.Shared/Services/ReaderInteractionService.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/KnowledgeGraph.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Graph/GraphViewModels.cs",
|
|
"NexusReader.UI.Shared/Services/IKnowledgeGraphService.cs",
|
|
"NexusReader.UI.Shared/Services/KnowledgeGraphService.cs",
|
|
"NexusReader.UI.Shared/Services/ReaderInteractionService.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/KnowledgeGraph.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "node_selection",
|
|
"name": "node selection",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IReaderInteractionService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IReaderInteractionService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "node_selection_interaction",
|
|
"name": "node selection interaction",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/KnowledgeGraph.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/KnowledgeGraph.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "options",
|
|
"name": "options",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "page",
|
|
"name": "page",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "path_url",
|
|
"name": "path/url",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBookStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBookStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "payments",
|
|
"name": "payments",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "payments_stripe",
|
|
"name": "payments (stripe)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "persistence",
|
|
"name": "persistence",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "persistence_ef_core",
|
|
"name": "persistence/ef core",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "plan",
|
|
"name": "plan",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Constants/PlanConstants.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Constants/PlanConstants.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "platform_specific_infrastructure",
|
|
"name": "platform specific infrastructure",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/NexusReader.Maui.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/NexusReader.Maui.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "platform_specific_native_storage_bridge",
|
|
"name": "platform specific native storage bridge",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "preferences_based_storage",
|
|
"name": "preferences based storage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "prerendering_safe_storage_access",
|
|
"name": "prerendering safe storage access",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Services/NativeStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/NativeStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "pricing",
|
|
"name": "pricing",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/SubscriptionPlan.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/SubscriptionPlan.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "pro_subscription",
|
|
"name": "pro subscription",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "productid",
|
|
"name": "productid",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/StripeSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/StripeSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "profile",
|
|
"name": "profile",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "progress",
|
|
"name": "progress",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs",
|
|
"NexusReader.UI.Shared/Services/ISyncService.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/CurrentReadingWidget.razor",
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderFooter.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs",
|
|
"NexusReader.UI.Shared/Services/ISyncService.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/CurrentReadingWidget.razor",
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderFooter.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "progress_lastreadbook",
|
|
"name": "progress/lastreadbook",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Library.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Library.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "provenance",
|
|
"name": "provenance",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/GroundedResponseDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "query",
|
|
"name": "query",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs",
|
|
"NexusReader.Application/Abstractions/Messaging/IQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs",
|
|
"NexusReader.Application/Abstractions/Messaging/IQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "question",
|
|
"name": "question",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz",
|
|
"name": "quiz",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommand.cs",
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs",
|
|
"NexusReader.UI.Shared/Services/IQuizStateService.cs",
|
|
"NexusReader.UI.Shared/Services/QuizStateService.cs",
|
|
"NexusReader.UI.Shared/Components/Molecules/AiAssistantBubble.razor",
|
|
"NexusReader.UI.Shared/Components/Molecules/KnowledgeCheck.razor",
|
|
"NexusReader.UI.Shared/Pages/Dashboard.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommand.cs",
|
|
"NexusReader.Application/Commands/Quiz/SubmitAnswerCommandHandler.cs",
|
|
"NexusReader.Application/Queries/Quiz/QuizViewModels.cs",
|
|
"NexusReader.UI.Shared/Services/IQuizStateService.cs",
|
|
"NexusReader.UI.Shared/Services/QuizStateService.cs",
|
|
"NexusReader.UI.Shared/Components/Molecules/AiAssistantBubble.razor",
|
|
"NexusReader.UI.Shared/Components/Molecules/KnowledgeCheck.razor",
|
|
"NexusReader.UI.Shared/Pages/Dashboard.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_active_quiz_block",
|
|
"name": "quiz (active quiz block)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_quizquestion",
|
|
"name": "quiz / quizquestion",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_availability_updates",
|
|
"name": "quiz availability/updates",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/ReaderLayout.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/ReaderLayout.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_generation",
|
|
"name": "quiz generation",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/SelectionAiPanel.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/SelectionAiPanel.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_results",
|
|
"name": "quiz results",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_state",
|
|
"name": "quiz state",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quizquestion",
|
|
"name": "quizquestion",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs",
|
|
"NexusReader.UI.Shared/Components/Molecules/KnowledgeCheck.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/KnowledgePacket.cs",
|
|
"NexusReader.UI.Shared/Components/Molecules/KnowledgeCheck.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quizresult",
|
|
"name": "quizresult",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/QuizResult.cs",
|
|
"NexusReader.Domain/Entities/NexusUser.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/QuizResult.cs",
|
|
"NexusReader.Domain/Entities/NexusUser.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513185108_MakeKnowledgeUnitEbookIdNullable.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513183726_FixKnowledgeUnitEbookId.Designer.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260514184243_AddDescriptionToEbook.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quizresults",
|
|
"name": "quizresults",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "rate_size_limits_and_retry_policy",
|
|
"name": "rate/size limits and retry policy",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/AiSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader",
|
|
"name": "reader",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/_Imports.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/_Imports.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_readercanvas",
|
|
"name": "reader / readercanvas",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_navigation",
|
|
"name": "reader navigation",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.UI.Shared/Services/ReaderNavigationService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.UI.Shared/Services/ReaderNavigationService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_navigation_state",
|
|
"name": "reader navigation/state",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IReaderNavigationService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IReaderNavigationService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_session_content",
|
|
"name": "reader session/content",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readerpage",
|
|
"name": "readerpage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Application/Queries/Reader/ViewModels.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readerpage_content_blocks",
|
|
"name": "readerpage (content blocks)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IEpubReader.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IEpubReader.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readerpage_readerpageviewmodel",
|
|
"name": "readerpage / readerpageviewmodel",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reading_lastreadbook",
|
|
"name": "reading (lastreadbook)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Dashboard.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Dashboard.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reading_progress",
|
|
"name": "reading progress",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reading_progress_sync",
|
|
"name": "reading progress sync",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/ReaderCanvas.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readingprogress",
|
|
"name": "readingprogress",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readingsession",
|
|
"name": "readingsession",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/CurrentReadingWidget.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/CurrentReadingWidget.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readingstate",
|
|
"name": "readingstate",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/NexusUser.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/NexusUser.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync",
|
|
"name": "real time sync",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync_broadcast",
|
|
"name": "real time sync/broadcast",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_updates_signalr_client",
|
|
"name": "real time updates (signalr client)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/NexusReader.UI.Shared.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/NexusReader.UI.Shared.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_background_jobs_hangfire",
|
|
"name": "real time/background jobs (hangfire)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reconnect",
|
|
"name": "reconnect",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/ReconnectModal.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/ReconnectModal.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "relationtype",
|
|
"name": "relationtype",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/KnowledgeUnitLink.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/KnowledgeUnitLink.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "relevance_percentage",
|
|
"name": "relevance percentage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/GlobalIntelligencePanel.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/GlobalIntelligencePanel.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "relevantcontext",
|
|
"name": "relevantcontext",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "resilience_and_http_retries",
|
|
"name": "resilience and http retries",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "result",
|
|
"name": "result",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs",
|
|
"NexusReader.Application/Abstractions/Messaging/IQueryHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs",
|
|
"NexusReader.Application/Abstractions/Messaging/IQueryHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "result_tresponse",
|
|
"name": "result<tresponse>",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "retry_countdown",
|
|
"name": "retry countdown",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/ReconnectModal.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/ReconnectModal.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "role",
|
|
"name": "role",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs",
|
|
"NexusReader.Data/Persistence/DbInitializer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs",
|
|
"NexusReader.Data/Persistence/DbInitializer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "roles",
|
|
"name": "roles",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.Application/Constants/StorageKeys.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.Application/Constants/StorageKeys.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "score_percentage",
|
|
"name": "score/percentage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/QuizResult.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/QuizResult.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "search",
|
|
"name": "search",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Atoms/NexusSearchBox.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "search_result",
|
|
"name": "search result",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secrets_config_management_usersecrets",
|
|
"name": "secrets/config management (usersecrets)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/NexusReader.Web.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_alias_no_op",
|
|
"name": "secure alias (no op)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/WebStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/WebStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_client_storage",
|
|
"name": "secure client storage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_storage",
|
|
"name": "secure storage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/INativeStorageService.cs",
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/INativeStorageService.cs",
|
|
"NexusReader.Maui/Services/MauiStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "selection_based_interactions",
|
|
"name": "selection based interactions",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/SelectionAiPanel.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/SelectionAiPanel.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semantic_cache",
|
|
"name": "semantic cache",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semantic_embeddings_and_vector_search",
|
|
"name": "semantic embeddings and vector search",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semantic_knowledge_cache",
|
|
"name": "semantic knowledge cache",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semantic_search",
|
|
"name": "semantic search",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/GlobalIntelligencePanel.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IKnowledgeService.cs",
|
|
"NexusReader.Application/DTOs/AI/SemanticSearchResultDto.cs",
|
|
"NexusReader.UI.Shared/Components/Organisms/GlobalIntelligencePanel.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticknowledgecache",
|
|
"name": "semanticknowledgecache",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs",
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.cs",
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260428185239_IncreaseHashLength.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510151022_NormalizeAuthor.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510161155_AddEbookProgressAndChapter.Designer.cs",
|
|
"NexusReader.Data/Migrations/20260510171941_AddEbookLastChapterIndex.Designer.cs",
|
|
"NexusReader.Data/Migrations/AppDbContextModelSnapshot.cs",
|
|
"NexusReader.Data/Persistence/AppDbContext.cs",
|
|
"NexusReader.Data/Persistence/Migrations/20260513181743_AddEbookReadyFlag.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticknowledgecache_ai_semantic_caching",
|
|
"name": "semanticknowledgecache (ai/semantic caching)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticsearch",
|
|
"name": "semanticsearch",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"name": "semanticsearchresult (snippet, relevancescore, sourcebooktitle)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/GlobalIntelligencePanel.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Organisms/GlobalIntelligencePanel.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "session",
|
|
"name": "session",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IIdentityService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IIdentityService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "session_resume",
|
|
"name": "session resume",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Layout/ReconnectModal.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/ReconnectModal.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "session_cookie_sign_in_orchestration",
|
|
"name": "session/cookie sign in orchestration",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "settings",
|
|
"name": "settings",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Settings.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Settings.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "shared_ui",
|
|
"name": "shared ui",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "shared_ui_imports",
|
|
"name": "shared ui imports",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Components/_Imports.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Components/_Imports.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "stripe",
|
|
"name": "stripe",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Configuration/StripeSettings.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Configuration/StripeSettings.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "stripe_stripeproductid",
|
|
"name": "stripe (stripeproductid)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBillingService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBillingService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "stripeproductid",
|
|
"name": "stripeproductid",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscription",
|
|
"name": "subscription",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBillingService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IBillingService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscription_plan",
|
|
"name": "subscription / plan",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscription_plan",
|
|
"name": "subscription plan",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscriptionplan",
|
|
"name": "subscriptionplan",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Domain/Entities/NexusUser.cs",
|
|
"NexusReader.Domain/Entities/SubscriptionPlan.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/DTOs/User/SubscriptionPlanDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Domain/Entities/NexusUser.cs",
|
|
"NexusReader.Domain/Entities/SubscriptionPlan.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs",
|
|
"NexusReader.Data/Migrations/20260506184227_UpdateSubscriptionPlanIsUnlimitedTokens.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "summarization_quiz_generation",
|
|
"name": "summarization & quiz generation",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/PromptRegistry.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/PromptRegistry.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "sync",
|
|
"name": "sync",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.UI.Shared/Services/ISyncService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.UI.Shared/Services/ISyncService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenant",
|
|
"name": "tenant",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Constants/StorageKeys.cs",
|
|
"NexusReader.Domain/Entities/Ebook.cs",
|
|
"NexusReader.Domain/Entities/QuizResult.cs",
|
|
"NexusReader.Domain/Entities/NexusUser.cs",
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs",
|
|
"NexusReader.Application/Queries/Graph/GetKnowledgeGraphQuery.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Constants/StorageKeys.cs",
|
|
"NexusReader.Domain/Entities/Ebook.cs",
|
|
"NexusReader.Domain/Entities/QuizResult.cs",
|
|
"NexusReader.Domain/Entities/NexusUser.cs",
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenant_user_isolation",
|
|
"name": "tenant / user isolation",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Reader/GetReaderPageQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenant_scoping",
|
|
"name": "tenant scoping",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnit.cs",
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/Library/SearchLibrarySemanticallyQuery.cs",
|
|
"NexusReader.Domain/Entities/KnowledgeUnit.cs",
|
|
"NexusReader.Domain/Entities/SemanticKnowledgeCache.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenant_scoping_tenantid_from_auth_claims",
|
|
"name": "tenant scoping (tenantid from auth claims)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/GroundednessBadge.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Molecules/GroundednessBadge.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenantid",
|
|
"name": "tenantid",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenantid_userid_multitenancy_audit_metadata",
|
|
"name": "tenantid/userid (multitenancy/audit metadata)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenantisolation",
|
|
"name": "tenantisolation",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IEpubReader.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IEpubReader.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "text_selection",
|
|
"name": "text selection",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/ReaderInteractionService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/ReaderInteractionService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "text_selection_coordinates",
|
|
"name": "text selection coordinates",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IReaderInteractionService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IReaderInteractionService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "theme",
|
|
"name": "theme",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IThemeService.cs",
|
|
"NexusReader.UI.Shared/Services/ThemeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IThemeService.cs",
|
|
"NexusReader.UI.Shared/Services/ThemeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "theme_focus_mode",
|
|
"name": "theme & focus mode",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token",
|
|
"name": "token",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IIdentityService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IIdentityService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token_refresh",
|
|
"name": "token refresh",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token_storage",
|
|
"name": "token storage",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Constants/StorageKeys.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Constants/StorageKeys.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "topic",
|
|
"name": "topic",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Domain/Entities/QuizResult.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Domain/Entities/QuizResult.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "typography",
|
|
"name": "typography",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Atoms/NexusTypography.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Atoms/NexusTypography.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ui_feedback_loading_state",
|
|
"name": "ui feedback / loading state",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/NotFound.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/NotFound.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ui_shared",
|
|
"name": "ui shared",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/_Imports.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/_Imports.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ui_state",
|
|
"name": "ui state",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/IFocusModeService.cs",
|
|
"NexusReader.UI.Shared/Services/IThemeService.cs",
|
|
"NexusReader.UI.Shared/Services/ThemeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/IFocusModeService.cs",
|
|
"NexusReader.UI.Shared/Services/IThemeService.cs",
|
|
"NexusReader.UI.Shared/Services/ThemeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ui_icons",
|
|
"name": "ui/icons",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Components/Atoms/NexusIcon.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Components/Atoms/NexusIcon.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user",
|
|
"name": "user",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Abstractions/Services/IIdentityService.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Application/Constants/StorageKeys.cs",
|
|
"NexusReader.Domain/Entities/QuizResult.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Abstractions/Services/IIdentityService.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/DTOs/User/UserProfileDto.cs",
|
|
"NexusReader.Application/Queries/Library/GetMyEbooksQuery.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Application/Queries/User/GetUserProfileQueryHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Application/Constants/StorageKeys.cs",
|
|
"NexusReader.Domain/Entities/QuizResult.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_aspnetusers",
|
|
"name": "user (aspnetusers)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260429080302_AddQuizResults.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_identity",
|
|
"name": "user (identity)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260428184727_InitialPostgres.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_nexususer",
|
|
"name": "user (nexususer)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/Migrations/20260503175906_FinalNormalizedSubscriptionArchitecture.Designer.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_devices",
|
|
"name": "user devices",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_preferences",
|
|
"name": "user preferences",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Settings.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Settings.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_profile_last_read_book",
|
|
"name": "user profile (last read book)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Home.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_registration",
|
|
"name": "user registration",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_roles",
|
|
"name": "user roles",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_sessions_connected_devices",
|
|
"name": "user sessions / connected devices",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_ownership",
|
|
"name": "user/ownership",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Library/IngestEbookCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "userprofile",
|
|
"name": "userprofile",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.UI.Shared/Services/IdentityService.cs",
|
|
"NexusReader.UI.Shared/Pages/Dashboard.razor",
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.UI.Shared/Services/IdentityService.cs",
|
|
"NexusReader.UI.Shared/Pages/Dashboard.razor",
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "userprofiledto",
|
|
"name": "userprofiledto",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Mappings/MappingConfig.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vector_embeddings_storage_pgvector",
|
|
"name": "vector embeddings storage (pgvector)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Data/NexusReader.Data.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vector_search_pgvector",
|
|
"name": "vector search (pgvector)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/NexusReader.Application.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vector_search_embeddings",
|
|
"name": "vector search / embeddings",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/NexusReader.Infrastructure.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vector_store_qdrant",
|
|
"name": "vector store (qdrant)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vibration",
|
|
"name": "vibration",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Services/IPlatformService.cs",
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Services/IPlatformService.cs",
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "web_root_relative_static_asset_paths_uploads_covers",
|
|
"name": "web root relative static asset paths (uploads, covers)",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "windows",
|
|
"name": "windows",
|
|
"description": "Project Overview and Architecture is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure.Mobile/NexusReader.Infrastructure.Mobile.csproj"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_wasm_client_startup_and_di_validation",
|
|
"name": "WASM client startup and DI validation",
|
|
"description": "WASM client startup and DI validation coordinates 4 business-relevant steps beginning at NexusReader.Web.Client/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_wasm_client_startup_and_di_validation"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_maui_app_startup_and_composition",
|
|
"name": "MAUI app startup and composition",
|
|
"description": "MAUI app startup and composition coordinates 4 business-relevant steps beginning at NexusReader.Maui/MauiProgram.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_maui_app_startup_and_composition"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_knowledge_request_server_flow",
|
|
"name": "Knowledge request (server) flow",
|
|
"description": "Knowledge request (server) flow coordinates 5 business-relevant steps beginning at NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_knowledge_request_server_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_reading_progress_sync_signalr_mediatr_broadcaster",
|
|
"name": "Reading progress sync (SignalR -> MediatR -> Broadcaster)",
|
|
"description": "Reading progress sync (SignalR -> MediatR -> Broadcaster) coordinates 4 business-relevant steps beginning at NexusReader.Infrastructure/RealTime/SyncHub.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_reading_progress_sync_signalr_mediatr_broadcaster"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_epub_ingestion_and_knowledge_unit_creation",
|
|
"name": "EPUB ingestion and knowledge-unit creation",
|
|
"description": "EPUB ingestion and knowledge-unit creation coordinates 4 business-relevant steps beginning at NexusReader.Infrastructure/Services/EpubReaderService.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_epub_ingestion_and_knowledge_unit_creation"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ui_driven_knowledge_graph_quiz_flow_client_side_coordinator",
|
|
"name": "UI-driven knowledge graph / quiz flow (client-side coordinator)",
|
|
"description": "UI-driven knowledge graph / quiz flow (client-side coordinator) coordinates 4 business-relevant steps beginning at NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ui_driven_knowledge_graph_quiz_flow_client_side_coordinator"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_auth_profile_sync_and_token_lifecycle",
|
|
"name": "Auth / profile sync and token lifecycle",
|
|
"description": "Auth / profile sync and token lifecycle coordinates 4 business-relevant steps beginning at NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_auth_profile_sync_and_token_lifecycle"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_billing_webhook_and_subscription_reconciliation",
|
|
"name": "Billing webhook and subscription reconciliation",
|
|
"description": "Billing webhook and subscription reconciliation coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_billing_webhook_and_subscription_reconciliation"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) coordinates 5 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_program_top_level"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_add_infrastructure",
|
|
"name": "Add Infrastructure",
|
|
"description": "Add Infrastructure coordinates 7 business-relevant steps beginning at NexusReader.Infrastructure/DependencyInjection.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_add_infrastructure"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ensure_database_initialized"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_wasm_client_startup_and_di_validation",
|
|
"name": "WASM client startup and DI validation",
|
|
"description": "WASM client startup and DI validation starts at NexusReader.Web.Client/Program.cs and follows 8 grounded steps: Enter Program (top level startup) -> Call Throwing Db Context Factory. -> Call Throwing Embedding Generator. -> Call Throwing Book Storage Service. -> ....",
|
|
"capabilityId": "capability_wasm_client_startup_and_di_validation",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_entry",
|
|
"label": "Enter Program (top level startup)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingdbcontextfactory_ctor_49",
|
|
"label": "Call Throwing Db Context Factory.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingembeddinggenerator_ctor_50",
|
|
"label": "Call Throwing Embedding Generator.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingbookstorageservice_ctor_51",
|
|
"label": "Call Throwing Book Storage Service.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingebookrepository_ctor_52",
|
|
"label": "Call Throwing Ebook Repository.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_self_throwingsyncbroadcaster_ctor_53",
|
|
"label": "Call Throwing Sync Broadcaster.",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_nexusreader_application_addapplication_55",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_program_cs_program_top_level_startup_result",
|
|
"label": "Complete Program (top level startup)",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_maui_app_startup_and_composition",
|
|
"name": "MAUI app startup and composition",
|
|
"description": "MAUI app startup and composition starts at NexusReader.Maui/MauiProgram.cs and follows 4 grounded steps: Enter Create Maui App -> Returns result -> Call Add Application -> Call Dependency Injection.",
|
|
"capabilityId": "capability_maui_app_startup_and_composition",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_entry",
|
|
"label": "Enter Create Maui App",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_createmauiapp_return_57_0",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_nexusreader_application_addapplication_51",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_maui_mauiprogram_cs_createmauiapp_nexusreader_application_dependencyinjection_assembly_54",
|
|
"label": "Call Dependency Injection",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.94,
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "low",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_knowledge_request_server_flow",
|
|
"name": "Knowledge request (server) flow",
|
|
"description": "Knowledge request (server) flow starts at NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs and follows 5 grounded steps: API receives knowledge request (Program -> DI resolved Knowledge Service invoked; checks cache/dedup structures -> Queries vector DB/graph and calls LLM/embedding clients with resilience and retry -> Response repaired/validated, content hashed and upserted to Db Context (Semantic Knowledge Cache/Knowledge Unit) -> ....",
|
|
"capabilityId": "capability_knowledge_request_server_flow",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "knowledge_request_server_flow_1",
|
|
"label": "API receives knowledge request (Program",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "knowledge_request_server_flow_2",
|
|
"label": "DI resolved Knowledge Service invoked; checks cache/dedup structures",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "knowledge_request_server_flow_3",
|
|
"label": "Queries vector DB/graph and calls LLM/embedding clients with resilience and retry",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "knowledge_request_server_flow_4",
|
|
"label": "Response repaired/validated, content hashed and upserted to Db Context (Semantic Knowledge Cache/Knowledge Unit)",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "knowledge_request_server_flow_5",
|
|
"label": "Knowledge DTO returned to caller",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_reading_progress_sync_signalr_mediatr_broadcaster",
|
|
"name": "Reading progress sync (SignalR -> MediatR -> Broadcaster)",
|
|
"description": "Reading progress sync (SignalR -> MediatR -> Broadcaster) starts at NexusReader.Infrastructure/RealTime/SyncHub.cs and follows 9 grounded steps: Enter Update Progress -> Reads repository or persistence state -> Evaluates branch condition -> Call Update Reading Progress Command (ctor) -> ....",
|
|
"capabilityId": "capability_reading_progress_sync_signalr_mediatr_broadcaster",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_entry",
|
|
"label": "Enter Update Progress",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_updateprogress_repository_read_21_0",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_updateprogress_branch_22_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_nexusreader_application_commands_sync_updatereadingprogresscommand_cs_updatereadingprogresscommand_ctor_24",
|
|
"label": "Call Update Reading Progress Command (ctor)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_external_call",
|
|
"label": "Context.User?.FindFirst(ClaimTypes.NameIdentifier)?.Value",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_external_call",
|
|
"label": "_mediator.Send(...) (MediatR)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_persistence_read",
|
|
"label": "var userId = Context.User?.FindFirst(ClaimTypes.NameIdentifier)?.Value;",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_persistence_read",
|
|
"label": "await _mediator.Send(new UpdateReadingProgressCommand(pageId, userId, ebookId, progress, chapterTitle, chapterIndex, Context.ConnectionId));",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_result",
|
|
"label": "Complete Update Progress",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_epub_ingestion_and_knowledge_unit_creation",
|
|
"name": "EPUB ingestion and knowledge-unit creation",
|
|
"description": "EPUB ingestion and knowledge-unit creation starts at NexusReader.Infrastructure/Services/EpubReaderService.cs and follows 12 grounded steps: Enter Get Epub Content Async -> Repeats work over a collection or condition -> Guards early exit or rejection path -> Reads repository or persistence state -> ....",
|
|
"capabilityId": "capability_epub_ingestion_and_knowledge_unit_creation",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_entry",
|
|
"label": "Enter Get Epub Content Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_getepubcontentasync_loop_89_10",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_getepubcontentasync_guard_clause_92_11",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_getepubcontentasync_repository_read_41_0",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_getepubcontentasync_branch_47_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_getepubcontentasync_return_49_2",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_unknown_idbcontextfactory_appdbcontext_createdbcontextasync_39",
|
|
"label": "Call IDb Context Factory<App Db Context>",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_unknown_dbset_ebook_firstordefaultasync_41",
|
|
"label": "Call Db Set<Ebook>",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_self_resolvepath_54",
|
|
"label": "Call Resolve Path",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_unknown_file_exists_55",
|
|
"label": "Call File",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_unknown_versone_epub_epubreader_openbookasync_62",
|
|
"label": "Call Vers One.Epub.Epub Reader",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_services_epubreaderservice_cs_getepubcontentasync_unknown_epubbookref_getreadingorder_63",
|
|
"label": "Call Epub Book Ref",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown",
|
|
"self",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ui_driven_knowledge_graph_quiz_flow_client_side_coordinator",
|
|
"name": "UI-driven knowledge graph / quiz flow (client-side coordinator)",
|
|
"description": "UI-driven knowledge graph / quiz flow (client-side coordinator) starts at NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs and follows 11 grounded steps: Enter Handle Node Selected -> Repeats work over a collection or condition -> Evaluates branch condition -> Reads repository or persistence state -> ....",
|
|
"capabilityId": "capability_ui_driven_knowledge_graph_quiz_flow_client_side_coordinator",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"unknown",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_entry",
|
|
"label": "Enter Handle Node Selected",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_handlenodeselected_loop_56_4",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_handlenodeselected_branch_49_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_handlenodeselected_repository_read_51_1",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_unknown_currentgraphdata_property_48",
|
|
"label": "Call Current Graph Data (property)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_unknown_requestscrolltoblock_71",
|
|
"label": "Call Request Scroll To Block",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_unknown_requesthighlightblock_72",
|
|
"label": "Call Request Highlight Block",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_persistence_read",
|
|
"label": "var selectedNode = graph.Nodes.FirstOrDefault(n => n.Id == nodeId);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_persistence_read",
|
|
"label": "var connectedLinks = graph.Links.Where(l => l.Source == nodeId || l.Target == nodeId).ToList();",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_persistence_read",
|
|
"label": "var otherNode = graph.Nodes.FirstOrDefault(n => n.Id == otherId);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_knowledgecoordinator_cs_handlenodeselected_result",
|
|
"label": "Complete Handle Node Selected",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"unknown"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"unknown",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_auth_profile_sync_and_token_lifecycle",
|
|
"name": "Auth / profile sync and token lifecycle",
|
|
"description": "Auth / profile sync and token lifecycle starts at NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs and follows 4 grounded steps: UI identity service uses INative Storage Service to persist tokens/profile -> Main Hub Layout triggers profile sync which calls Get User Profile Query via Mediat R to server -> Server handler reads App Db Context and returns User Profile Dto; identity state updated in UI -> Logout clears storage and notifies authentication state provider.",
|
|
"capabilityId": "capability_auth_profile_sync_and_token_lifecycle",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "auth_profile_sync_and_token_lifecycle_1",
|
|
"label": "UI identity service uses INative Storage Service to persist tokens/profile",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "auth_profile_sync_and_token_lifecycle_2",
|
|
"label": "Main Hub Layout triggers profile sync which calls Get User Profile Query via Mediat R to server",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "auth_profile_sync_and_token_lifecycle_3",
|
|
"label": "Server handler reads App Db Context and returns User Profile Dto; identity state updated in UI",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "auth_profile_sync_and_token_lifecycle_4",
|
|
"label": "Logout clears storage and notifies authentication state provider",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_billing_webhook_and_subscription_reconciliation",
|
|
"name": "Billing webhook and subscription reconciliation",
|
|
"description": "Billing webhook and subscription reconciliation starts at NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs and follows 4 grounded steps: External billing webhook arrives at server host endpoint -> Host invokes IBilling Service implementation in Infrastructure -> Billing Service reconciles subscription state and updates domain entities via Db Context -> Changes persisted and application level subscription policies (Pro User Requirement) reflect updated state.",
|
|
"capabilityId": "capability_billing_webhook_and_subscription_reconciliation",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "billing_webhook_and_subscription_reconciliation_1",
|
|
"label": "External billing webhook arrives at server host endpoint",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "billing_webhook_and_subscription_reconciliation_2",
|
|
"label": "Host invokes IBilling Service implementation in Infrastructure",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "billing_webhook_and_subscription_reconciliation_3",
|
|
"label": "Billing Service reconciles subscription state and updates domain entities via Db Context",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "billing_webhook_and_subscription_reconciliation_4",
|
|
"label": "Changes persisted and application level subscription policies (Pro User Requirement) reflect updated state",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_program_top_level",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_add_infrastructure",
|
|
"name": "Add Infrastructure",
|
|
"description": "Add Infrastructure starts at NexusReader.Infrastructure/DependencyInjection.cs and follows 12 grounded steps: Enter Add Infrastructure -> Falls back to alternate path -> Evaluates branch condition -> Returns IServiceCollection -> ....",
|
|
"capabilityId": "capability_add_infrastructure",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/Persistence/AppDbContext.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_entry",
|
|
"label": "Enter Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/Persistence/AppDbContext.cs",
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_addinfrastructure_fallback_44_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_addinfrastructure_branch_34_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_return_134",
|
|
"label": "Returns IServiceCollection",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_addinfrastructure_return_134_4",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_nexusreader_infrastructure_persistence_appdbcontext_cs_appdbcontext_dbcontext_36",
|
|
"label": "Call App Db Context (Db Context)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/Persistence/AppDbContext.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_nexusreader_infrastructure_services_knowledgeservice_cs_knowledgeservice_implementation_112",
|
|
"label": "Call Knowledge Service (implementation)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_nexusreader_infrastructure_services_epubreaderservice_cs_epubreaderservice_implementation_113",
|
|
"label": "Call Epub Reader Service (implementation)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_nexusreader_infrastructure_services_epubmetadataextractor_cs_epubmetadataextractor_implementation_114",
|
|
"label": "Call Epub Metadata Extractor (implementation)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/Services/EpubMetadataExtractor.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_nexusreader_infrastructure_services_bookstorageservice_cs_bookstorageservice_implementation_118",
|
|
"label": "Call Book Storage Service (implementation)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/Services/BookStorageService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_nexusreader_infrastructure_persistence_ebookrepository_cs_ebookrepository_implementation_121",
|
|
"label": "Call Ebook Repository (implementation)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure.Persistence/EbookRepository.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_nexusreader_infrastructure_realtime_signalrsyncbroadcaster_cs_signalrsyncbroadcaster_implementation_124",
|
|
"label": "Call Signal RSync Broadcaster (implementation)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/Persistence/AppDbContext.cs",
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_ensure_database_initialized",
|
|
"domainIds": [
|
|
"account",
|
|
"addeddate",
|
|
"ai",
|
|
"ai_chat_embeddings",
|
|
"ai_action",
|
|
"ai_assistant_sidebar_knowledge_quiz_components",
|
|
"ai_assisted_summarization",
|
|
"ai_configuration",
|
|
"ai_ingestion_knowledge_units",
|
|
"ai_token_limit",
|
|
"ai_token_limits",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"ai_verification",
|
|
"ai_knowledge",
|
|
"ai_knowledge_microsoft_extensions_ai",
|
|
"ai_modeling",
|
|
"aitoken_accounting",
|
|
"aitokenlimit",
|
|
"aitokens",
|
|
"android",
|
|
"answer",
|
|
"answer_submission",
|
|
"answering",
|
|
"application_health_readiness",
|
|
"application_layer_integration",
|
|
"asp_net_identity",
|
|
"asp_net_identity_roles_claims_tokens_logins",
|
|
"aspnet_identity_roles_users_claims",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_authorization_blazor_auth_components",
|
|
"authentication_claims",
|
|
"authentication_state_notification",
|
|
"authentication_token_access_refresh",
|
|
"authentication_identity",
|
|
"author",
|
|
"authorization",
|
|
"authorization_prouser_policy",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"background_jobs_hangfire",
|
|
"background_processing",
|
|
"billing",
|
|
"billing_stripe_integration",
|
|
"blazor_component_composition",
|
|
"blazor_webassembly_hosting_server_client",
|
|
"block",
|
|
"block_node",
|
|
"block_textsegmentblock",
|
|
"block_scrolling_highlighting",
|
|
"book",
|
|
"book_ebook_file",
|
|
"change_notification",
|
|
"chapter",
|
|
"chapter_readerpage",
|
|
"chapter_index",
|
|
"chapter_retrieval",
|
|
"chapter_readingorder",
|
|
"citation",
|
|
"client_wasm",
|
|
"command",
|
|
"configuration_json_env_file_support",
|
|
"configuration_preferences",
|
|
"connection_session",
|
|
"content_hashing_cache_key",
|
|
"content_normalization",
|
|
"contentblock",
|
|
"contentblock_textsegmentblock_aiactiontriggerblock",
|
|
"contenthash",
|
|
"context_snippet",
|
|
"contextblock_contextblockid",
|
|
"cookie_based_sign_in",
|
|
"cosinedistance",
|
|
"cover",
|
|
"cover_cover_image",
|
|
"coverimage",
|
|
"createdat",
|
|
"customer",
|
|
"database_connection",
|
|
"database_providers_sqlite_postgresql",
|
|
"debugging_inspect_uri",
|
|
"description_column",
|
|
"deterministic_hashing",
|
|
"development_environment",
|
|
"device",
|
|
"device_context_phone_tablet_desktop",
|
|
"device_sync_broadcast",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"domain_project_boundary_for_nexusreader",
|
|
"e_book_processing_versone_epub",
|
|
"ebook",
|
|
"ebook_chapter",
|
|
"ebook_epub_ingestion",
|
|
"ebook_epub_processing",
|
|
"ebook_processing",
|
|
"ebookid",
|
|
"ebooks",
|
|
"ebooks_lastreadbook",
|
|
"ebooks_table",
|
|
"embedding",
|
|
"embedding_vector",
|
|
"embeddings",
|
|
"epub",
|
|
"epub_metadata",
|
|
"error_handling_recovery",
|
|
"external_google_login",
|
|
"file_storage",
|
|
"focus_mode_ui_state",
|
|
"focusmode",
|
|
"graph",
|
|
"graph_db_neo4j",
|
|
"graph_extraction",
|
|
"graph_relationships",
|
|
"graphdata",
|
|
"graphlink",
|
|
"graphnode",
|
|
"grounded_ai_response",
|
|
"groundedness",
|
|
"groundedness_score_rationale",
|
|
"groundedresponse",
|
|
"groundedresponse_answer_citations",
|
|
"grounding_fact_checking",
|
|
"identity",
|
|
"identity_authenticationstateprovider",
|
|
"identity_roles_claims_logins",
|
|
"identity_logout",
|
|
"in_process_messaging_mediator_patterns_mediatr",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"ingestion_preview",
|
|
"initializationstatus",
|
|
"ios",
|
|
"isunlimitedtokens",
|
|
"js_interop",
|
|
"jwt",
|
|
"key_value_storage",
|
|
"keyconcept",
|
|
"knowledge",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledge_extraction",
|
|
"knowledge_graph",
|
|
"knowledge_graph_expansion",
|
|
"knowledge_integration",
|
|
"knowledge_retrieval",
|
|
"knowledge_unit_vector_embeddings",
|
|
"knowledge_unit_link_graph_edges",
|
|
"knowledge_unit_segmentation",
|
|
"knowledge_ai_cache",
|
|
"knowledgegraph",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgelink",
|
|
"knowledgepacket",
|
|
"knowledgeservice",
|
|
"knowledgeunit",
|
|
"knowledgeunit_vector_embeddings",
|
|
"knowledgeunit_vectorized_content",
|
|
"knowledgeunitlink",
|
|
"knowledgeunitlink_relations",
|
|
"lastreadbook_scope_selector",
|
|
"lastreadbookdto",
|
|
"lastreaddate",
|
|
"library",
|
|
"library_ingestion",
|
|
"library_question",
|
|
"link",
|
|
"llm_model_selection",
|
|
"loading_state",
|
|
"local_hosting",
|
|
"localepubmetadata",
|
|
"localstorage",
|
|
"logging",
|
|
"logging_abstraction",
|
|
"logout",
|
|
"maccatalyst",
|
|
"mapping_dtos",
|
|
"maui",
|
|
"maui_razor_components",
|
|
"metadata",
|
|
"mobile",
|
|
"mobile_client_ui",
|
|
"model_and_prompt_versioning",
|
|
"native_storage",
|
|
"navigation",
|
|
"navigation_book_chapter_selection",
|
|
"nexususer",
|
|
"nexususer_admin",
|
|
"nexususer_application_user",
|
|
"nexususer_identity",
|
|
"node",
|
|
"node_selection",
|
|
"node_selection_interaction",
|
|
"options",
|
|
"page",
|
|
"path_url",
|
|
"payments",
|
|
"payments_stripe",
|
|
"persistence",
|
|
"persistence_ef_core",
|
|
"plan",
|
|
"platform_specific_infrastructure",
|
|
"platform_specific_native_storage_bridge",
|
|
"preferences_based_storage",
|
|
"prerendering_safe_storage_access",
|
|
"pricing",
|
|
"pro_subscription",
|
|
"productid",
|
|
"profile",
|
|
"progress",
|
|
"progress_lastreadbook",
|
|
"provenance",
|
|
"query",
|
|
"question",
|
|
"quiz",
|
|
"quiz_active_quiz_block",
|
|
"quiz_quizquestion",
|
|
"quiz_availability_updates",
|
|
"quiz_generation",
|
|
"quiz_results",
|
|
"quiz_state",
|
|
"quizquestion",
|
|
"quizresult",
|
|
"quizresults",
|
|
"rate_size_limits_and_retry_policy",
|
|
"reader",
|
|
"reader_readercanvas",
|
|
"reader_navigation",
|
|
"reader_navigation_state",
|
|
"reader_session_content",
|
|
"readerpage",
|
|
"readerpage_content_blocks",
|
|
"readerpage_readerpageviewmodel",
|
|
"reading_lastreadbook",
|
|
"reading_progress",
|
|
"reading_progress_sync",
|
|
"readingprogress",
|
|
"readingsession",
|
|
"readingstate",
|
|
"real_time_sync",
|
|
"real_time_sync_broadcast",
|
|
"real_time_updates_signalr_client",
|
|
"real_time_background_jobs_hangfire",
|
|
"reconnect",
|
|
"relationtype",
|
|
"relevance_percentage",
|
|
"relevantcontext",
|
|
"resilience_and_http_retries",
|
|
"result",
|
|
"result_tresponse",
|
|
"retry_countdown",
|
|
"role",
|
|
"roles",
|
|
"score_percentage",
|
|
"search",
|
|
"search_result",
|
|
"secrets_config_management_usersecrets",
|
|
"secure_alias_no_op",
|
|
"secure_client_storage",
|
|
"secure_storage",
|
|
"selection_based_interactions",
|
|
"semantic_cache",
|
|
"semantic_embeddings_and_vector_search",
|
|
"semantic_knowledge_cache",
|
|
"semantic_search",
|
|
"semanticknowledgecache",
|
|
"semanticknowledgecache_ai_semantic_caching",
|
|
"semanticsearch",
|
|
"semanticsearchresult_snippet_relevancescore_sourcebooktitle",
|
|
"session",
|
|
"session_resume",
|
|
"session_cookie_sign_in_orchestration",
|
|
"settings",
|
|
"shared_ui",
|
|
"shared_ui_imports",
|
|
"stripe",
|
|
"stripe_stripeproductid",
|
|
"stripeproductid",
|
|
"subscription",
|
|
"subscription_plan",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"summarization_quiz_generation",
|
|
"sync",
|
|
"tenant",
|
|
"tenant_user_isolation",
|
|
"tenant_scoping",
|
|
"tenant_scoping_tenantid_from_auth_claims",
|
|
"tenantid",
|
|
"tenantid_userid_multitenancy_audit_metadata",
|
|
"tenantisolation",
|
|
"text_selection",
|
|
"text_selection_coordinates",
|
|
"theme",
|
|
"theme_focus_mode",
|
|
"token",
|
|
"token_refresh",
|
|
"token_storage",
|
|
"topic",
|
|
"typography",
|
|
"ui_feedback_loading_state",
|
|
"ui_shared",
|
|
"ui_state",
|
|
"ui_icons",
|
|
"user",
|
|
"user_aspnetusers",
|
|
"user_identity",
|
|
"user_nexususer",
|
|
"user_devices",
|
|
"user_preferences",
|
|
"user_profile_last_read_book",
|
|
"user_registration",
|
|
"user_roles",
|
|
"user_sessions_connected_devices",
|
|
"user_ownership",
|
|
"userprofile",
|
|
"userprofiledto",
|
|
"vector_embeddings_storage_pgvector",
|
|
"vector_search_pgvector",
|
|
"vector_search_embeddings",
|
|
"vector_store_qdrant",
|
|
"vibration",
|
|
"web_root_relative_static_asset_paths_uploads_covers",
|
|
"windows"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "overview_md",
|
|
"summaryCount": 186,
|
|
"dataFlowCount": 11,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 14,
|
|
"chunkingIssueCodes": [
|
|
"split-contract-family",
|
|
"split-event-flow"
|
|
],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "low_confidence_flow_flow_maui_app_startup_and_composition",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_startup_and_composition",
|
|
"message": "Business flow MAUI app startup and composition remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_epub_ingestion_and_knowledge_unit_creation",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_epub_ingestion_and_knowledge_unit_creation",
|
|
"message": "Business flow EPUB ingestion and knowledge-unit creation is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown",
|
|
"self",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": [
|
|
"Semantic cross-reference chunking raised 2 continuity warning(s)."
|
|
]
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_knowledge_request_server_flow",
|
|
"name": "Knowledge request (server) flow",
|
|
"rank": 1,
|
|
"score": 0.921,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.88,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.9
|
|
},
|
|
"reason": "Ranked because Knowledge request (server) flow combines business value 0.95, evidence strength 0.88, architecture coverage 0.83, execution truth 1.00, and comprehension 0.90 for a total score of 0.92.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"rank": 2,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Ensure Database Initialized combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"rank": 3,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Program (top level) combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_auth_profile_sync_and_token_lifecycle",
|
|
"name": "Auth / profile sync and token lifecycle",
|
|
"rank": 4,
|
|
"score": 0.858,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 1,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 0.74,
|
|
"userComprehension": 0.66
|
|
},
|
|
"reason": "Ranked because Auth / profile sync and token lifecycle combines business value 0.95, evidence strength 1.00, architecture coverage 0.83, execution truth 0.74, and comprehension 0.66 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Layout/MainHubLayout.razor -> NexusReader.Application/Queries/User/GetUserProfileQuery.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_reading_progress_sync_signalr_mediatr_broadcaster",
|
|
"name": "Reading progress sync (SignalR -> MediatR -> Broadcaster)",
|
|
"rank": 5,
|
|
"score": 0.847,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.733,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Reading progress sync (SignalR -> MediatR -> Broadcaster) combines business value 0.95, evidence strength 0.73, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.85.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_ui_driven_knowledge_graph_quiz_flow_client_side_coordinator",
|
|
"name": "UI-driven knowledge graph / quiz flow (client-side coordinator)",
|
|
"rank": 6,
|
|
"score": 0.819,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.673,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because UI-driven knowledge graph / quiz flow (client-side coordinator) combines business value 0.95, evidence strength 0.67, architecture coverage 0.92, execution truth 1.00, and comprehension 0.18 for a total score of 0.82.",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/KnowledgeCoordinator.cs",
|
|
"unknown",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_billing_webhook_and_subscription_reconciliation",
|
|
"name": "Billing webhook and subscription reconciliation",
|
|
"rank": 7,
|
|
"score": 0.8,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 1,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.6,
|
|
"userComprehension": 0.58
|
|
},
|
|
"reason": "Ranked because Billing webhook and subscription reconciliation combines business value 0.95, evidence strength 1.00, architecture coverage 0.75, execution truth 0.60, and comprehension 0.58 for a total score of 0.80.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs -> NexusReader.Infrastructure/Services/BillingService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_epub_ingestion_and_knowledge_unit_creation",
|
|
"name": "EPUB ingestion and knowledge-unit creation",
|
|
"rank": 8,
|
|
"score": 0.795,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.7,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 0.88,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because EPUB ingestion and knowledge-unit creation combines business value 0.95, evidence strength 0.70, architecture coverage 0.92, execution truth 0.88, and comprehension 0.18 for a total score of 0.80.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Services/EpubReaderService.cs",
|
|
"unknown",
|
|
"self",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_add_infrastructure",
|
|
"name": "Add Infrastructure",
|
|
"rank": 9,
|
|
"score": 0.779,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.7,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 0.88,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Add Infrastructure combines business value 0.95, evidence strength 0.70, architecture coverage 0.83, execution truth 0.88, and comprehension 0.18 for a total score of 0.78.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/Persistence/AppDbContext.cs",
|
|
"NexusReader.Infrastructure/Services/KnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_maui_app_startup_and_composition",
|
|
"name": "MAUI app startup and composition",
|
|
"rank": 10,
|
|
"score": 0.681,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.94,
|
|
"evidenceStrength": 0.76,
|
|
"architectureCoverage": 0.667,
|
|
"executionTruth": 0.37,
|
|
"userComprehension": 0.66
|
|
},
|
|
"reason": "Ranked because MAUI app startup and composition combines business value 0.94, evidence strength 0.76, architecture coverage 0.67, execution truth 0.37, and comprehension 0.66 for a total score of 0.68.",
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Application",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "low"
|
|
},
|
|
{
|
|
"flowId": "flow_wasm_client_startup_and_di_validation",
|
|
"name": "WASM client startup and DI validation",
|
|
"rank": 11,
|
|
"score": 0.549,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.7,
|
|
"architectureCoverage": 0.667,
|
|
"executionTruth": 0.11,
|
|
"userComprehension": 0.1
|
|
},
|
|
"reason": "Ranked because WASM client startup and DI validation combines business value 0.95, evidence strength 0.70, architecture coverage 0.67, execution truth 0.11, and comprehension 0.10 for a total score of 0.55.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"self",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "warn",
|
|
"coverage": {
|
|
"totalDomains": 327,
|
|
"coveredDomains": 327,
|
|
"totalCapabilities": 11,
|
|
"coveredCapabilities": 11,
|
|
"totalFlows": 11,
|
|
"coveredFlows": 11
|
|
},
|
|
"issueCount": 1,
|
|
"issues": [
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "overview.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_maui_app_startup_and_composition",
|
|
"message": "Business flow MAUI app startup and composition is low confidence.",
|
|
"evidenceCount": 4,
|
|
"confidence": "low"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"documentFilename": "realtime-and-sync.md",
|
|
"documentTitle": "Real-Time Sync, SignalR and Broadcast",
|
|
"relativeOutputPath": "flows/realtime-and-sync.md",
|
|
"collectionKind": "flows",
|
|
"publicationTier": "secondary",
|
|
"businessModel": {
|
|
"documentFilename": "realtime-and-sync.md",
|
|
"documentTitle": "Real-Time Sync, SignalR and Broadcast",
|
|
"summary": "Real-Time Sync, SignalR and Broadcast centers on connection/session, device sync / broadcast, ebook and currently highlights Reading Progress Sync Flow as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "connection_session",
|
|
"name": "connection/session",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "device_sync_broadcast",
|
|
"name": "device sync / broadcast",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook",
|
|
"name": "ebook",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ingestion",
|
|
"name": "ingestion",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ingestion_progress",
|
|
"name": "ingestion progress",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "page",
|
|
"name": "page",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "progress",
|
|
"name": "progress",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reading_progress",
|
|
"name": "reading progress",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readingprogress",
|
|
"name": "readingprogress",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync",
|
|
"name": "real time sync",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "sync",
|
|
"name": "sync",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user",
|
|
"name": "user",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_devices",
|
|
"name": "user devices",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ISyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_sessions_connected_devices",
|
|
"name": "user sessions / connected devices",
|
|
"description": "Real-Time Sync, SignalR and Broadcast is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SignalRSyncBroadcaster.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_reading_progress_sync_flow",
|
|
"name": "Reading Progress Sync Flow",
|
|
"description": "Reading Progress Sync Flow coordinates 6 business-relevant steps beginning at NexusReader.UI.Shared/Services/SyncService.cs.",
|
|
"domainIds": [
|
|
"connection_session",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"page",
|
|
"progress",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"sync",
|
|
"user",
|
|
"user_devices",
|
|
"user_sessions_connected_devices"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_reading_progress_sync_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_cross_client_notification_flow_server_side",
|
|
"name": "Cross-Client Notification Flow (server-side)",
|
|
"description": "Cross-Client Notification Flow (server-side) coordinates 3 business-relevant steps beginning at NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs.",
|
|
"domainIds": [
|
|
"connection_session",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"page",
|
|
"progress",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"sync",
|
|
"user",
|
|
"user_devices",
|
|
"user_sessions_connected_devices"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_cross_client_notification_flow_server_side"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_update_progress",
|
|
"name": "Update Progress",
|
|
"description": "Update Progress coordinates 3 business-relevant steps beginning at NexusReader.Infrastructure/RealTime/SyncHub.cs.",
|
|
"domainIds": [
|
|
"connection_session",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"page",
|
|
"progress",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"sync",
|
|
"user",
|
|
"user_devices",
|
|
"user_sessions_connected_devices"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_update_progress"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_reading_progress_sync_flow",
|
|
"name": "Reading Progress Sync Flow",
|
|
"description": "Reading Progress Sync Flow starts at NexusReader.UI.Shared/Services/SyncService.cs and follows 8 grounded steps: Enter Update Progress Async -> Guards early exit or rejection path -> Evaluates branch condition -> Calls external dependency -> ....",
|
|
"capabilityId": "capability_reading_progress_sync_flow",
|
|
"domainIds": [
|
|
"connection_session",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"page",
|
|
"progress",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"sync",
|
|
"user",
|
|
"user_devices",
|
|
"user_sessions_connected_devices"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs",
|
|
"self",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_ui_shared_services_syncservice_cs_updateprogressasync_entry",
|
|
"label": "Enter Update Progress Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_syncservice_cs_updateprogressasync_updateprogressasync_guard_clause_72_0",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_syncservice_cs_updateprogressasync_updateprogressasync_branch_85_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_syncservice_cs_updateprogressasync_updateprogressasync_external_call_89_3",
|
|
"label": "Calls external dependency",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_syncservice_cs_updateprogressasync_return_100",
|
|
"label": "Immediate return Ok to caller",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_syncservice_cs_updateprogressasync_updateprogressasync_return_100_5",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_syncservice_cs_updateprogressasync_self_initializeasync_85",
|
|
"label": "Call Initialize Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_syncservice_cs_updateprogressasync_external_call",
|
|
"label": "await _hubConnection.SendAsync(\"UpdateProgress\", pageId, ebookId, progress, chapterTitle, token);",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs",
|
|
"self",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_cross_client_notification_flow_server_side",
|
|
"name": "Cross-Client Notification Flow (server-side)",
|
|
"description": "Cross-Client Notification Flow (server-side) starts at NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs and follows 10 grounded steps: Enter Handle -> Reads repository or persistence state -> Evaluates branch condition -> Returns result -> ....",
|
|
"capabilityId": "capability_cross_client_notification_flow_server_side",
|
|
"domainIds": [
|
|
"connection_session",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"page",
|
|
"progress",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"sync",
|
|
"user",
|
|
"user_devices",
|
|
"user_sessions_connected_devices"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Messaging/ISyncBroadcaster.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_entry",
|
|
"label": "Enter Handle",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Messaging/ISyncBroadcaster.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_handle_repository_read_30_0",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_handle_branch_31_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_handle_return_33_2",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_return_59",
|
|
"label": "Return success result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_nexusreader_application_abstractions_messaging_isyncbroadcaster_cs_broadcastprogressasync_52",
|
|
"label": "Call Broadcast Progress Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Messaging/ISyncBroadcaster.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_external_call",
|
|
"label": "await _broadcaster.BroadcastProgressAsync(request.UserId, request.PageId, now, request.ExcludedConnectionId, cancellationToken)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_persistence_read",
|
|
"label": "var user = await context.Users.FirstOrDefaultAsync(u => u.Id == request.UserId, cancellationToken);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_persistence_read",
|
|
"label": "var ebook = await context.Ebooks.FirstOrDefaultAsync(e => e.Id == request.EbookId, cancellationToken);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_commands_sync_updatereadingprogresscommandhandler_cs_handle_persistence_read",
|
|
"label": "await context.SaveChangesAsync(cancellationToken);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Messaging/ISyncBroadcaster.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_update_progress",
|
|
"name": "Update Progress",
|
|
"description": "Update Progress starts at NexusReader.Infrastructure/RealTime/SyncHub.cs and follows 9 grounded steps: Enter Update Progress -> Reads repository or persistence state -> Evaluates branch condition -> Call Update Reading Progress Command (ctor) -> ....",
|
|
"capabilityId": "capability_update_progress",
|
|
"domainIds": [
|
|
"connection_session",
|
|
"device_sync_broadcast",
|
|
"ebook",
|
|
"ingestion",
|
|
"ingestion_progress",
|
|
"page",
|
|
"progress",
|
|
"reading_progress",
|
|
"readingprogress",
|
|
"real_time_sync",
|
|
"sync",
|
|
"user",
|
|
"user_devices",
|
|
"user_sessions_connected_devices"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_entry",
|
|
"label": "Enter Update Progress",
|
|
"kind": "entrypoint",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_updateprogress_repository_read_21_0",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_updateprogress_branch_22_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_nexusreader_application_commands_sync_updatereadingprogresscommand_cs_updatereadingprogresscommand_ctor_24",
|
|
"label": "Call Update Reading Progress Command (ctor)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_external_call",
|
|
"label": "Context.User?.FindFirst(ClaimTypes.NameIdentifier)?.Value",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_external_call",
|
|
"label": "_mediator.Send(...) (MediatR)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_persistence_read",
|
|
"label": "var userId = Context.User?.FindFirst(ClaimTypes.NameIdentifier)?.Value;",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_persistence_read",
|
|
"label": "await _mediator.Send(new UpdateReadingProgressCommand(pageId, userId, ebookId, progress, chapterTitle, chapterIndex, Context.ConnectionId));",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_realtime_synchub_cs_updateprogress_result",
|
|
"label": "Complete Update Progress",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "realtime_and_sync_md",
|
|
"summaryCount": 6,
|
|
"dataFlowCount": 3,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 1,
|
|
"chunkingIssueCodes": [],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "ambiguous_business_flow_flow_cross_client_notification_flow_server_side",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_cross_client_notification_flow_server_side",
|
|
"message": "Business flow Cross-Client Notification Flow (server-side) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Messaging/ISyncBroadcaster.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_update_progress",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_update_progress",
|
|
"message": "Business flow Update Progress is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": []
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_update_progress",
|
|
"name": "Update Progress",
|
|
"rank": 1,
|
|
"score": 0.803,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.533,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Update Progress combines business value 0.95, evidence strength 0.53, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.80.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_cross_client_notification_flow_server_side",
|
|
"name": "Cross-Client Notification Flow (server-side)",
|
|
"rank": 2,
|
|
"score": 0.798,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.58,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Cross-Client Notification Flow (server-side) combines business value 0.95, evidence strength 0.58, architecture coverage 0.92, execution truth 1.00, and comprehension 0.18 for a total score of 0.80.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommandHandler.cs",
|
|
"NexusReader.Application.Abstractions.Messaging/ISyncBroadcaster.cs",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_reading_progress_sync_flow",
|
|
"name": "Reading Progress Sync Flow",
|
|
"rank": 3,
|
|
"score": 0.793,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.625,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Reading Progress Sync Flow combines business value 0.95, evidence strength 0.63, architecture coverage 0.83, execution truth 1.00, and comprehension 0.18 for a total score of 0.79.",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/SyncService.cs",
|
|
"self",
|
|
"NexusReader.Application/Commands/Sync/UpdateReadingProgressCommand.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "pass",
|
|
"coverage": {
|
|
"totalDomains": 14,
|
|
"coveredDomains": 14,
|
|
"totalCapabilities": 3,
|
|
"coveredCapabilities": 3,
|
|
"totalFlows": 3,
|
|
"coveredFlows": 3
|
|
},
|
|
"issueCount": 0,
|
|
"issues": []
|
|
}
|
|
},
|
|
{
|
|
"documentFilename": "security-identity-auth.md",
|
|
"documentTitle": "Security, Identity and Authorization",
|
|
"relativeOutputPath": "flows/security-identity-auth.md",
|
|
"collectionKind": "flows",
|
|
"publicationTier": "secondary",
|
|
"businessModel": {
|
|
"documentFilename": "security-identity-auth.md",
|
|
"documentTitle": "Security, Identity and Authorization",
|
|
"summary": "Security, Identity and Authorization centers on ai token limit, ai tokens, ai tokens (aitokensused, aitokenlimit) and currently highlights Client-side API call with automatic token attach & refresh as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "ai_token_limit",
|
|
"name": "ai token limit",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens",
|
|
"name": "ai tokens",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens_aitokensused_aitokenlimit",
|
|
"name": "ai tokens (aitokensused, aitokenlimit)",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens_token_limits",
|
|
"name": "ai tokens / token limits",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "auth",
|
|
"name": "auth",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication",
|
|
"name": "authentication",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication_claims",
|
|
"name": "authentication / claims",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authorization_policy",
|
|
"name": "authorization policy",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authorization_policy",
|
|
"name": "authorization/policy",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "jwt",
|
|
"name": "jwt",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "pro_subscription",
|
|
"name": "pro subscription",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_client_storage",
|
|
"name": "secure client storage",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscriptionplan",
|
|
"name": "subscriptionplan",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenant",
|
|
"name": "tenant",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token_refresh",
|
|
"name": "token refresh",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user",
|
|
"name": "user",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_roles",
|
|
"name": "user roles",
|
|
"description": "Security, Identity and Authorization is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_client_side_api_call_with_automatic_token_attach_refresh",
|
|
"name": "Client-side API call with automatic token attach & refresh",
|
|
"description": "Client-side API call with automatic token attach & refresh coordinates 6 business-relevant steps beginning at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs.",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_client_side_api_call_with_automatic_token_attach_refresh"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_server_side_login_profile_access",
|
|
"name": "Server-side login / profile access",
|
|
"description": "Server-side login / profile access coordinates 4 business-relevant steps beginning at NexusReader.Web/Services/ServerIdentityService.cs.",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_server_side_login_profile_access"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_authorization_pro_subscription_token_limit_enforcement",
|
|
"name": "Authorization: Pro subscription / Token limit enforcement",
|
|
"description": "Authorization: Pro subscription / Token limit enforcement coordinates 4 business-relevant steps beginning at NexusReader.Application/Security/Authorization/ProUserHandler.cs.",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_authorization_pro_subscription_token_limit_enforcement"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_handle_requirement_async",
|
|
"name": "Handle Requirement Async",
|
|
"description": "Handle Requirement Async coordinates 6 business-relevant steps beginning at NexusReader.Infrastructure/Identity/TokenLimitHandler.cs.",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_handle_requirement_async"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_get_authentication_state_async",
|
|
"name": "Get Authentication State Async",
|
|
"description": "Get Authentication State Async coordinates 8 business-relevant steps beginning at NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs.",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_get_authentication_state_async"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_send_async",
|
|
"name": "Send Async",
|
|
"description": "Send Async coordinates 8 business-relevant steps beginning at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs.",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_send_async"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_client_side_api_call_with_automatic_token_attach_refresh",
|
|
"name": "Client-side API call with automatic token attach & refresh",
|
|
"description": "Client-side API call with automatic token attach & refresh starts at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs and follows 12 grounded steps: Enter Send Async -> Falls back to alternate path -> Calls external dependency -> Evaluates branch condition -> ....",
|
|
"capabilityId": "capability_client_side_api_call_with_automatic_token_attach_refresh",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_entry",
|
|
"label": "Enter Send Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_fallback_73_6",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_external_call_27_0",
|
|
"label": "Calls external dependency",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_branch_45_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_return_95_11",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_return_109",
|
|
"label": "Return response",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_self_clonehttprequestmessageasync_93",
|
|
"label": "Call Clone Http Request Message Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_getsecurestring_47",
|
|
"label": "Call Get Secure String",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_refreshtokenasync_78",
|
|
"label": "Call Refresh Token Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_logoutasync_87",
|
|
"label": "Call Logout Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "var response = await base.SendAsync(request, cancellationToken);",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_server_side_login_profile_access",
|
|
"name": "Server-side login / profile access",
|
|
"description": "Server-side login / profile access starts at NexusReader.Web/Services/ServerIdentityService.cs and follows 7 grounded steps: Enter Login Async -> Guards early exit or rejection path -> Reads repository or persistence state -> Evaluates branch condition -> ....",
|
|
"capabilityId": "capability_server_side_login_profile_access",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"unknown",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_services_serveridentityservice_cs_loginasync_entry",
|
|
"label": "Enter Login Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_services_serveridentityservice_cs_loginasync_loginasync_guard_clause_44_1",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_services_serveridentityservice_cs_loginasync_loginasync_repository_read_43_0",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_services_serveridentityservice_cs_loginasync_loginasync_branch_51_3",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_services_serveridentityservice_cs_loginasync_loginasync_return_54_4",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_services_serveridentityservice_cs_loginasync_unknown_usermanager_findbyemailasync_43",
|
|
"label": "Call User Manager",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_services_serveridentityservice_cs_loginasync_persistence_read",
|
|
"label": "var user = await _userManager.FindByEmailAsync(email);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"unknown",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_authorization_pro_subscription_token_limit_enforcement",
|
|
"name": "Authorization: Pro subscription / Token limit enforcement",
|
|
"description": "Authorization: Pro subscription / Token limit enforcement starts at NexusReader.Application/Security/Authorization/ProUserHandler.cs and follows 7 grounded steps: Enter Handle Requirement Async -> Reads repository or persistence state -> Evaluates branch condition -> Returns result -> ....",
|
|
"capabilityId": "capability_authorization_pro_subscription_token_limit_enforcement",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Data.Persistence",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_application_security_authorization_prouserhandler_cs_handlerequirementasync_entry",
|
|
"label": "Enter Handle Requirement Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Data.Persistence"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_security_authorization_prouserhandler_cs_handlerequirementasync_handlerequirementasync_repository_read_24_0",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_security_authorization_prouserhandler_cs_handlerequirementasync_handlerequirementasync_branch_25_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_security_authorization_prouserhandler_cs_handlerequirementasync_handlerequirementasync_return_27_2",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_security_authorization_prouserhandler_cs_handlerequirementasync_nexusreader_data_persistence_appdbcontext_users_firstordefaultasync_includes_subscriptionplan_31",
|
|
"label": "Call App Db Context.Users",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Data.Persistence"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_security_authorization_prouserhandler_cs_handlerequirementasync_persistence_read",
|
|
"label": "var userId = context.User.FindFirstValue(ClaimTypes.NameIdentifier);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_application_security_authorization_prouserhandler_cs_handlerequirementasync_persistence_read",
|
|
"label": "context.Succeed(requirement);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Data.Persistence",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_handle_requirement_async",
|
|
"name": "Handle Requirement Async",
|
|
"description": "Handle Requirement Async starts at NexusReader.Infrastructure/Identity/TokenLimitHandler.cs and follows 11 grounded steps: Enter Handle Requirement Async -> Reads repository or persistence state -> Evaluates branch condition -> Returns result -> ....",
|
|
"capabilityId": "capability_handle_requirement_async",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"unknown",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_entry",
|
|
"label": "Enter Handle Requirement Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_handlerequirementasync_repository_read_28_0",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_handlerequirementasync_branch_29_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_handlerequirementasync_return_31_2",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_unknown_claimsprincipal_findfirstvalue_28",
|
|
"label": "Call Claims Principal",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_unknown_idbcontextfactory_appdbcontext_createdbcontext_34",
|
|
"label": "Call IDb Context Factory<App Db Context>",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_unknown_dbset_users_include_firstordefaultasync_35",
|
|
"label": "Call Db Set<Users>",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_unknown_authorizationhandlercontext_succeed_47",
|
|
"label": "Call Authorization Handler Context",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_persistence_read",
|
|
"label": "var userId = context.User.FindFirstValue(ClaimTypes.NameIdentifier);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_persistence_read",
|
|
"label": "db.Users.Include(u => u.SubscriptionPlan).FirstOrDefaultAsync(u => u.Id == userId) - loads user and navigation property",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_infrastructure_identity_tokenlimithandler_cs_handlerequirementasync_persistence_read",
|
|
"label": "context.Succeed(requirement);",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"unknown",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_get_authentication_state_async",
|
|
"name": "Get Authentication State Async",
|
|
"description": "Get Authentication State Async starts at NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs and follows 7 grounded steps: Enter Get Authentication State Async -> Guards early exit or rejection path -> Evaluates branch condition -> Returns result -> ....",
|
|
"capabilityId": "capability_get_authentication_state_async",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Application.Abstractions.Services/INativeStorageService.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_ui_shared_services_nexusauthenticationstateprovider_cs_getauthenticationstateasync_entry",
|
|
"label": "Enter Get Authentication State Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Application.Abstractions.Services/INativeStorageService.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_nexusauthenticationstateprovider_cs_getauthenticationstateasync_getauthenticationstateasync_guard_clause_35_0",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_nexusauthenticationstateprovider_cs_getauthenticationstateasync_getauthenticationstateasync_branch_41_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_nexusauthenticationstateprovider_cs_getauthenticationstateasync_getauthenticationstateasync_return_54_3",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_nexusauthenticationstateprovider_cs_getauthenticationstateasync_return_76",
|
|
"label": "Return anonymous principal fallback",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_nexusauthenticationstateprovider_cs_getauthenticationstateasync_nexusreader_application_abstractions_services_inativestorageservice_cs_getsecurestring_37",
|
|
"label": "Call Get Secure String",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Application.Abstractions.Services/INativeStorageService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_services_nexusauthenticationstateprovider_cs_getauthenticationstateasync_self_createstate_49",
|
|
"label": "Call Create State",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"self"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Application.Abstractions.Services/INativeStorageService.cs",
|
|
"self",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_send_async",
|
|
"name": "Send Async",
|
|
"description": "Send Async starts at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs and follows 12 grounded steps: Enter Send Async -> Falls back to alternate path -> Calls external dependency -> Evaluates branch condition -> ....",
|
|
"capabilityId": "capability_send_async",
|
|
"domainIds": [
|
|
"ai_token_limit",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"ai_tokens_token_limits",
|
|
"auth",
|
|
"authentication",
|
|
"authentication_claims",
|
|
"authorization_policy",
|
|
"authorization_policy",
|
|
"jwt",
|
|
"pro_subscription",
|
|
"secure_client_storage",
|
|
"subscriptionplan",
|
|
"tenant",
|
|
"token_refresh",
|
|
"user",
|
|
"user_roles"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_entry",
|
|
"label": "Enter Send Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_fallback_73_6",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_external_call_27_0",
|
|
"label": "Calls external dependency",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_branch_45_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_return_95_11",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_return_109",
|
|
"label": "Return response",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_self_clonehttprequestmessageasync_93",
|
|
"label": "Call Clone Http Request Message Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_getsecurestring_47",
|
|
"label": "Call Get Secure String",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_refreshtokenasync_78",
|
|
"label": "Call Refresh Token Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_logoutasync_87",
|
|
"label": "Call Logout Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "var response = await base.SendAsync(request, cancellationToken);",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "security_identity_auth_md",
|
|
"summaryCount": 7,
|
|
"dataFlowCount": 6,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 1,
|
|
"chunkingIssueCodes": [],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "ambiguous_business_flow_flow_client_side_api_call_with_automatic_token_attach_refresh",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_client_side_api_call_with_automatic_token_attach_refresh",
|
|
"message": "Business flow Client-side API call with automatic token attach & refresh is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_send_async",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_send_async",
|
|
"message": "Business flow Send Async is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": []
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_get_authentication_state_async",
|
|
"name": "Get Authentication State Async",
|
|
"rank": 1,
|
|
"score": 0.866,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.914,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.42
|
|
},
|
|
"reason": "Ranked because Get Authentication State Async combines business value 0.95, evidence strength 0.91, architecture coverage 0.75, execution truth 1.00, and comprehension 0.42 for a total score of 0.87.",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Services/NexusAuthenticationStateProvider.cs",
|
|
"NexusReader.Application.Abstractions.Services/INativeStorageService.cs",
|
|
"self",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_server_side_login_profile_access",
|
|
"name": "Server-side login / profile access",
|
|
"rank": 2,
|
|
"score": 0.862,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.829,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.42
|
|
},
|
|
"reason": "Ranked because Server-side login / profile access combines business value 0.95, evidence strength 0.83, architecture coverage 0.83, execution truth 1.00, and comprehension 0.42 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Services/ServerIdentityService.cs",
|
|
"unknown",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_authorization_pro_subscription_token_limit_enforcement",
|
|
"name": "Authorization: Pro subscription / Token limit enforcement",
|
|
"rank": 3,
|
|
"score": 0.843,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.743,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.42
|
|
},
|
|
"reason": "Ranked because Authorization: Pro subscription / Token limit enforcement combines business value 0.95, evidence strength 0.74, architecture coverage 0.83, execution truth 1.00, and comprehension 0.42 for a total score of 0.84.",
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Data.Persistence",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_client_side_api_call_with_automatic_token_attach_refresh",
|
|
"name": "Client-side API call with automatic token attach & refresh",
|
|
"rank": 4,
|
|
"score": 0.825,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.7,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Client-side API call with automatic token attach & refresh combines business value 0.95, evidence strength 0.70, architecture coverage 0.92, execution truth 1.00, and comprehension 0.18 for a total score of 0.82.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_send_async",
|
|
"name": "Send Async",
|
|
"rank": 5,
|
|
"score": 0.825,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.7,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Send Async combines business value 0.95, evidence strength 0.70, architecture coverage 0.92, execution truth 1.00, and comprehension 0.18 for a total score of 0.82.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_handle_requirement_async",
|
|
"name": "Handle Requirement Async",
|
|
"rank": 6,
|
|
"score": 0.791,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.618,
|
|
"architectureCoverage": 0.833,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Handle Requirement Async combines business value 0.95, evidence strength 0.62, architecture coverage 0.83, execution truth 1.00, and comprehension 0.18 for a total score of 0.79.",
|
|
"evidencePaths": [
|
|
"NexusReader.Infrastructure/Identity/TokenLimitHandler.cs",
|
|
"unknown",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs",
|
|
"NexusReader.Infrastructure/Identity/TokenLimitRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "pass",
|
|
"coverage": {
|
|
"totalDomains": 17,
|
|
"coveredDomains": 17,
|
|
"totalCapabilities": 6,
|
|
"coveredCapabilities": 6,
|
|
"totalFlows": 6,
|
|
"coveredFlows": 6
|
|
},
|
|
"issueCount": 0,
|
|
"issues": []
|
|
}
|
|
},
|
|
{
|
|
"documentFilename": "top-business-flows.md",
|
|
"documentTitle": "Top Business Flows",
|
|
"relativeOutputPath": "business/top-business-flows.md",
|
|
"collectionKind": "business",
|
|
"publicationTier": "primary",
|
|
"businessModel": {
|
|
"documentFilename": "top-business-flows.md",
|
|
"documentTitle": "Top Business Flows",
|
|
"summary": "Top Business Flows centers on account, ai token usage / limits, ai tokens and currently highlights User Authentication (Login/Register) Flow as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "account",
|
|
"name": "account",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_token_usage_limits",
|
|
"name": "ai token usage / limits",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens",
|
|
"name": "ai tokens",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ai_tokens_aitokensused_aitokenlimit",
|
|
"name": "ai tokens (aitokensused, aitokenlimit)",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "auth",
|
|
"name": "auth",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication",
|
|
"name": "authentication",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "author",
|
|
"name": "author",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Domain/Entities/Author.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Domain/Entities/Author.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authorization_policy",
|
|
"name": "authorization policy",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "command",
|
|
"name": "command",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "cookie_based_sign_in",
|
|
"name": "cookie based sign in",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook",
|
|
"name": "ebook",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Domain/Entities/Author.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Domain/Entities/Author.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_epub_ingestion",
|
|
"name": "ebook / epub ingestion",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding",
|
|
"name": "embedding",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "external_google_login",
|
|
"name": "external (google) login",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_authenticationstateprovider",
|
|
"name": "identity (authenticationstateprovider)",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "jwt",
|
|
"name": "jwt",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_knowledge_service_graph_summary",
|
|
"name": "knowledge (knowledge service, graph, summary)",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgegraph_knowledgecoordinator",
|
|
"name": "knowledgegraph / knowledgecoordinator",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_identity",
|
|
"name": "nexususer (identity)",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "pro_subscription",
|
|
"name": "pro subscription",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Security/Authorization/ProUserRequirement.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "query",
|
|
"name": "query",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_state",
|
|
"name": "quiz state",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_navigation",
|
|
"name": "reader navigation",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync_broadcast",
|
|
"name": "real time sync/broadcast",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "result",
|
|
"name": "result",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/ICommandHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "result_tresponse",
|
|
"name": "result<tresponse>",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/Abstractions/Messaging/IQuery.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_client_storage",
|
|
"name": "secure client storage",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "session_cookie_sign_in_orchestration",
|
|
"name": "session/cookie sign in orchestration",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscription_plan",
|
|
"name": "subscription / plan",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscriptionplan",
|
|
"name": "subscriptionplan",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "sync",
|
|
"name": "sync",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "tenantid",
|
|
"name": "tenantid",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "theme_focus_mode",
|
|
"name": "theme & focus mode",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token_refresh",
|
|
"name": "token refresh",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user",
|
|
"name": "user",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Application/DTOs/User/AuthorDto.cs",
|
|
"NexusReader.Application/Security/Authorization/ProUserHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "user_registration",
|
|
"name": "user registration",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Register.razor"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "userprofile",
|
|
"name": "userprofile",
|
|
"description": "Top Business Flows is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Profile.razor"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_user_authentication_login_register_flow",
|
|
"name": "User Authentication (Login/Register) Flow",
|
|
"description": "User Authentication (Login/Register) Flow coordinates 5 business-relevant steps beginning at NexusReader.UI.Shared/Pages/Account/Login.razor.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_user_authentication_login_register_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_knowledge_question_semantic_search_flow",
|
|
"name": "Knowledge Question / Semantic Search Flow",
|
|
"description": "Knowledge Question / Semantic Search Flow coordinates 5 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_knowledge_question_semantic_search_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ebook_retrieval_ingestion_flow",
|
|
"name": "Ebook Retrieval / Ingestion Flow",
|
|
"description": "Ebook Retrieval / Ingestion Flow coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ebook_retrieval_ingestion_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_token_attach_refresh_flow_client_http",
|
|
"name": "Token Attach & Refresh Flow (Client HTTP)",
|
|
"description": "Token Attach & Refresh Flow (Client HTTP) coordinates 4 business-relevant steps beginning at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_token_attach_refresh_flow_client_http"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) coordinates 8 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_program_top_level"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ensure_database_initialized"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_handle_subscription_success"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_user_authentication_login_register_flow",
|
|
"name": "User Authentication (Login/Register) Flow",
|
|
"description": "User Authentication (Login/Register) Flow starts at NexusReader.UI.Shared/Pages/Account/Login.razor and follows 9 grounded steps: Enter Handle Login -> Falls back to alternate path -> Evaluates branch condition -> Reads repository or persistence state -> ....",
|
|
"capabilityId": "capability_user_authentication_login_register_flow",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_entry",
|
|
"label": "Enter Handle Login",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_handlelogin_fallback_139_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_handlelogin_branch_134_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_handlelogin_repository_read_141_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_nexusreader_ui_shared_services_iidentityservice_cs_loginasync_133",
|
|
"label": "Call Login Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_unknown_nexusauth_submitloginform_js_via_ijsruntime_137",
|
|
"label": "Call nexus Auth",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"unknown"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_external_call",
|
|
"label": "await IdentityService.LoginAsync(...)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_persistence_read",
|
|
"label": "_errorMessage = result.Errors.FirstOrDefault()?.Message ?? \"Nieprawidłowy e-mail lub hasło.\";",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_ui_shared_pages_account_login_razor_handlelogin_result",
|
|
"label": "Complete Handle Login",
|
|
"kind": "result",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"unknown"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"unknown",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_knowledge_question_semantic_search_flow",
|
|
"name": "Knowledge Question / Semantic Search Flow",
|
|
"description": "Knowledge Question / Semantic Search Flow starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_knowledge_question_semantic_search_flow",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ebook_retrieval_ingestion_flow",
|
|
"name": "Ebook Retrieval / Ingestion Flow",
|
|
"description": "Ebook Retrieval / Ingestion Flow starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_ebook_retrieval_ingestion_flow",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_token_attach_refresh_flow_client_http",
|
|
"name": "Token Attach & Refresh Flow (Client HTTP)",
|
|
"description": "Token Attach & Refresh Flow (Client HTTP) starts at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs and follows 12 grounded steps: Enter Send Async -> Falls back to alternate path -> Calls external dependency -> Evaluates branch condition -> ....",
|
|
"capabilityId": "capability_token_attach_refresh_flow_client_http",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_entry",
|
|
"label": "Enter Send Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_fallback_73_6",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_external_call_27_0",
|
|
"label": "Calls external dependency",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_branch_45_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_return_95_11",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_return_109",
|
|
"label": "Return response",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_self_clonehttprequestmessageasync_93",
|
|
"label": "Call Clone Http Request Message Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_getsecurestring_47",
|
|
"label": "Call Get Secure String",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_refreshtokenasync_78",
|
|
"label": "Call Refresh Token Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_logoutasync_87",
|
|
"label": "Call Logout Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "var response = await base.SendAsync(request, cancellationToken);",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_program_top_level",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_ensure_database_initialized",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_handle_subscription_success",
|
|
"domainIds": [
|
|
"account",
|
|
"ai_token_usage_limits",
|
|
"ai_tokens",
|
|
"ai_tokens_aitokensused_aitokenlimit",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"authorization_policy",
|
|
"command",
|
|
"cookie_based_sign_in",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"external_google_login",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"nexususer_identity",
|
|
"pro_subscription",
|
|
"query",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"real_time_sync_broadcast",
|
|
"result",
|
|
"result_tresponse",
|
|
"secure_client_storage",
|
|
"session_cookie_sign_in_orchestration",
|
|
"subscription_plan",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"tenantid",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"user",
|
|
"user_registration",
|
|
"userprofile"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "top_business_flows_md",
|
|
"summaryCount": 15,
|
|
"dataFlowCount": 7,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 1,
|
|
"chunkingIssueCodes": [],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "ambiguous_business_flow_flow_knowledge_question_semantic_search_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_knowledge_question_semantic_search_flow",
|
|
"message": "Business flow Knowledge Question / Semantic Search Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_ebook_retrieval_ingestion_flow",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_ebook_retrieval_ingestion_flow",
|
|
"message": "Business flow Ebook Retrieval / Ingestion Flow is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": []
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_ebook_retrieval_ingestion_flow",
|
|
"name": "Ebook Retrieval / Ingestion Flow",
|
|
"rank": 1,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Ebook Retrieval / Ingestion Flow combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"rank": 2,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Ensure Database Initialized combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"rank": 3,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Handle Subscription Success combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_knowledge_question_semantic_search_flow",
|
|
"name": "Knowledge Question / Semantic Search Flow",
|
|
"rank": 4,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Knowledge Question / Semantic Search Flow combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"rank": 5,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Program (top level) combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_user_authentication_login_register_flow",
|
|
"name": "User Authentication (Login/Register) Flow",
|
|
"rank": 6,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because User Authentication (Login/Register) Flow combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.UI.Shared/Pages/Account/Login.razor",
|
|
"NexusReader.UI.Shared/Services/IIdentityService.cs",
|
|
"unknown",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_token_attach_refresh_flow_client_http",
|
|
"name": "Token Attach & Refresh Flow (Client HTTP)",
|
|
"rank": 7,
|
|
"score": 0.825,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.7,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Token Attach & Refresh Flow (Client HTTP) combines business value 0.95, evidence strength 0.70, architecture coverage 0.92, execution truth 1.00, and comprehension 0.18 for a total score of 0.82.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "pass",
|
|
"coverage": {
|
|
"totalDomains": 37,
|
|
"coveredDomains": 37,
|
|
"totalCapabilities": 7,
|
|
"coveredCapabilities": 7,
|
|
"totalFlows": 7,
|
|
"coveredFlows": 7
|
|
},
|
|
"issueCount": 0,
|
|
"issues": []
|
|
}
|
|
},
|
|
{
|
|
"documentFilename": "web-client-wasm.md",
|
|
"documentTitle": "Blazor WebAssembly Client: hosting, handlers, and platform services",
|
|
"relativeOutputPath": "flows/web-client-wasm.md",
|
|
"collectionKind": "flows",
|
|
"publicationTier": "secondary",
|
|
"businessModel": {
|
|
"documentFilename": "web-client-wasm.md",
|
|
"documentTitle": "Blazor WebAssembly Client: hosting, handlers, and platform services",
|
|
"summary": "Blazor WebAssembly Client: hosting, handlers, and platform services centers on application layer integration, auth, authentication and currently highlights WASM Authentication Header and Token Refresh as the most representative business flow.",
|
|
"domains": [
|
|
{
|
|
"id": "application_layer_integration",
|
|
"name": "application layer integration",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "auth",
|
|
"name": "auth",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "authentication",
|
|
"name": "authentication",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "author",
|
|
"name": "author",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "chapter_retrieval",
|
|
"name": "chapter retrieval",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "client_wasm",
|
|
"name": "client (wasm)",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicecontext",
|
|
"name": "devicecontext",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "devicetype",
|
|
"name": "devicetype",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "displayorientation",
|
|
"name": "displayorientation",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook",
|
|
"name": "ebook",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "ebook_epub_ingestion",
|
|
"name": "ebook / epub ingestion",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "embedding",
|
|
"name": "embedding",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "epub",
|
|
"name": "epub",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedness",
|
|
"name": "groundedness",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "groundedresponse",
|
|
"name": "groundedresponse",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "identity_authenticationstateprovider",
|
|
"name": "identity (authenticationstateprovider)",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "jwt",
|
|
"name": "jwt",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledge_knowledge_service_graph_summary",
|
|
"name": "knowledge (knowledge service, graph, summary)",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgegraph_knowledgecoordinator",
|
|
"name": "knowledgegraph / knowledgecoordinator",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "knowledgepacket",
|
|
"name": "knowledgepacket",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "localepubmetadata",
|
|
"name": "localepubmetadata",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "nexususer_identity",
|
|
"name": "nexususer (identity)",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "quiz_state",
|
|
"name": "quiz state",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "reader_navigation",
|
|
"name": "reader navigation",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "readerpage",
|
|
"name": "readerpage",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "real_time_sync_broadcast",
|
|
"name": "real time sync/broadcast",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "relevantcontext",
|
|
"name": "relevantcontext",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "secure_client_storage",
|
|
"name": "secure client storage",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "semanticsearch",
|
|
"name": "semanticsearch",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "shared_ui",
|
|
"name": "shared ui",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/NexusReader.Web.Client.csproj"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "subscriptionplan",
|
|
"name": "subscriptionplan",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "sync",
|
|
"name": "sync",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "theme_focus_mode",
|
|
"name": "theme & focus mode",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "token_refresh",
|
|
"name": "token refresh",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "vibration",
|
|
"name": "vibration",
|
|
"description": "Blazor WebAssembly Client: hosting, handlers, and platform services is currently grounded only by document anchors and still lacks a verified cross-file execution narrative.",
|
|
"relatedPaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WebPlatformService.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"capabilities": [
|
|
{
|
|
"id": "capability_wasm_authentication_header_and_token_refresh",
|
|
"name": "WASM Authentication Header and Token Refresh",
|
|
"description": "WASM Authentication Header and Token Refresh coordinates 5 business-relevant steps beginning at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs.",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_wasm_authentication_header_and_token_refresh"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_epub_content_retrieval_flow",
|
|
"name": "Epub Content Retrieval Flow",
|
|
"description": "Epub Content Retrieval Flow coordinates 4 business-relevant steps beginning at NexusReader.Web.Client/Services/WasmEpubService.cs.",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_epub_content_retrieval_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_knowledge_api_call_flow",
|
|
"name": "Knowledge API Call Flow",
|
|
"description": "Knowledge API Call Flow coordinates 4 business-relevant steps beginning at NexusReader.Web.Client/Services/WasmKnowledgeService.cs.",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_knowledge_api_call_flow"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) coordinates 8 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_program_top_level"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_ensure_database_initialized"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"id": "capability_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success coordinates 4 business-relevant steps beginning at NexusReader.Web/Program.cs.",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [
|
|
"flow_handle_subscription_success"
|
|
],
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
}
|
|
],
|
|
"flows": [
|
|
{
|
|
"id": "flow_wasm_authentication_header_and_token_refresh",
|
|
"name": "WASM Authentication Header and Token Refresh",
|
|
"description": "WASM Authentication Header and Token Refresh starts at NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs and follows 12 grounded steps: Enter Send Async -> Falls back to alternate path -> Calls external dependency -> Evaluates branch condition -> ....",
|
|
"capabilityId": "capability_wasm_authentication_header_and_token_refresh",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_entry",
|
|
"label": "Enter Send Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_fallback_73_6",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_external_call_27_0",
|
|
"label": "Calls external dependency",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_branch_45_1",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_sendasync_return_95_11",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_return_109",
|
|
"label": "Return response",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_self_clonehttprequestmessageasync_93",
|
|
"label": "Call Clone Http Request Message Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_getsecurestring_47",
|
|
"label": "Call Get Secure String",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_refreshtokenasync_78",
|
|
"label": "Call Refresh Token Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_nexusreader_application_abstractions_services_logoutasync_87",
|
|
"label": "Call Logout Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"NexusReader.Application.Abstractions.Services"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "protected override async Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_handlers_authenticationheaderhandler_cs_sendasync_external_call",
|
|
"label": "var response = await base.SendAsync(request, cancellationToken);",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_epub_content_retrieval_flow",
|
|
"name": "Epub Content Retrieval Flow",
|
|
"description": "Epub Content Retrieval Flow starts at NexusReader.Web.Client/Services/WasmEpubService.cs and follows 3 grounded steps: Enter Get Epub Content Async -> Evaluates branch condition -> Returns result.",
|
|
"capabilityId": "capability_epub_content_retrieval_flow",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmepubservice_cs_getepubcontentasync_entry",
|
|
"label": "Enter Get Epub Content Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmepubservice_cs_getepubcontentasync_getepubcontentasync_branch_26_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmepubservice_cs_getepubcontentasync_getepubcontentasync_return_29_1",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.89,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "low",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_knowledge_api_call_flow",
|
|
"name": "Knowledge API Call Flow",
|
|
"description": "Knowledge API Call Flow starts at NexusReader.Web.Client/Services/WasmKnowledgeService.cs and follows 7 grounded steps: Enter Get Relevant Context Async -> Evaluates branch condition -> Reads repository or persistence state -> Return Ok or Fail depending on deserialization -> ....",
|
|
"capabilityId": "capability_knowledge_api_call_flow",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_entry",
|
|
"label": "Enter Get Relevant Context Async",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_getrelevantcontextasync_branch_42_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_getrelevantcontextasync_repository_read_45_1",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_return_45",
|
|
"label": "Return Ok or Fail depending on deserialization",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_getrelevantcontextasync_return_45_2",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_external_call",
|
|
"label": "POST /api/knowledge/relevant with { query, tenantId }",
|
|
"kind": "integration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_client_services_wasmknowledgeservice_cs_getrelevantcontextasync_persistence_read",
|
|
"label": "return context != null ? Result.Ok(context) : Result.Fail(\"Failed to deserialize relevant context.\");",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"description": "Program (top level) starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_program_top_level",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"description": "Ensure Database Initialized starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_ensure_database_initialized",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
},
|
|
{
|
|
"id": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"description": "Handle Subscription Success starts at NexusReader.Web/Program.cs and follows 12 grounded steps: Enter Program (top level) -> Falls back to alternate path -> Repeats work over a collection or condition -> Guards early exit or rejection path -> ....",
|
|
"capabilityId": "capability_handle_subscription_success",
|
|
"domainIds": [
|
|
"application_layer_integration",
|
|
"auth",
|
|
"authentication",
|
|
"author",
|
|
"chapter_retrieval",
|
|
"client_wasm",
|
|
"devicecontext",
|
|
"devicetype",
|
|
"displayorientation",
|
|
"ebook",
|
|
"ebook_epub_ingestion",
|
|
"embedding",
|
|
"epub",
|
|
"groundedness",
|
|
"groundedresponse",
|
|
"identity_authenticationstateprovider",
|
|
"jwt",
|
|
"knowledge_knowledge_service_graph_summary",
|
|
"knowledgegraph_knowledgecoordinator",
|
|
"knowledgepacket",
|
|
"localepubmetadata",
|
|
"nexususer_identity",
|
|
"quiz_state",
|
|
"reader_navigation",
|
|
"readerpage",
|
|
"real_time_sync_broadcast",
|
|
"relevantcontext",
|
|
"secure_client_storage",
|
|
"semanticsearch",
|
|
"shared_ui",
|
|
"subscriptionplan",
|
|
"sync",
|
|
"theme_focus_mode",
|
|
"token_refresh",
|
|
"vibration"
|
|
],
|
|
"entrypointPaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"supportingFlowIds": [],
|
|
"steps": [
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_entry",
|
|
"label": "Enter Program (top level)",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_fallback_66_1",
|
|
"label": "Falls back to alternate path",
|
|
"kind": "fallback",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_loop_186_12",
|
|
"label": "Repeats work over a collection or condition",
|
|
"kind": "iteration",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_guard_clause_255_32",
|
|
"label": "Guards early exit or rejection path",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_switch_385_80",
|
|
"label": "Branches across multiple outcomes",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_branch_62_0",
|
|
"label": "Evaluates branch condition",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_repository_read_125_2",
|
|
"label": "Reads repository or persistence state",
|
|
"kind": "persistence",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_return_137_9",
|
|
"label": "Returns result",
|
|
"kind": "return",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_program_top_level_validation_171_11",
|
|
"label": "Validates input or state",
|
|
"kind": "decision",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_application_dependencyinjection_cs_addapplication_78",
|
|
"label": "Call Add Application",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_infrastructure_dependencyinjection_cs_addinfrastructure_79",
|
|
"label": "Call Add Infrastructure",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "nexusreader_web_program_cs_program_top_level_nexusreader_data_persistence_dbinitializer_cs_dbinitializer_seedasync_196",
|
|
"label": "Call Db Initializer",
|
|
"kind": "processing",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs"
|
|
]
|
|
}
|
|
],
|
|
"businessValue": 0.95,
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high",
|
|
"unknowns": []
|
|
}
|
|
],
|
|
"generatedFrom": {
|
|
"contextBagId": "web_client_wasm_md",
|
|
"summaryCount": 8,
|
|
"dataFlowCount": 6,
|
|
"artifactStrategy": "structured-artifacts-first",
|
|
"semanticChunkCount": 1,
|
|
"chunkingIssueCodes": [],
|
|
"targetedRereadCount": 0,
|
|
"targetedRereadPaths": []
|
|
},
|
|
"gaps": [
|
|
{
|
|
"id": "low_confidence_flow_flow_epub_content_retrieval_flow",
|
|
"code": "low-confidence-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_epub_content_retrieval_flow",
|
|
"message": "Business flow Epub Content Retrieval Flow remains low confidence.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_wasm_authentication_header_and_token_refresh",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_wasm_authentication_header_and_token_refresh",
|
|
"message": "Business flow WASM Authentication Header and Token Refresh is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
]
|
|
},
|
|
{
|
|
"id": "ambiguous_business_flow_flow_program_top_level",
|
|
"code": "ambiguous-business-flow",
|
|
"severity": "warn",
|
|
"targetType": "flow",
|
|
"targetId": "flow_program_top_level",
|
|
"message": "Business flow Program (top level) is ambiguous relative to another candidate flow in the same scope.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
]
|
|
}
|
|
],
|
|
"unknowns": []
|
|
},
|
|
"rankedFlows": [
|
|
{
|
|
"flowId": "flow_ensure_database_initialized",
|
|
"name": "Ensure Database Initialized",
|
|
"rank": 1,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Ensure Database Initialized combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_handle_subscription_success",
|
|
"name": "Handle Subscription Success",
|
|
"rank": 2,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Handle Subscription Success combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_program_top_level",
|
|
"name": "Program (top level)",
|
|
"rank": 3,
|
|
"score": 0.861,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.8,
|
|
"architectureCoverage": 1,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because Program (top level) combines business value 0.95, evidence strength 0.80, architecture coverage 1.00, execution truth 1.00, and comprehension 0.18 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web/Program.cs",
|
|
"NexusReader.Application/DependencyInjection.cs",
|
|
"NexusReader.Infrastructure/DependencyInjection.cs",
|
|
"NexusReader.Data.Persistence/DbInitializer.cs",
|
|
"NexusReader.Infrastructure/RealTime/SyncHub.cs",
|
|
"NexusReader.Application.Abstractions.Persistence/IEpubReader.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_knowledge_api_call_flow",
|
|
"name": "Knowledge API Call Flow",
|
|
"rank": 4,
|
|
"score": 0.858,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.743,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.42
|
|
},
|
|
"reason": "Ranked because Knowledge API Call Flow combines business value 0.95, evidence strength 0.74, architecture coverage 0.92, execution truth 1.00, and comprehension 0.42 for a total score of 0.86.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmKnowledgeService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_wasm_authentication_header_and_token_refresh",
|
|
"name": "WASM Authentication Header and Token Refresh",
|
|
"rank": 5,
|
|
"score": 0.825,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.95,
|
|
"evidenceStrength": 0.7,
|
|
"architectureCoverage": 0.917,
|
|
"executionTruth": 1,
|
|
"userComprehension": 0.18
|
|
},
|
|
"reason": "Ranked because WASM Authentication Header and Token Refresh combines business value 0.95, evidence strength 0.70, architecture coverage 0.92, execution truth 1.00, and comprehension 0.18 for a total score of 0.82.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Handlers/AuthenticationHeaderHandler.cs",
|
|
"self",
|
|
"NexusReader.Application.Abstractions.Services",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "high"
|
|
},
|
|
{
|
|
"flowId": "flow_epub_content_retrieval_flow",
|
|
"name": "Epub Content Retrieval Flow",
|
|
"rank": 6,
|
|
"score": 0.737,
|
|
"scoreBreakdown": {
|
|
"businessValue": 0.89,
|
|
"evidenceStrength": 0.76,
|
|
"architectureCoverage": 0.75,
|
|
"executionTruth": 0.68,
|
|
"userComprehension": 0.42
|
|
},
|
|
"reason": "Ranked because Epub Content Retrieval Flow combines business value 0.89, evidence strength 0.76, architecture coverage 0.75, execution truth 0.68, and comprehension 0.42 for a total score of 0.74.",
|
|
"evidencePaths": [
|
|
"NexusReader.Web.Client/Services/WasmEpubService.cs",
|
|
"NexusReader.Web.Client/Program.cs",
|
|
"NexusReader.Maui/MauiProgram.cs",
|
|
"NexusReader.Web/Program.cs"
|
|
],
|
|
"confidence": "low"
|
|
}
|
|
],
|
|
"validation": {
|
|
"status": "warn",
|
|
"coverage": {
|
|
"totalDomains": 35,
|
|
"coveredDomains": 35,
|
|
"totalCapabilities": 6,
|
|
"coveredCapabilities": 6,
|
|
"totalFlows": 6,
|
|
"coveredFlows": 6
|
|
},
|
|
"issueCount": 1,
|
|
"issues": [
|
|
{
|
|
"code": "low-flow-confidence",
|
|
"severity": "warn",
|
|
"documentFilename": "web-client-wasm.md",
|
|
"targetType": "flow",
|
|
"targetId": "flow_epub_content_retrieval_flow",
|
|
"message": "Business flow Epub Content Retrieval Flow is low confidence.",
|
|
"evidenceCount": 4,
|
|
"confidence": "low"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
} |