docs: module dossier + install/quickstart sync for truthful cutover sprints

- API_CLI_REFERENCE.md, INSTALL_GUIDE.md, quickstart.md, architecture/integrations.md, dev/DEV_ENVIRONMENT_SETUP.md, integrations/LOCAL_SERVICES.md: reflect real-service wiring.
- docs/modules/**: module dossier updates across the modules touched by SPRINT_20260415_001..007 + SPRINT_20260416_003..017 + SPRINT_20260417_018..024 + SPRINT_20260418_025 + SPRINT_20260419_026.
- docs/features/checked/web/**: update feature notes where UI changed.
- docs/qa/feature-checks/runs/web/evidence-presentation-ux/: QA evidence artifacts.
- docs/setup/**, docs/technical/**: align with setup wizard contracts.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
master
2026-04-19 14:45:09 +03:00
parent ad62ba7f76
commit fdf95e0f46
67 changed files with 590 additions and 360 deletions

View File

@@ -167,7 +167,12 @@ The Scheduler service re-evaluates already-cataloged images when intelligence ch
**Deployables:** `StellaOps.Scheduler.WebService` (stateless API + embedded worker BackgroundServices). Worker processes run in the same host by default (`Scheduler:Worker:Embedded=true`). For K8s scale-out, set `Embedded=false` and deploy `StellaOps.Scheduler.Worker.Host` separately.
**Database:** `SchedulerDbContext` (schema `scheduler`, 11 entities). Owns `schedules`, `runs`, `impact_cursors`, `locks`, `audit` tables. See archived docs: `docs-archived/modules/scheduler/architecture.md`.
**Database:** `SchedulerDbContext` (schema `scheduler`, 11 entities). Owns `schedules`, `runs`, `impact_cursors`, `locks`, `audit`, and canonical `scheduler.jobs` queue/state rows used by the resolver-job API when `Scheduler:Storage` is configured. See archived docs: `docs-archived/modules/scheduler/architecture.md`.
**Runtime storage notes (2026-04-15):**
- Live Scheduler hosts now resolve graph jobs, schedules, runs, run summaries, policy-run state, audit, and resolver-job state through PostgreSQL-backed services whenever `Scheduler:Storage` is present.
- Vulnerability resolver job submissions persist into `scheduler.jobs` and survive host restart; `InMemoryResolverJobService` remains a non-durable fallback only for the `Testing` environment. Live hosts fail fast when `Scheduler:Storage:ConnectionString` is absent.
- Inbound Conselier/Excitor webhook rate limiting is no longer process-local in non-testing runtime. Enabled inbound webhooks now resolve a Redis-backed distributed sliding-window limiter from the existing `scheduler:queue` transport contract; `InMemoryWebhookRateLimiter` remains `Testing`-only, and non-testing startup fails fast if inbound webhooks stay enabled without Redis queue configuration.
### 8.2) TaskRunner subdomain (REMOVED)
@@ -186,8 +191,9 @@ The PacksRegistry manages compliance/automation pack definitions, versions, and
- Blob/object payloads (`pack content`, `provenance content`, `attestation content`) are persisted through the seed-fs object-store channel (`SeedFsPacksRegistryBlobStore`).
- Startup fails fast when `Storage:ObjectStore:Driver` is set to `rustfs` (not implemented) or any unsupported driver value.
- Non-development startup fails fast when `Storage:Driver=postgres` and no connection string is configured.
- PacksRegistry persistence auto-applies embedded startup migrations on host boot; fresh databases now reconcile the legacy `packs.packs` table shape to the current repository contract before serving traffic.
- PostgreSQL keeps metadata and compatibility placeholders; payload retrieval resolves from object storage first.
- Explicit non-production overrides remain available (`filesystem`, `inmemory`) but are no longer implicit defaults.
- The live host accepts only `postgres` and `filesystem` storage drivers; the old `inmemory` branch has been removed from runtime composition.
---