Skip to content

Dependency ordering planner with cycle detection for resource graph

Summary

  • Created feature/octopus-import-dependency-ordering from feature/squid-import-project.
  • Added OctopusImportDependencyPlanner and OctopusImportDependencyPlan for 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 Parent reference kind and DependencyCycle diagnostic code.
  • Added unit tests for dependency ordering, parent ordering, optional target references, missing dependency deferral, and cycle detection.
  • Marked OpenSpec task 3.2 complete 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.csproj passed: 6335 passed, 0 failed.
  • git diff --check passed.
  • No integration tests were added for this branch; current scope is Core dependency ordering plus unit coverage.

Merge request reports

Loading