Add manifest-driven inventory with SHA1 validation and diagnostics
Summary
- Implemented manifest-driven Octopus import inventory on
feature/octopus-import-manifest-inventory. - Added
OctopusManifestInventoryBuilderand result models for manifest lookup, manifest entry matching, per-kind counts, SHA1 validation, source ID/type consistency checks, duplicate/missing document diagnostics, and unlisted document warnings. - Extended extracted JSON documents with SHA1 hashes from
OctopusInputExtractor. - Added manifest diagnostic codes without logging raw JSON content, source values, or expected/actual hash values in diagnostic messages.
- Added focused unit coverage in
OctopusManifestInventoryBuilderTests. - Updated local OpenSpec progress tracking for task
2.5;openspec/is ignored locally and is not part of the branch diff. - Scope intentionally stops before task
2.6; normalized Octopus resource graph construction remains unfinished.
Test plan
-
/usr/local/share/dotnet/dotnet test tests/Squid.UnitTests/Squid.UnitTests.csproj --filter "FullyQualifiedName~Services.OctopusImport"passed: 87 passed, 0 failed. -
/usr/local/share/dotnet/dotnet test tests/Squid.UnitTests/Squid.UnitTests.csprojpassed: 6309 passed, 0 failed. -
Observed existing dependency vulnerability warnings for KubernetesClientandAutoMapper; no test failures. -
No integration tests were added for this branch; current scope is Core inventory logic plus unit coverage.