Phase 1: Wiki-Link Graph Indexing - WikiLinkParser: extract [[links]] from markdown - WikiLinkGraph: BFS traversal, reachable docs, backlinks - Support relative path resolution (../../../) Phase 2: ScoringPipeline trait (SOLID design) - DocumentScorer trait: single interface for all scorers - GlobalTfIdfScorer, ProjectTfIdfScorer, SemanticScorer - MetadataBoostingScorer (decorator pattern) - ScoringPipeline: orchestrate multiple scorers with RRF fusion - Benefits: add new scorers without modifying existing code Phase 7: RBAC + PolicyProvider trait - PolicyProvider trait: pluggable backends (Vault, Postgres, Redis) - VaultPolicyProvider: load YAML from vault/projects/* and vault/shared/skills/* - MockPolicyProvider: for testing (no I/O) - AccessChecker trait: single-purpose RBAC checks - AccessLevelChecker, RoleChecker, PermissionChecker - AccessDecisionEngine: orchestrate checkers with short-circuit eval - AuditLogger trait: pluggable audit backends Test Fixtures (DRY principle) - OidcClaimsBuilder: fluent API for test data - AccessPolicyBuilder: fluent API for policies - MockPolicyProvider, MockAuditLogger: testing mocks All modules compile and unit tests pass.
23 lines
552 B
Rust
23 lines
552 B
Rust
pub mod endpoints;
|
|
pub mod http_server;
|
|
pub mod ingest_worker;
|
|
pub mod query_worker;
|
|
pub mod rate_limiter;
|
|
pub mod idempotency;
|
|
pub mod jwt_validator;
|
|
pub mod opensearch_client;
|
|
pub mod dual_write_indexer;
|
|
pub mod queue_adapter;
|
|
pub mod gateway_queue_adapter;
|
|
pub mod queue_worker;
|
|
pub mod query_optimizer;
|
|
pub mod simple_hybrid_search;
|
|
pub mod accuracy_metrics;
|
|
pub mod context_endpoint;
|
|
pub mod verify;
|
|
pub mod rbac;
|
|
|
|
pub use endpoints::{IngestQueue, IngestRequest, JobStatus};
|
|
pub use ingest_worker::IngestWorker;
|
|
pub use query_worker::QueryWorker;
|