This commit is contained in:
2026-05-25 14:02:56 +02:00
parent 29bd42e52e
commit 758b152a0c
1798 changed files with 1991205 additions and 481068 deletions
@@ -0,0 +1,58 @@
# Author
- File ID: file:1y56eud:author-cs
- Path: NexusReader.Domain/Entities/Author.cs
- Role: entity
- Layer: domain
## Purpose
Domain entity representing an author with identity, name, and a collection of authored ebooks for persistence and ORM mapping.
## Key Details
POCO domain entity with data annotations for validation and schema ([Key], [Required], [MaxLength(255)]). Ebooks navigation collection is virtual and pre-initialized to List<Ebook>.
## Symbols
- Author: Domain entity representing an author with identity, name, and a collection of authored ebooks for persistence and ORM mapping.
- Author: Represents an author record for the domain/ORM layer, including primary key, name and related ebooks.
## Dependencies
- imports NexusReader.Domain/Entities/Ebook.cs
## Calls
- No resolved calls.
## Coverage
- Symbols: 2
- Executable symbols: 0
- Executable symbols with control flow: 0
- Grounded edges: 3
- Unresolved references: 0
- Control-flow fragments: 0
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 1
- Generated diagrams: 1
## Diagrams
### Author Neighborhood
```mermaid
flowchart LR
class_1nsniny_author("Author")
file_1y56eud_author_cs("Author")
file_lcvwj6_ebook_cs[/"Ebook"/]
type_y9wry3_author[/"Author"/]
file_1y56eud_author_cs -->|Ebook| file_lcvwj6_ebook_cs
```
## Diagram Validation
- Status: pass
@@ -0,0 +1,61 @@
# Ebook
- File ID: file:lcvwj6:ebook-cs
- Path: NexusReader.Domain/Entities/Ebook.cs
- Role: entity
- Layer: domain
## Purpose
Defines the domain entity representing an uploaded or owned e-book, including metadata, relationships (Author, NexusUser), tenancy and ingestion/readiness status for application use and persistence.
## Key Details
POCO entity with EF Core data annotations: primary key (Id), required fields, max length constraints, foreign keys to Author and NexusUser, defaults for Id, AddedDate, TenantId and Progress, and a readiness flag (IsReadyForReading) used to indicate AI processing completion.
## Symbols
- Ebook: Defines the domain entity representing an uploaded or owned e-book, including metadata, relationships (Author, NexusUser), tenancy and ingestion/readiness status for application use and persistence.
- Ebook: Represents an e-book record stored in the domain/data model with metadata, relationships and ingestion/readiness state.
## Dependencies
- imports NexusReader.Domain/Entities/Author.cs
- imports NexusReader.Domain/Entities/NexusUser.cs
## Calls
- No resolved calls.
## Coverage
- Symbols: 2
- Executable symbols: 0
- Executable symbols with control flow: 0
- Grounded edges: 4
- Unresolved references: 0
- Control-flow fragments: 0
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 1
- Generated diagrams: 1
## Diagrams
### Ebook Neighborhood
```mermaid
flowchart LR
class_1k2zgaa_ebook("Ebook")
file_lcvwj6_ebook_cs("Ebook")
file_1y56eud_author_cs[/"Author"/]
file_xcxh5w_nexususer_cs[/"NexusUser"/]
type_kzfhbn_ebook[/"Ebook"/]
file_lcvwj6_ebook_cs -->|Author| file_1y56eud_author_cs
file_lcvwj6_ebook_cs -->|NexusUser| file_xcxh5w_nexususer_cs
```
## Diagram Validation
- Status: pass
@@ -0,0 +1,64 @@
# KnowledgeUnit
- File ID: file:h6a0xu:knowledgeunit-cs
- Path: NexusReader.Domain/Entities/KnowledgeUnit.cs
- Role: entity
- Layer: domain
## Purpose
Defines the domain entity KnowledgeUnit representing a unit of extracted/ingested knowledge (content, type, metadata, links) stored per tenant with EF Core mapping attributes.
## Key Details
Primary key Id is intended as a content hash (comment). CreatedAt defaults to UTC now. Uses EF Core data annotations for schema (Key, Required, MaxLength, ForeignKey). Navigation properties are initialized to avoid null collections.
## Symbols
- KnowledgeUnit: Defines the domain entity KnowledgeUnit representing a unit of extracted/ingested knowledge (content, type, metadata, links) stored per tenant with EF Core mapping attributes.
- KnowledgeUnit: Represents a stored piece of knowledge (content + type + metadata) with tenant scoping and links to other KnowledgeUnits and an optional Ebook.
## Dependencies
- imports NexusReader.Domain/Entities/Ebook.cs
- imports NexusReader.Domain/Entities/KnowledgeUnitLink.cs
- imports NexusReader.Domain/Enums/KnowledgeUnitType.cs
## Calls
- No resolved calls.
## Coverage
- Symbols: 2
- Executable symbols: 0
- Executable symbols with control flow: 0
- Grounded edges: 5
- Unresolved references: 0
- Control-flow fragments: 0
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 1
- Generated diagrams: 1
## Diagrams
### KnowledgeUnit Neighborhood
```mermaid
flowchart LR
class_fvtez6_knowledgeunit("KnowledgeUnit")
file_h6a0xu_knowledgeunit_cs("KnowledgeUnit")
file_17um7nh_knowledgeunittype_cs[/"KnowledgeUnitType"/]
file_1m6x5qy_knowledgeunitlink_cs[/"KnowledgeUnitLink"/]
file_lcvwj6_ebook_cs[/"Ebook"/]
type_sahnml_knowledgeunit[/"KnowledgeUnit"/]
file_h6a0xu_knowledgeunit_cs -->|KnowledgeUnitType| file_17um7nh_knowledgeunittype_cs
file_h6a0xu_knowledgeunit_cs -->|KnowledgeUnitLink| file_1m6x5qy_knowledgeunitlink_cs
file_h6a0xu_knowledgeunit_cs -->|Ebook| file_lcvwj6_ebook_cs
```
## Diagram Validation
- Status: pass
@@ -0,0 +1,58 @@
# KnowledgeUnitLink
- File ID: file:1m6x5qy:knowledgeunitlink-cs
- Path: NexusReader.Domain/Entities/KnowledgeUnitLink.cs
- Role: entity
- Layer: domain
## Purpose
Defines the domain entity KnowledgeUnitLink which models a directed relation between two KnowledgeUnit entities with metadata (relation type) and EF Core persistence annotations.
## Key Details
Entity uses EF Core data annotations for schema constraints and navigation: Id is PK, SourceUnitId/TargetUnitId are required string FKs (max 128), RelationType is required (max 50) with default "References", and navigation properties reference KnowledgeUnit via [ForeignKey].
## Symbols
- KnowledgeUnitLink: Defines the domain entity KnowledgeUnitLink which models a directed relation between two KnowledgeUnit entities with metadata (relation type) and EF Core persistence annotations.
- KnowledgeUnitLink: Represents a directed link between two KnowledgeUnit entities with a typed relation for persistence via EF Core.
## Dependencies
- imports NexusReader.Domain/Entities/KnowledgeUnit.cs
## Calls
- No resolved calls.
## Coverage
- Symbols: 2
- Executable symbols: 0
- Executable symbols with control flow: 0
- Grounded edges: 3
- Unresolved references: 0
- Control-flow fragments: 0
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 1
- Generated diagrams: 1
## Diagrams
### KnowledgeUnitLink Neighborhood
```mermaid
flowchart LR
class_mqaz6_knowledgeunitlink("KnowledgeUnitLink")
file_1m6x5qy_knowledgeunitlink_cs("KnowledgeUnitLink")
file_h6a0xu_knowledgeunit_cs[/"KnowledgeUnit"/]
type_wq74ui_knowledgeunitlink[/"KnowledgeUnitLink"/]
file_1m6x5qy_knowledgeunitlink_cs -->|KnowledgeUnit| file_h6a0xu_knowledgeunit_cs
```
## Diagram Validation
- Status: pass
@@ -0,0 +1,63 @@
# NexusUser
- File ID: file:xcxh5w:nexususer-cs
- Path: NexusReader.Domain/Entities/NexusUser.cs
- Role: entity
- Layer: domain
## Purpose
Domain entity representing an application user, extending ASP.NET IdentityUser with multi-tenant, subscription and usage tracking plus navigation collections for related domain data.
## Key Details
NexusUser extends IdentityUser and embeds multi-tenancy (TenantId default 'global'), subscription linkage (SubscriptionPlanId + navigation), AI token accounting (AITokenLimit/AITokensUsed/LastAiActionDate) and collections for owned ebooks and quiz results; no runtime methods are defined in this file.
## Symbols
- NexusUser: Domain entity representing an application user, extending ASP.NET IdentityUser with multi-tenant, subscription and usage tracking plus navigation collections for related domain data.
- NexusUser: Represents a user in the NexusReader domain with tenant, subscription and AI-usage metadata plus relationships to ebooks and quiz results.
## Dependencies
- No resolved dependencies.
## Calls
- No resolved calls.
## Unresolved References
- dependency-target: Microsoft.AspNetCore.Identity.IdentityUser
- dependency-target: SubscriptionPlan (NexusReader.Domain.Entities)
- dependency-target: Ebook (NexusReader.Domain.Entities)
- dependency-target: QuizResult (NexusReader.Domain.Entities)
## Coverage
- Symbols: 2
- Executable symbols: 0
- Executable symbols with control flow: 0
- Grounded edges: 2
- Unresolved references: 4
- Control-flow fragments: 0
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 1
- Generated diagrams: 1
## Diagrams
### NexusUser Neighborhood
```mermaid
flowchart LR
class_q7xqjm_nexususer("NexusUser")
file_xcxh5w_nexususer_cs("NexusUser")
type_1fmha7h_nexususer[/"NexusUser"/]
```
## Diagram Validation
- Status: pass
@@ -0,0 +1,76 @@
# QuizResult
- File ID: file:1wyr0y8:quizresult-cs
- Path: NexusReader.Domain/Entities/QuizResult.cs
- Role: entity
- Layer: domain
## Purpose
Domain entity that models and persists the result of an AI-generated quiz taken by a user, including score, totals, tenant scoping and completion timestamp.
## Key Details
Entity includes attribute metadata for EF (Key, Required, ForeignKey, MaxLength), default initializers (Guid.NewGuid, DateTime.UtcNow), and a computed Percentage property which guards against division by zero.
## Symbols
- QuizResult: Domain entity that models and persists the result of an AI-generated quiz taken by a user, including score, totals, tenant scoping and completion timestamp.
- .ctor (implicit): Implicit object initializer that sets default values for several properties when a QuizResult is created.
- Percentage (getter): Computes the score percentage of correct answers; guards against division by zero.
- QuizResult: Represents a persisted quiz attempt by a user, including score details, topic and tenant context.
## Dependencies
- No resolved dependencies.
## Calls
- No resolved calls.
## Coverage
- Symbols: 4
- Executable symbols: 2
- Executable symbols with control flow: 2
- Grounded edges: 4
- Unresolved references: 0
- Control-flow fragments: 2
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 2
- Generated diagrams: 2
## Control Flow Fragments
- .ctor (implicit): 7 nodes, 6 edges, 0 jumps, 0 unsupported constructs
- Percentage (getter): 6 nodes, 6 edges, 0 jumps, 0 unsupported constructs
## Diagrams
### QuizResult Neighborhood
```mermaid
flowchart LR
class_xbp5rm_quizresult("QuizResult")
file_1wyr0y8_quizresult_cs("QuizResult")
method_160zwvx_ctor_implicit[[".ctor (implicit)"]]
method_ml3mse_percentage_getter[["Percentage (getter)"]]
type_1j77tf7_quizresult[/"QuizResult"/]
```
### QuizResult Execution Overview
```mermaid
flowchart TD
class_xbp5rm_quizresult("QuizResult")
method_160zwvx_ctor_implicit[[".ctor (implicit)"]]
method_ml3mse_percentage_getter[["Percentage (getter)"]]
class_xbp5rm_quizresult -->|contains| method_160zwvx_ctor_implicit
class_xbp5rm_quizresult -->|contains| method_ml3mse_percentage_getter
```
## Diagram Validation
- Status: pass
@@ -0,0 +1,61 @@
# SemanticKnowledgeCache
- File ID: file:1d4ycw2:semanticknowledgecache-cs
- Path: NexusReader.Domain/Entities/SemanticKnowledgeCache.cs
- Role: entity
- Layer: domain
## Purpose
Defines a domain entity that persists cached semantic knowledge (original text, model/prompt metadata, JSON payload) and its vector embedding for semantic search.
## Key Details
Entity stores deduplicated cached semantic artifacts keyed by ContentHash, includes model/prompt metadata, tenant scoping, JSON payload, optional Pgvector embedding (commented as 768 dims), and a UTC creation timestamp.
## Symbols
- SemanticKnowledgeCache: Defines a domain entity that persists cached semantic knowledge (original text, model/prompt metadata, JSON payload) and its vector embedding for semantic search.
- SemanticKnowledgeCache: Represents a cached semantic artifact including original text, serialized JSON, model/prompt metadata, tenant scoping, and an optional vector embedding used for semantic search.
## Dependencies
- No resolved dependencies.
## Calls
- No resolved calls.
## Unresolved References
- dependency-target: Pgvector (external package)
- dependency-target: System.ComponentModel.DataAnnotations (framework)
## Coverage
- Symbols: 2
- Executable symbols: 0
- Executable symbols with control flow: 0
- Grounded edges: 2
- Unresolved references: 2
- Control-flow fragments: 0
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 1
- Generated diagrams: 1
## Diagrams
### SemanticKnowledgeCache Neighborhood
```mermaid
flowchart LR
class_e0216a_semanticknowledgecache("SemanticKnowledgeCache")
file_1d4ycw2_semanticknowledgecache_cs("SemanticKnowledgeCache")
type_1gdonul_semanticknowledgecache[/"SemanticKnowledgeCache"/]
```
## Diagram Validation
- Status: pass
@@ -0,0 +1,56 @@
# SubscriptionPlan
- File ID: file:1b03oou:subscriptionplan-cs
- Path: NexusReader.Domain/Entities/SubscriptionPlan.cs
- Role: entity
- Layer: domain
## Purpose
Defines the domain entity SubscriptionPlan which models subscription tiers, pricing, and token/quota limits for the application.
## Key Details
Simple POCO entity used for persisting subscription tier metadata; includes constants for well-known plan names and IDs, token quota fields (limit + unlimited flag), monthly price, and Stripe product id for billing integration.
## Symbols
- SubscriptionPlan: Defines the domain entity SubscriptionPlan which models subscription tiers, pricing, and token/quota limits for the application.
- SubscriptionPlan: Represents a subscription tier including identifiers, human name, token limits, pricing, and Stripe product mapping.
## Dependencies
- No resolved dependencies.
## Calls
- No resolved calls.
## Coverage
- Symbols: 2
- Executable symbols: 0
- Executable symbols with control flow: 0
- Grounded edges: 2
- Unresolved references: 0
- Control-flow fragments: 0
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 1
- Generated diagrams: 1
## Diagrams
### SubscriptionPlan Neighborhood
```mermaid
flowchart LR
class_1ajhp9e_subscriptionplan("SubscriptionPlan")
file_1b03oou_subscriptionplan_cs("SubscriptionPlan")
type_1cvgax3_subscriptionplan[/"SubscriptionPlan"/]
```
## Diagram Validation
- Status: pass
@@ -0,0 +1,54 @@
# KnowledgeUnitType
- File ID: file:17um7nh:knowledgeunittype-cs
- Path: NexusReader.Domain/Enums/KnowledgeUnitType.cs
- Role: entity
- Layer: domain
## Purpose
Defines the KnowledgeUnitType enumeration used to categorize different kinds of knowledge units across the domain.
## Key Details
Simple domain enum used to tag or switch behavior based on the type of knowledge unit; no runtime logic in this file.
## Symbols
- KnowledgeUnitType: Enumerates the possible kinds of knowledge units (Section, Table, Definition, etc.) used by the domain.
## Dependencies
- No resolved dependencies.
## Calls
- No resolved calls.
## Coverage
- Symbols: 1
- Executable symbols: 0
- Executable symbols with control flow: 0
- Grounded edges: 1
- Unresolved references: 0
- Control-flow fragments: 0
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 1
- Generated diagrams: 1
## Diagrams
### KnowledgeUnitType Neighborhood
```mermaid
flowchart LR
file_17um7nh_knowledgeunittype_cs("KnowledgeUnitType")
type_1jmw5xq_knowledgeunittype[/"KnowledgeUnitType"/]
```
## Diagram Validation
- Status: pass
@@ -0,0 +1,59 @@
# NexusReader.Domain
- File ID: file:167q7jt:nexusreader-domain-csproj
- Path: NexusReader.Domain/NexusReader.Domain.csproj
- Role: config
- Layer: infrastructure
## Purpose
Proj file for the NexusReader.Domain project: declares build/runtime settings and package dependencies for the Domain assembly.
## Key Details
Project uses SDK-style csproj (Microsoft.NET.Sdk). Implicit usings enabled, nullable reference types enabled, runtime configuration files generation enabled. Declares Pgvector and Microsoft.Extensions.Identity.Stores package dependencies.
## Symbols
- No extracted symbols.
## Dependencies
- No resolved dependencies.
## Calls
- No resolved calls.
## Unresolved References
- dependency-target: TargetFramework: net10.0 (line 4)
- dependency-target: PackageReference: Pgvector (line 11)
- dependency-target: PackageReference: Microsoft.Extensions.Identity.Stores (line 12)
## Coverage
- Symbols: 0
- Executable symbols: 0
- Executable symbols with control flow: 0
- Grounded edges: 0
- Unresolved references: 3
- Control-flow fragments: 0
- Unresolved jumps: 0
- Unsupported constructs: 0
- Control-flow coverage: 100%
- Required diagrams: 1
- Generated diagrams: 1
## Diagrams
### NexusReader.Domain Neighborhood
```mermaid
flowchart LR
file_167q7jt_nexusreader_domain_csproj("NexusReader.Domain")
```
## Diagram Validation
- Status: pass