手动数据源、存图、流程计算

This commit is contained in:
zhengxuan.zhang
2026-05-15 15:29:53 +08:00
parent f07d891346
commit 49c6785682
9 changed files with 800 additions and 419 deletions
@@ -113,10 +113,13 @@ namespace XplorePlane.Tests.Services
}
// ── Generator: N SavePositionNodes with cancellation point K ─────
// K ranges from 1 to N-1: K positions complete, then cancellation is detected
// before position K+1 starts. This ensures the summary is always written.
// (K=0 would require pre-cancellation which skips BeginRunAsync entirely)
private static Gen<(List<SavePositionNode> Nodes, int CancelAfterK)> SavePositionNodesWithCancelGen =>
from n in Gen.Choose(2, 10)
from k in Gen.Choose(0, n - 1)
from k in Gen.Choose(1, n - 1)
from nodes in GenSavePositionNodes(n)
select (nodes, k);