197 lines
8.9 KiB
JSON
197 lines
8.9 KiB
JSON
{
|
|
"module": "integrations",
|
|
"featureCount": 11,
|
|
"lastUpdatedUtc": "2026-02-12T23:45:00Z",
|
|
"summary": {
|
|
"passed": 11,
|
|
"failed": 0,
|
|
"blocked": 0,
|
|
"skipped": 0,
|
|
"done": 11,
|
|
"queued": 0
|
|
},
|
|
"buildNote": "Integrations test baseline: 46/46 tests pass (37 in StellaOps.Integrations.Tests + 9 in StellaOps.Integrations.Plugin.Tests). All 11 features verified with full Tier 0+1+2d on 2026-02-12.",
|
|
"features": {
|
|
"ai-code-guard": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-001",
|
|
"lastUpdatedUtc": "2026-02-12T22:00:00Z",
|
|
"featureFile": "docs/features/checked/integrations/ai-code-guard.md",
|
|
"notes": [
|
|
"[2026-02-12T21:50:00Z] checking: Tier 2d passed - 17 tests",
|
|
"[2026-02-12T22:00:00Z] done: Moved to checked/"
|
|
]
|
|
},
|
|
"built-in-container-registry-connectors": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-001",
|
|
"lastUpdatedUtc": "2026-02-12T22:00:00Z",
|
|
"featureFile": "docs/features/checked/integrations/built-in-container-registry-connectors.md",
|
|
"notes": [
|
|
"[2026-02-12T21:52:00Z] checking: Tier 2d passed - 23 tests",
|
|
"[2026-02-12T22:00:00Z] done: Moved to checked/"
|
|
]
|
|
},
|
|
"built-in-vault-connectors": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-001",
|
|
"lastUpdatedUtc": "2026-02-12T22:00:00Z",
|
|
"featureFile": "docs/features/checked/integrations/built-in-vault-connectors.md",
|
|
"notes": [
|
|
"[2026-02-12T21:54:00Z] checking: Tier 2d passed - 10 tests",
|
|
"[2026-02-12T22:00:00Z] done: Moved to checked/"
|
|
]
|
|
},
|
|
"connector-runtime-with-resilience-patterns": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-001",
|
|
"lastUpdatedUtc": "2026-02-12T22:15:00Z",
|
|
"featureFile": "docs/features/checked/integrations/connector-runtime-with-resilience-patterns.md",
|
|
"notes": [
|
|
"[2026-02-12T22:10:00Z] checking: Tier 2d passed - 23 tests",
|
|
"[2026-02-12T22:15:00Z] done: Moved to checked/"
|
|
]
|
|
},
|
|
"github-app-connector": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-001",
|
|
"lastUpdatedUtc": "2026-02-12T22:30:00Z",
|
|
"featureFile": "docs/features/checked/integrations/github-app-connector.md",
|
|
"notes": [
|
|
"[2026-02-12T22:30:00Z] checking: Tier 2d passed - 24 tests",
|
|
"[2026-02-12T22:30:00Z] done: Moved to checked/"
|
|
]
|
|
},
|
|
"github-code-scanning-upload-client": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-001",
|
|
"lastUpdatedUtc": "2026-02-12T22:30:00Z",
|
|
"featureFile": "docs/features/checked/integrations/github-code-scanning-upload-client.md",
|
|
"notes": [
|
|
"[2026-02-12T22:30:00Z] checking: Tier 2d passed - 15 tests",
|
|
"[2026-02-12T22:30:00Z] done: Moved to checked/"
|
|
]
|
|
},
|
|
"integration-concierge": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-001",
|
|
"lastUpdatedUtc": "2026-02-12T23:00:00Z",
|
|
"featureFile": "docs/features/checked/integrations/integration-concierge.md",
|
|
"notes": [
|
|
"[2026-02-12T22:45:00Z] checking: Tier 2d passed - 35 tests (10 backend + 25 frontend)",
|
|
"[2026-02-12T23:00:00Z] done: Moved to checked/"
|
|
]
|
|
},
|
|
"integration-doctor-checks": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-002",
|
|
"lastUpdatedUtc": "2026-02-12T23:45:00Z",
|
|
"featureFile": "docs/features/checked/integrations/integration-doctor-checks.md",
|
|
"notes": [
|
|
"[2026-02-12T22:50:00Z] checking: Tier 0 passed - all source files verified",
|
|
"[2026-02-12T23:34:00Z] checking: Tier 2d passed - 46 tests: IntegrationServiceTests (TestConnection, CheckHealth, no-plugin fallback) + InMemoryConnectorPluginTests (connector health, cancellation)",
|
|
"[2026-02-12T23:45:00Z] done: Moved to checked/, run-002 evidence written"
|
|
]
|
|
},
|
|
"registry-webhook-handlers": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-002",
|
|
"lastUpdatedUtc": "2026-02-12T23:45:00Z",
|
|
"featureFile": "docs/features/checked/integrations/registry-webhook-handlers.md",
|
|
"notes": [
|
|
"[2026-02-12T23:35:00Z] checking: Tier 0 passed - IntegrationEndpoints, IntegrationService, HarborConnectorPlugin, GitHubAppConnectorPlugin, IntegrationDtos, Program.cs all exist",
|
|
"[2026-02-12T23:37:00Z] checking: Tier 2d passed - 46 tests: CRUD lifecycle with events, Harbor connector with health/v2.0 API, InMemory connector test, plugin-delegated operations",
|
|
"[2026-02-12T23:45:00Z] done: Moved to checked/, run-002 evidence written. Previous run-001 incorrectly classified as unimplemented; webhook handling is part of the integration service + connector plugin architecture."
|
|
]
|
|
},
|
|
"scm-annotation-client-contracts": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-002",
|
|
"lastUpdatedUtc": "2026-02-12T23:45:00Z",
|
|
"featureFile": "docs/features/checked/integrations/scm-annotation-client-contracts.md",
|
|
"notes": [
|
|
"[2026-02-12T23:38:00Z] checking: Tier 0 passed - ScmAnnotationContracts.cs (655 lines), GitHubAppAnnotationClient.cs (563 lines), GitLabAnnotationClient.cs (378 lines), IntegrationDtos.cs",
|
|
"[2026-02-12T23:40:00Z] checking: Tier 2d passed - 46 tests. IScmAnnotationClient with 4 methods, ScmOperationResult<T> with Ok/Fail/QueuedForLater, evidence link fields verified in contracts",
|
|
"[2026-02-12T23:45:00Z] done: Moved to checked/, run-002 evidence written"
|
|
]
|
|
},
|
|
"toolchain-agnostic-integrations": {
|
|
"status": "done",
|
|
"tier": 2,
|
|
"retryCount": 0,
|
|
"sourceVerified": true,
|
|
"buildVerified": true,
|
|
"e2eVerified": true,
|
|
"skipReason": null,
|
|
"lastRunId": "run-002",
|
|
"lastUpdatedUtc": "2026-02-12T23:45:00Z",
|
|
"featureFile": "docs/features/checked/integrations/toolchain-agnostic-integrations.md",
|
|
"notes": [
|
|
"[2026-02-12T23:41:00Z] checking: Tier 0 passed - all 16 source files verified (IIntegrationConnectorPlugin, IntegrationPluginLoader, 4 built-in plugins, IntegrationService, IntegrationEndpoints, Core models, Persistence, 3 test files)",
|
|
"[2026-02-12T23:43:00Z] checking: Tier 2d passed - 46 tests across IntegrationPluginLoaderTests (5), IntegrationServiceTests (12), InMemoryConnectorPluginTests (9), plus 20 other tests. Plugin discovery, type/provider queries, CRUD lifecycle, event publishing",
|
|
"[2026-02-12T23:45:00Z] done: Moved to checked/, run-002 evidence written"
|
|
]
|
|
}
|
|
}
|
|
}
|