Add unit tests for Router configuration and transport layers
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
Policy Lint & Smoke / policy-lint (push) Has been cancelled

- Implemented tests for RouterConfig, RoutingOptions, StaticInstanceConfig, and RouterConfigOptions to ensure default values are set correctly.
- Added tests for RouterConfigProvider to validate configurations and ensure defaults are returned when no file is specified.
- Created tests for ConfigValidationResult to check success and error scenarios.
- Developed tests for ServiceCollectionExtensions to verify service registration for RouterConfig.
- Introduced UdpTransportTests to validate serialization, connection, request-response, and error handling in UDP transport.
- Added scripts for signing authority gaps and hashing DevPortal SDK snippets.
This commit is contained in:
StellaOps Bot
2025-12-05 08:01:47 +02:00
parent 635c70e828
commit 6a299d231f
294 changed files with 28434 additions and 1329 deletions

View File

@@ -1,6 +1,6 @@
# BLOCKED Tasks Dependency Tree
> **Last Updated:** 2025-12-04 (12 specs + 2 implementations = ~74+ tasks unblocked)
> **Last Updated:** 2025-12-05 (13 specs + 3 implementations = ~84+ tasks unblocked)
> **Purpose:** This document maps all BLOCKED tasks and their root causes to help teams prioritize unblocking work.
## How to Use This Document
@@ -201,6 +201,104 @@ attestor SDK transport contract (scanner analyzers ✅ COMPILE)
---
## 7. CONSOLE OBSERVABILITY DOCS (CONOBS5201)
**Root Blocker:** Observability Hub widget captures + deterministic sample payload hashes not delivered (Console Guild)
```
Console assets (widgets + hashes)
+-- DOCS-CONSOLE-OBS-52-001 (docs/console/observability.md)
+-- DOCS-CONSOLE-OBS-52-002 (docs/console/forensics.md)
```
**Impact:** 2 documentation tasks (Md.III ladder) remain BLOCKED
**To Unblock:** Provide deterministic captures/payloads + hash list; populate `docs/console/SHA256SUMS`
---
## 8. EXCEPTION DOCS CHAIN (EXC-25)
**Root Blocker:** Exception lifecycle/routing/API contracts and UI/CLI payloads not delivered
```
Exception contracts (lifecycle + routing + API + UI/CLI payloads)
+-- DOCS-EXC-25-001: governance/exceptions.md
+-- DOCS-EXC-25-002: approvals-and-routing.md
+-- DOCS-EXC-25-003: api/exceptions.md
+-- DOCS-EXC-25-005: ui/exception-center.md
+-- DOCS-EXC-25-006: cli/guides/exceptions.md
```
**Impact:** 5 documentation tasks BLOCKED (Md.III ladder, console/UI/CLI docs)
**To Unblock:** Deliver lifecycle states, routing matrix, API schema, UI assets, and CLI command shapes with hashes; fill existing stubs and SHA files
---
## 9. AUTHORITY GAP SIGNING (AU/RR)
**Root Blocker:** Authority signing key not available for production DSSE
```
Authority signing key missing
+-- AUTH-GAPS-314-004 artefact signing
+-- REKOR-RECEIPT-GAPS-314-005 artefact signing
```
**Impact:** Production DSSE for AU1AU10 and RR1RR10 artefacts pending (dev-smoke bundles exist)
**To Unblock:** Provide Authority private key (COSIGN_PRIVATE_KEY_B64 or tools/cosign/cosign.key) and run `tools/cosign/sign-authority-gaps.sh`
---
## 10. EXCITITOR CHUNK API FREEZE (EXCITITOR-DOCS-0001)
**Root Blocker:** Chunk API CI validation + OpenAPI freeze not complete
```
Chunk API CI/OpenAPI freeze
+-- EXCITITOR-DOCS-0001
+-- EXCITITOR-ENG-0001
+-- EXCITITOR-OPS-0001
```
**Impact:** 3 documentation/eng/ops tasks blocked
**To Unblock:** Provide pinned `chunk-api.yaml`, hashed samples, and CI green per `OPENAPI_FREEZE_CHECKLIST.md`
---
## 11. DEVPORTAL SDK SNIPPETS (DEVPORT-63-002)
**Root Blocker:** Wave B SDK snippet pack not delivered
```
SDK snippet pack (Wave B)
+-- DEVPORT-63-002: embed/verify snippets
```
**Impact:** Snippet verification pending; hash index stub in `SHA256SUMS.devportal-stubs`
**To Unblock:** Deliver snippet pack + hashes; populate SHA index and validate against aggregate spec
---
## 12. GRAPH OPS DEMO OUTPUTS (GRAPH-OPS-0001)
**Root Blocker:** Latest demo observability outputs not delivered
```
Demo observability outputs
+-- GRAPH-OPS-0001: runbook/dashboard refresh
```
**Impact:** Graph ops doc refresh pending; placeholders and hash index ready
**To Unblock:** Provide demo metrics/dashboards (JSON) and hashes; update runbooks and SHA lists
---
## 7. TASK RUNNER CHAINS
### 7.1 AirGap
@@ -461,6 +559,102 @@ docs/deployment/
---
## 8.4 POLICY STUDIO WAVE C UNBLOCKING (2025-12-05)
> **Creation Date:** 2025-12-05
> **Purpose:** Document Policy Studio infrastructure that unblocks Wave C tasks (UI-POLICY-20-001 through UI-POLICY-23-006)
### Root Blockers Resolved
The following blockers for Wave C Policy Studio tasks have been resolved:
| Blocker | Status | Resolution |
|---------|--------|------------|
| Policy DSL schema for Monaco | ✅ CREATED | `features/policy-studio/editor/stella-dsl.language.ts` |
| Policy RBAC scopes in UI | ✅ CREATED | 11 scopes added to `scopes.ts` |
| Policy API client contract | ✅ CREATED | `features/policy-studio/services/policy-api.service.ts` |
| Simulation inputs wiring | ✅ CREATED | Models + API client for simulation |
| RBAC roles ready | ✅ CREATED | 7 guards in `auth.guard.ts` |
### Infrastructure Created
**1. Policy Studio Scopes (`scopes.ts`)**
```
policy:author, policy:edit, policy:review, policy:submit, policy:approve,
policy:operate, policy:activate, policy:run, policy:publish, policy:promote, policy:audit
```
**2. Policy Scope Groups (`scopes.ts`)**
```
POLICY_VIEWER, POLICY_AUTHOR, POLICY_REVIEWER, POLICY_APPROVER, POLICY_OPERATOR, POLICY_ADMIN
```
**3. AuthService Methods (`auth.service.ts`)**
```
canViewPolicies(), canAuthorPolicies(), canEditPolicies(), canReviewPolicies(),
canApprovePolicies(), canOperatePolicies(), canActivatePolicies(), canSimulatePolicies(),
canPublishPolicies(), canAuditPolicies()
```
**4. Policy Guards (`auth.guard.ts`)**
```
requirePolicyViewerGuard, requirePolicyAuthorGuard, requirePolicyReviewerGuard,
requirePolicyApproverGuard, requirePolicyOperatorGuard, requirePolicySimulatorGuard,
requirePolicyAuditGuard
```
**5. Monaco Language Definition (`features/policy-studio/editor/`)**
- `stella-dsl.language.ts` — Monarch tokenizer, syntax highlighting, bracket matching
- `stella-dsl.completions.ts` — IntelliSense completion provider
**6. Policy API Client (`features/policy-studio/services/`)**
- `policy-api.service.ts` — Full CRUD, lint, compile, simulate, approval, dashboard APIs
**7. Policy Domain Models (`features/policy-studio/models/`)**
- `policy.models.ts` — 30+ TypeScript interfaces (packs, versions, simulations, approvals)
### Previously Blocked Tasks (Now TODO)
```
Policy Studio Wave C Blockers (RESOLVED)
+-- UI-POLICY-20-001: Monaco editor with DSL highlighting → TODO
+-- UI-POLICY-20-002: Simulation panel → TODO
+-- UI-POLICY-20-003: Submit/review/approve workflow → TODO
+-- UI-POLICY-20-004: Run viewer dashboards → TODO
+-- UI-POLICY-23-001: Policy Editor workspace → TODO
+-- UI-POLICY-23-002: YAML editor with validation → TODO
+-- UI-POLICY-23-003: Guided rule builder → TODO
+-- UI-POLICY-23-004: Review/approval workflow UI → TODO
+-- UI-POLICY-23-005: Simulator panel integration → TODO
+-- UI-POLICY-23-006: Explain view with exports → TODO
```
**Impact:** 10 Wave C tasks unblocked for implementation
### File Locations
```
src/Web/StellaOps.Web/src/app/
├── core/auth/
│ ├── scopes.ts # Policy scopes + scope groups + labels
│ ├── auth.service.ts # Policy methods in AuthService
│ └── auth.guard.ts # Policy guards
└── features/policy-studio/
├── editor/
│ ├── stella-dsl.language.ts # Monaco language definition
│ ├── stella-dsl.completions.ts # IntelliSense provider
│ └── index.ts
├── models/
│ ├── policy.models.ts # Domain models
│ └── index.ts
├── services/
│ ├── policy-api.service.ts # API client
│ └── index.ts
└── index.ts
```
---
## 9. CONCELIER RISK CHAIN
**Root Blocker:** ~~`POLICY-20-001 outputs + AUTH-TEN-47-001`~~ + `shared signals library`