more features checks. setup improvements

This commit is contained in:
master
2026-02-13 02:04:55 +02:00
parent 9911b7d73c
commit 9ca2de05df
675 changed files with 37550 additions and 1826 deletions

View File

@@ -0,0 +1,77 @@
{
"type": "integration",
"capturedAtUtc": "2026-02-13T11:25:00Z",
"testCommand": "dotnet test src/Policy/__Tests/StellaOps.PolicyDsl.Tests/StellaOps.PolicyDsl.Tests.csproj --no-restore -v normal",
"testFilter": "PolicyCompilerTests, PolicyEngineTests, SignalContextTests, DslCompletionProviderTests, PolicyDslRoundtripPropertyTests, PolicyDslValidationGoldenTests covering DSL compilation, evaluation, signal context, IDE completions, roundtrip properties, golden validation",
"testsRun": 140,
"testsPassed": 140,
"testsFailed": 0,
"targetedTestMethods": [
"PolicyCompilerTests.Compile_MinimalPolicy_Succeeds",
"PolicyCompilerTests.Compile_WithMetadata_ParsesCorrectly",
"PolicyCompilerTests.Compile_WithProfile_ParsesCorrectly",
"PolicyCompilerTests.Compile_EmptySource_ReturnsError",
"PolicyCompilerTests.Compile_InvalidSyntax_ReturnsError",
"PolicyCompilerTests.Compile_SameSource_ProducesSameChecksum",
"PolicyCompilerTests.Compile_DifferentSource_ProducesDifferentChecksum",
"PolicyEngineTests.Evaluate_RuleMatches_ReturnsMatchedRules",
"PolicyEngineTests.Evaluate_RuleDoesNotMatch_ExecutesElseBranch",
"PolicyEngineTests.Evaluate_MultipleRules_EvaluatesInPriorityOrder",
"PolicyEngineTests.Evaluate_WithAndCondition_MatchesWhenBothTrue",
"PolicyEngineTests.Evaluate_WithOrCondition_MatchesWhenEitherTrue",
"PolicyEngineTests.Evaluate_WithNotCondition_InvertsResult",
"SignalContextTests.Builder_WithSignal_SetsSignalValue",
"SignalContextTests.Builder_WithFlag_SetsBooleanSignal",
"SignalContextTests.Builder_WithNumber_SetsDecimalSignal",
"SignalContextTests.Builder_WithString_SetsStringSignal",
"SignalContextTests.Builder_WithFinding_SetsNestedFindingObject",
"SignalContextTests.Builder_WithReachability_SetsNestedReachabilityObject",
"SignalContextTests.Builder_WithTrustScore_SetsTrustSignals",
"SignalContextTests.SetSignal_UpdatesExistingValue",
"SignalContextTests.RemoveSignal_RemovesExistingSignal",
"SignalContextTests.Clone_CreatesIndependentCopy",
"SignalContextTests.SignalNames_ReturnsAllSignalKeys",
"SignalContextTests.Signals_ReturnsReadOnlyDictionary",
"DslCompletionProviderTests.GetCompletionCatalog_ReturnsNonNullCatalog",
"DslCompletionProviderTests.Catalog_ContainsScoreFields",
"DslCompletionProviderTests.Catalog_ContainsScoreBuckets",
"DslCompletionProviderTests.Catalog_ContainsScoreFlags",
"DslCompletionProviderTests.Catalog_ContainsAllDimensionAliases",
"DslCompletionProviderTests.Catalog_ContainsVexStatuses",
"DslCompletionProviderTests.Catalog_ContainsKeywordsAndFunctions",
"DslCompletionProviderTests.GetCompletionsForContext_ScoreDot_ReturnsScoreFields",
"DslCompletionProviderTests.GetCompletionsForContext_SbomDot_ReturnsSbomFields",
"DslCompletionProviderTests.GetCompletionsForContext_AdvisoryDot_ReturnsAdvisoryFields",
"DslCompletionProviderTests.GetCompletionsForContext_VexDot_ReturnsVexFields",
"DslCompletionProviderTests.GetCompletionsForContext_ScoreBucketEquals_ReturnsBuckets",
"DslCompletionProviderTests.GetCompletionsForContext_AfterThen_ReturnsActions",
"DslCompletionProviderTests.GetCompletionsForContext_AfterElse_ReturnsActions",
"DslCompletionProviderTests.GetCompletionsForContext_EmptyContext_ReturnsAllTopLevel",
"DslCompletionProviderTests.Catalog_IsSingleton"
],
"behaviorVerified": [
"DslTokenizer: full lexer with token types (braces, parens, brackets, comma, semicolon, colon, operators), single-line and multi-line comment support, source location tracking (line, column)",
"PolicyParser: parses token stream into PolicyDocumentNode AST with metadata, settings, profiles, and rules sections",
"PolicyCompiler: Compile(source) -> PolicyCompilationResult with Success, IR Document, SHA256 Checksum, CanonicalRepresentation, Diagnostics; pipeline Parse -> Build IR -> Serialize canonical -> Compute SHA256 digest; error collection via PolicyIssueSeverity.Error",
"PolicyIr / PolicyIrSerializer: intermediate representation (PolicyIrDocument, PolicyIrProfile with maps/envs/scalars, PolicyIrRule), canonical binary serialization for digest computation",
"PolicyEngineFactory: factory creates evaluation engines from compiled DSL source",
"PolicyEngine evaluation: rule matching with when/then/else/because, priority ordering (higher priority matched first), AND/OR/NOT conditions, finding.severity/reachability.state signal access, MatchedRules list, Actions with WasElseBranch, PolicyChecksum",
"SignalContext: Builder pattern (WithSignal, WithFlag, WithNumber, WithString, WithFinding, WithReachability, WithTrustScore, WithObject), Get/Set/Remove/Has signal, Clone (independent copy), SignalNames, Signals read-only dictionary",
"DslCompletionProvider: IDE-style completions, context-based (score./sbom./advisory./vex.), score fields (value, bucket, is_act_now, flags, rch, reachability + 6 short + 6 long dimension aliases), score buckets (ActNow, ScheduleNext, Investigate, Watchlist), score flags (kev, live-signal, vendor-na, reachable, unreachable), VEX statuses (affected, not_affected, fixed), keywords (policy, rule, when, then), functions (normalize_cvss, exists), action completions after then/else (status :=, ignore, escalate, warn, defer), snippet support with ${1:} placeholders, case-insensitive matching, singleton catalog",
"Deterministic compilation: same source produces same SHA256 checksum, different source produces different checksum",
"DSL syntax stella-dsl@1: policy name, syntax version, metadata block, profile block with settings, rule block with name/priority/when/then/else/because"
],
"assertionTypes": [
"boolean assertions (Should().BeTrue/BeFalse for Success, IsSnippet)",
"value equality (Should().Be for document name, syntax, checksum)",
"collection assertions (Should().HaveCount, Should().Contain, Should().BeEquivalentTo)",
"null checks (Should().NotBeNull, Should().NotBeNullOrEmpty)",
"string containment (Should().Contain for documentation, Should().StartWith/EndWith for quoted insert text)",
"exception assertions (Should().Throw<ArgumentNullException>)",
"reference equality (Should().BeSameAs for singleton catalog)"
],
"newTestsWritten": [],
"bugsFixed": [],
"rawOutput": "PolicyDsl.Tests: Passed! - Failed: 0, Passed: 140, Skipped: 0, Total: 140, Duration: 657ms",
"verdict": "pass"
}

View File

@@ -0,0 +1,66 @@
{
"type": "integration",
"capturedAtUtc": "2026-02-13T00:33:00Z",
"testCommand": "dotnet test src/Policy/__Tests/StellaOps.PolicyDsl.Tests/StellaOps.PolicyDsl.Tests.csproj --no-restore -v normal",
"testFilter": "All PolicyDsl.Tests (DslTokenizer, PolicyParser, PolicyCompiler, PolicyEngine, SignalContext, DslCompletionProvider, Golden, Properties)",
"testsRun": 140,
"testsPassed": 140,
"testsFailed": 0,
"targetedTestMethods": [
"PolicyCompilerTests.Compile_MinimalPolicy_Succeeds",
"PolicyCompilerTests.Compile_WithMetadata_ParsesCorrectly",
"PolicyCompilerTests.Compile_WithProfile_ParsesCorrectly",
"PolicyCompilerTests.Compile_EmptySource_ReturnsError",
"PolicyCompilerTests.Compile_InvalidSyntax_ReturnsError",
"PolicyCompilerTests.Compile_SameSource_ProducesSameChecksum",
"PolicyEngineTests.Evaluate_RuleMatches_ReturnsMatchedRules",
"PolicyEngineTests.Evaluate_RuleDoesNotMatch_ExecutesElseBranch",
"PolicyEngineTests.Evaluate_MultipleRules_EvaluatesInPriorityOrder",
"PolicyEngineTests.Evaluate_WithAndCondition_MatchesWhenBothTrue",
"PolicyEngineTests.Evaluate_WithOrCondition_MatchesWhenEitherTrue",
"PolicyEngineTests.Evaluate_WithNotCondition_InvertsResult",
"SignalContextTests (HasSignal, GetSignal, SetSignal, Builder pattern, WithFinding, WithReachability, WithTrustScore, Clone)",
"DslCompletionProviderTests (IDE completions: score/sbom/advisory/vex fields, buckets, flags, keywords, functions, context-based, case-insensitive, singleton)",
"SecretSignalContextExtensionsTests",
"AiCodeGuardSignalContextExtensionsTests",
"PolicyDslValidationGoldenTests (golden file validation)",
"PolicyDslRoundtripPropertyTests (FsCheck roundtrip properties)"
],
"behaviorVerified": [
"DslTokenizer: full lexer with token types (braces, parens, brackets, comma, semicolon, colon, operators)",
"DslTokenizer: single-line and multi-line comment support",
"DslTokenizer: source location tracking (line, column) for diagnostics",
"PolicyParser: parses token stream into PolicyDocumentNode AST with metadata/settings/profiles/rules sections",
"PolicyCompiler: Compile(source) produces PolicyCompilationResult with Success, IR Document, SHA256 Checksum, CanonicalRepresentation, Diagnostics",
"PolicyCompiler: pipeline Parse -> Build IR -> Serialize canonical -> Compute SHA256 digest",
"PolicyCompiler: same source produces deterministic checksum",
"PolicyCompiler: empty/invalid source returns error diagnostics",
"PolicyEngine: rule evaluation with when/then/else/because clauses",
"PolicyEngine: compound conditions (AND, OR, NOT)",
"PolicyEngine: priority ordering (ascending: lower number evaluates first)",
"PolicyEngine: MatchedRules return with actions",
"SignalContext: runtime signal value provider (HasSignal, GetSignal<T>, SetSignal)",
"SignalContext: Builder pattern with WithFinding, WithReachability, WithTrustScore",
"SignalContext: Clone support for immutable evaluation",
"DslCompletionProvider: IDE-style completion suggestions for DSL (fields, keywords, functions, context-based, case-insensitive)",
"Secret and AI code guard signal context extensions",
"Golden file validation for DSL outputs",
"FsCheck roundtrip property tests for PolicyIr serialization"
],
"assertionTypes": [
"compilation-success",
"diagnostic-error-reporting",
"checksum-determinism",
"rule-evaluation",
"condition-logic",
"priority-ordering",
"signal-context-management",
"ide-completion",
"golden-file-validation",
"property-based-roundtrip"
],
"newTestsWritten": [],
"bugsFixed": [],
"rawOutput": "Passed! - Failed: 0, Passed: 140, Skipped: 0, Total: 140, Duration: 736ms - StellaOps.PolicyDsl.Tests.dll (net10.0|x64)",
"verdict": "pass"
}