up
Some checks failed
Signals CI & Image / signals-ci (push) Has been cancelled
Signals Reachability Scoring & Events / reachability-smoke (push) Has been cancelled
Signals Reachability Scoring & Events / sign-and-upload (push) Has been cancelled
Manifest Integrity / Validate Schema Integrity (push) Has been cancelled
Manifest Integrity / Validate Contract Documents (push) Has been cancelled
Manifest Integrity / Validate Pack Fixtures (push) Has been cancelled
Manifest Integrity / Audit SHA256SUMS Files (push) Has been cancelled
Manifest Integrity / Verify Merkle Roots (push) Has been cancelled
Docs CI / lint-and-preview (push) Has been cancelled
Some checks failed
Signals CI & Image / signals-ci (push) Has been cancelled
Signals Reachability Scoring & Events / reachability-smoke (push) Has been cancelled
Signals Reachability Scoring & Events / sign-and-upload (push) Has been cancelled
Manifest Integrity / Validate Schema Integrity (push) Has been cancelled
Manifest Integrity / Validate Contract Documents (push) Has been cancelled
Manifest Integrity / Validate Pack Fixtures (push) Has been cancelled
Manifest Integrity / Audit SHA256SUMS Files (push) Has been cancelled
Manifest Integrity / Verify Merkle Roots (push) Has been cancelled
Docs CI / lint-and-preview (push) Has been cancelled
This commit is contained in:
@@ -22,7 +22,7 @@ Deliver the VEX Consensus Lens service that normalizes VEX evidence, computes de
|
||||
|
||||
## Tooling
|
||||
- .NET 10 preview; background workers + minimal API.
|
||||
- PostgreSQL/Mongo for consensus projection; Redis for caching if needed.
|
||||
- In-memory consensus projection store by default; PostgreSQL provider planned; Redis for caching if needed.
|
||||
- Signature verification libraries (Ed25519, DSSE, PKIX) and mapping utilities (CPE→purl).
|
||||
|
||||
## Definition of Done
|
||||
|
||||
@@ -155,7 +155,9 @@ public static class VexLensServiceCollectionExtensions
|
||||
IServiceCollection services,
|
||||
VexLensStorageOptions options)
|
||||
{
|
||||
switch (options.Driver.ToLowerInvariant())
|
||||
var driver = (options.Driver ?? "memory").Trim();
|
||||
|
||||
switch (driver.ToLowerInvariant())
|
||||
{
|
||||
case "memory":
|
||||
services.TryAddSingleton<IConsensusProjectionStore>(sp =>
|
||||
@@ -165,19 +167,9 @@ public static class VexLensServiceCollectionExtensions
|
||||
});
|
||||
break;
|
||||
|
||||
case "mongo":
|
||||
// MongoDB storage would be registered here
|
||||
// For now, fall back to in-memory
|
||||
services.TryAddSingleton<IConsensusProjectionStore>(sp =>
|
||||
{
|
||||
var emitter = sp.GetRequiredService<IConsensusEventEmitter>();
|
||||
return new InMemoryConsensusProjectionStore(emitter);
|
||||
});
|
||||
break;
|
||||
|
||||
default:
|
||||
throw new InvalidOperationException(
|
||||
$"Unknown VexLens storage driver: {options.Driver}");
|
||||
$"Unsupported VexLens storage driver: '{options.Driver}'. Supported drivers: memory.");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,21 +47,16 @@ public sealed class VexLensOptions
|
||||
public sealed class VexLensStorageOptions
|
||||
{
|
||||
/// <summary>
|
||||
/// Storage driver: "memory" for testing, "mongo" for production.
|
||||
/// Default is "memory".
|
||||
/// Storage driver for consensus projections.
|
||||
/// Supported drivers: "memory" (default) until a persistent provider is introduced.
|
||||
/// </summary>
|
||||
public string Driver { get; set; } = "memory";
|
||||
|
||||
/// <summary>
|
||||
/// MongoDB connection string when using mongo driver.
|
||||
/// Optional connection string for persistent storage drivers (unused for in-memory).
|
||||
/// </summary>
|
||||
public string? ConnectionString { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Database name for MongoDB storage.
|
||||
/// </summary>
|
||||
public string? Database { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Collection name for consensus projections.
|
||||
/// </summary>
|
||||
|
||||
@@ -20,3 +20,9 @@
|
||||
| VEXLENS-ORCH-34-001 | BLOCKED | SPRINT_0129_0001_0001_policy_reasoning | VEXLENS-ORCH-33-001 | Emit completion events to orchestrator ledger; needs job spec. |
|
||||
|
||||
Status source of truth: `docs/implplan/SPRINT_0129_0001_0001_policy_reasoning.md`. Update both files together. Keep UTC dates when advancing status.
|
||||
|
||||
## Sprint 3410_0001_0001 · MongoDB Final Removal
|
||||
|
||||
| Task ID | Status | Sprint | Dependency | Notes |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| VEXLENS-3410-001 | DONE | SPRINT_3410_0001_0001_mongodb_final_removal.md | - | Removed MongoDB storage driver path from options/DI; VexLens now in-memory only until persistent provider (Postgres) lands. |
|
||||
|
||||
Reference in New Issue
Block a user