You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
The sweep lists a leg declared with an absolute path as a paired tree of its own, keeps a leading ./ in a leg path, and lists dot-named feature directories, all of which lane-handoff and lane-reconcile skip or strip #276
Found by openRepoShape-2's independent review of #246 (T018) at 5dd0df07, for lane openRepoTools-1's landing gate (#246, comment 6266578777: verdict LAND, none of its findings blocking; this is its NIT 2). #246 landed as 55aae16. It still holds on main 00d52ae:lane-worktrees is unchanged between 55aae16 and 00d52ae, and the case below was run again on main's own lane-worktrees.
What happens
The three readers of an assembly's paired root, <assembly>/worktrees/<feature>/<each declared leg path>, disagree on edge inputs.
The sweep (lane-worktrees) joins every declared leg path under every feature directory, unfiltered, and lists every directory name. With Sweep._paired called directly, as the review did:
a leg declared with an absolute path becomes a FOREIGN paired row of the leg itself;
./code keeps the ./ in the row's path (001-a/./code);
a feature directory named with a leading dot is listed.
lane-handoff and lane-reconcile (in lanes-edit.sh) skip absolute paths, strip a leading ./, and, because they glob with *, skip dot names.
Run again on main 00d52ae, with Sweep._paired of main's lane-worktrees called directly, as the review did: legs declared as code, ./spec and an absolute path to a leg checkout, features 001-a and .dotfeature, and a .git in each leg directory. The rows were the absolute-path leg (foreign, paired), .dotfeature/code, 001-a/./spec and 001-a/code. lanes-edit.sh project-legs hands the declared path over as written (it drops only an empty path, . and ./., and trims a trailing /: lanes-edit.sh:5521-5530 at 00d52ae), so the sweep does meet these forms from a real manifest.
Weight: a NIT. The standard writes leg paths as relative ones (lanes-edit.sh:14287-14289), so a manifest that departs from it, or a dot-named directory under worktrees, is what meets it.
Where
The sweep:lane-worktrees:2570 (decls) and :2585 (for full in [fdir] + [os.path.join(fdir, d) for d in decls]) in Sweep._paired, on main 00d52ae; the review's :2585 at 5dd0df07 is the same line.
The other two:lane-handoff:2437 (the glob), :2445-2446 (case "$lg_decl" in ''|/*) continue ;; esac, ${lg_decl#./}); lanes-edit.sh:14281 (the glob) and :14291-14292 (awk $2 !~ /^\//, sub(/^\.\//, …)), all on main 00d52ae.
Activity