Dependency ordering planner with cycle detection for resource graph
Summary
- Created
feature/octopus-import-dependency-orderingfromfeature/squid-import-project. - Added
OctopusImportDependencyPlannerandOctopusImportDependencyPlanfor current-configuration dependency ordering. - Planner now orders graph resources using dependency edges plus parent-child edges, excludes historical resources, tracks optional references, and reports dependency cycles as blockers.
- Added
Parentreference kind andDependencyCyclediagnostic code. - Added unit tests for dependency ordering, parent ordering, optional target references, missing dependency deferral, and cycle detection.
- Marked OpenSpec task
3.2complete locally;openspec/remains ignored and is not part of the branch diff. - Scope stops before conflict discovery, preview actions, current-document selection policy, and missing-reference validation.
Test plan
-
/usr/local/share/dotnet/dotnet test tests/Squid.UnitTests/Squid.UnitTests.csproj --filter "FullyQualifiedName~Services.OctopusImport"passed: 113 passed, 0 failed. -
/usr/local/share/dotnet/dotnet test tests/Squid.UnitTests/Squid.UnitTests.csprojpassed: 6335 passed, 0 failed. -
git diff --checkpassed. -
No integration tests were added for this branch; current scope is Core dependency ordering plus unit coverage.