Watch
2
Implement blocking file locks on Windows #262
Closed
opened 2026-07-28 00:36:12 +00:00 by coilyco-ops
·
1 comment
No Branch/Tag specified
main
release
aos/1047-untyped-array-union
chore/regenerate-repo-pointer-skill
task/mapped-body-pins
aos/claude/bk79-comment-debt
aos/claude/bk79-raw-media-negotiation
aos/claude/bk79-raw-response
aos/claude/ck78-mark
feat/remove-sandbox
feat/auto-degrade-mode2
feat/pluggable-value-providers
chore/rename-module-path
chore/remove-dead-packages
claude/agents-temp-clone-note
feat/honor-response-media-type
aos/claude/gm46-can-describe
aos/codex/cli-guard-embedded-files
issue-244
recovery/2026-07-27-local-work
ward-salvage/cli-guard-a8e13cf8
ward-salvage/cli-guard-7f69a8f5
ward-salvage/cli-guard-9b23a268
ward-salvage/cli-guard-e8175b16
v0.165.0
draft-af4fda054d686aa7b63439cad8bf8ee324aab319
v0.164.0
draft-524a809272cbb57f15e4e84f3fda4f491060f905
v0.163.0
draft-5c0974e7c6798657bc7d9b26584579fd9547de4b
v0.162.0
draft-0ba4e9d71f3371e1f8604335fc399fa689aec5d6
v0.161.0
draft-59a230c7c9ee6869b35df44794983014c60fab32
v0.160.0
draft-66a5898dc8699b210fae629cc87a48389a6dee3e
v0.159.0
draft-8b098f789b88142851ff02b9d44cf8b91690bb94
v0.158.0
draft-47eed471b0f4e84166983e9c5c1e10b409944f16
v0.157.0
draft-0e14103cf6c59bf8d8590714c0c067da38507ab0
v0.156.0
draft-599429f8aa32cef94fd95116db9b22cf7c8f0747
v0.155.0
draft-ebc6cb80edd535e26e54bdbd78687f9634959f9b
v0.154.0
draft-ac86bf1ab0121a82e64de9325e31745d2a40a04e
v0.153.0
draft-c7c4bc16511a326bb4e0c36789661244b83c574a
v0.152.0
draft-dafac75068ecbb2f4f97a977da227a4f3bbc72a1
v0.151.0
draft-916c6a73fddd15e6f1eaf9fba4f8444cf6813ea0
v0.150.0
draft-df519769467955e0e9ff848b12c73757ce4ab619
v0.149.0
draft-7b22f1df41f6ea6fb795127168009e8ad192c730
v0.148.0
draft-7849611ff749a7e77b5497f311f5f6fab9d4bfad
v0.147.0
draft-3893db50211c8d8fc3b16b647d9da1a2b06c8b2e
v0.146.0
draft-8ec7a0cac0be34c2b075ac2df9f7981b809d1744
v0.145.0
draft-d41a2095ab92763c540bdffc32ac611d37e64bd0
v0.144.0
draft-be9487c4b9a499e634b8104ed25ed97eb6aa84a0
v0.143.0
draft-99744ccc4b1c531ec556492e609947fdaf7c4d8f
v0.142.0
draft-f19f2272ad214de5cd3c0097fec2df2ab8110272
v0.141.0
draft-50c56897c8fbf2abe7ed32fb8acc4bc04d63fe1e
v0.140.0
draft-0afc06265c46b3046db7c90e154b25d1377a24e5
v0.139.0
draft-32f278b23ccb6bdc31bdadbe0c8234b4b2ba2bb0
v0.138.0
draft-2d01d26376a9b954caac6871493b15bb27e93005
v0.137.0
draft-28dda03318260279ade890b2db2f47fba3da3733
v0.136.0
draft-de6749808aff6cc9a51d7a047a788adc7d0b6f9e
v0.135.0
draft-d9426dc3aeb39ef9fedcb9ff99b50194a25e1d9a
v0.134.0
draft-f9dd5dcc16f3f1dc1054683c3f6ef725a9e18a77
v0.133.0
draft-529f234654d799a6deecf08464ced4e5d13e0e8d
v0.132.0
draft-94204c070157d3c32c797f7c5003fa74727cd286
v0.131.0
draft-8ef1a1703a8ef8f907e3bab468818f6fcdc851c0
v0.130.0
draft-794ec95725ec6a8a2ff47ce2ac5fda287fdcf200
v0.129.0
draft-c05efef093167513d1c0cfacd5904eda13653f1a
v0.128.0
draft-4329ee77e55c7bcb9fbef5338d036894b60c3f25
v0.127.0
draft-530d4f474c46c8f842654ddf9a67c0709e919250
v0.126.0
draft-e76edeb5352bf0aad4d4b95ed93602056a461a7f
v0.125.0
draft-01f45023816ab158da0ad16c967c4364463459ac
v0.124.0
v0.123.0
draft-0ea86b6d50dc66a5e4a3e29504159263f44b69b5
draft-a4bbfaa2b3a1e9932abb333cf96085b08dc893f4
v0.122.0
draft-f2e33339b65d8fdc133e214ec49c37d2c8f671ab
v0.121.0
draft-bf2bd0e5fceb55cc6f4983d883b548d65fe43c5c
v0.120.0
draft-a1fd0de01e8694a804646901465846f9c829964e
v0.119.0
draft-d6a59219d86e7432deee0ef332be0c3512451932
v0.118.0
draft-1424a8b2696390464c59c48b9d3a0c2987e941c4
v0.117.0
draft-b46e95adc5d331530a8676333c8a4c4331b941a2
v0.116.0
draft-188ac86e27d361b5dc2a7116e19333fb9259f384
v0.115.0
draft-b764efcc94a6748a3ba4c0ed6174b0ed71414cdb
v0.114.0
draft-2a571af9b416723565249d41e05cc53e87774e28
v0.113.0
draft-15810837dd6b1226643f4bb78a5879c4a2ec0dfc
v0.112.0
draft-aa876f776ffc560160959f095f9390c24984c31a
v0.111.0
draft-c41011c1888e0f1d8dbf582dbac4bfbd82f18938
v0.110.0
draft-1e3d3c0ab52723e75361fe0fff12a8f63c37155f
v0.109.0
draft-ffb44199e39f4bbfcf0d3a9e0288f37d268e87d7
v0.108.0
draft-907b707e7f09151d5ef7f1b3bc865d011291f5bc
v0.107.0
draft-7c179ec30cbf2e7311def42e1501f761c4ec69ea
v0.106.0
draft-17a362a65e439d06f0f90cd00f293943dcd2f62f
v0.105.0
draft-781edc923dfe2ba8b17d3aa2bc7e056825748983
v0.104.0
draft-143732937a354bb4c30e1aebb11c810d24006e50
v0.103.0
draft-9de614246e23e7ef711276384d66985ff864cc48
v0.102.0
draft-6f0ee0740b537405539619de75b0e61df91bced1
v0.101.0
draft-16b0b2affc80b689710f3a470137449f4d898a6b
v0.100.0
v0.99.0
v0.98.0
v0.97.0
v0.96.0
v0.95.0
v0.94.0
v0.93.0
v0.92.0
v0.91.0
v0.90.0
v0.89.0
v0.88.0
v0.87.0
v0.86.0
v0.85.0
v0.84.0
v0.83.0
v0.82.0
v0.81.0
v0.80.0
v0.79.0
v0.78.0
v0.77.0
v0.76.0
v0.75.0
v0.74.0
v0.73.0
v0.72.0
v0.71.0
v0.70.0
v0.69.0
v0.68.0
v0.67.0
v0.66.0
v0.65.0
v0.64.0
v0.63.0
v0.62.0
v0.61.0
v0.60.0
v0.59.0
v0.58.0
v0.57.0
v0.56.0
v0.55.0
v0.54.0
v0.53.0
v0.52.0
v0.51.0
v0.50.0
v0.49.0
v0.48.0
v0.47.0
v0.46.0
v0.45.0
v0.44.0
v0.43.0
v0.42.0
v0.41.0
v0.40.0
v0.39.0
v0.38.0
v0.37.0
v0.36.0
v0.35.0
v0.34.0
v0.33.0
v0.32.0
v0.31.0
v0.30.0
v0.29.0
v0.28.0
v0.27.0
v0.26.0
v0.25.0
v0.24.0
v0.23.0
v0.22.0
v0.21.0
v0.20.0
v0.19.0
v0.18.0
v0.17.0
v0.16.0
v0.15.0
v0.14.0
v0.13.0
v0.12.0
v0.11.0
v0.10.0
v0.9.0
v0.8.0
v0.7.0
v0.6.0
v0.5.0
v0.4.0
v0.3.0
v0.2.0
v0.1.0
Labels
Clear labels
burndown-2026-06
Backlog burndown June 2026
sunday-sprint
Burn-down by Sunday 2026-06-07
autonomy
async-consult
A human needs to consult on the issue to upgrade it to headless
autonomy
epic
This issue has many units of sub work - its size makes it meaningfully exclusive with other autonomy types
autonomy
headless
The agent can perform the work on its own
autonomy
live-collab
The agent and the human need to work together in realtime
coherence-core
Core review set for the warded control plane coherence milestone. These issues form the release spine; adjacent milestone issues are stretch or supporting work.
priority
P0
priority tier
priority
P1
priority tier
priority
P2
priority tier
priority
P3
priority tier
priority
P4
priority tier
qa-fixture
Disposable issue admitted to the bounded Ward QA verification lane.
role/ai
requires work from the AI Engineer role
role/creator
requires work from Content Creator role
role/design
requires work from the design role
role/director
requires work from the director role
role/engineer
requires work from the engineer role
role/exec
requires work from the exec role
role/human
requires a person, and specifically not an agent seat
role/ops
requires work from the ops role
role/qa
requires work from the QA role
No labels
burndown-2026-06
sunday-sprint
autonomy
async-consult
autonomy
epic
autonomy
headless
autonomy
live-collab
coherence-core
priority
P0
priority
P1
priority
P2
priority
P3
priority
P4
qa-fixture
role/ai
role/creator
role/design
role/director
role/engineer
role/exec
role/human
role/ops
role/qa
Milestone
Clear milestone
No items
No milestone
Projects
Clear projects
No items
No project
Assignees
Clear assignees
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".
No due date set.
Dependencies
No dependencies set
Reference
coilyco-flight-deck/umbra#262
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Ward's native Windows suite exposed that
cli-guard/pkg/flockintentionally degradesExclusiveandUnlockto no-ops on non-Unix builds. Ward uses those calls for issue-scoped and repo-scoped launch reservation locks, so concurrent Windows directors can both pass the same launch gate.Evidence:
pkg/flock/flock_other.goreturns nil from both operations.Acceptance:
pkg/flockimplements blocking exclusive whole-file locking and unlock on Windows.Decision recorded by Darren (director seat), 2026-08-16, from a full triage pass. Kai's call in a consult round. Closing as declined.
The call
Kai's words, verbatim:
Windows blocking file locks will not be built. Every acceptance criterion in this issue is declined, including the one asking Ward to remove its skip and pass the reservation serialization test. Ward's skip becomes permanent.
What was rejected, and why
ExclusiveandUnlockreturn nil, so a caller cannot distinguish a held lock from a no-op. Documenting a silent lie leaves the lie.What follows from the call, filed separately
Kai's scoping answer was "flock now, sweep the rest separately", so two issues rather than one rescope of this one:
pkg/flocknon-Unix returns success without locking. Remove the silent degradation so a non-Unix build fails loudly at the call rather than succeeding falsely.Both are narrower and more honest than this issue's ask, which is why this closes rather than being retitled: the request here was to implement Windows locking, and that request is refused.
Downstream
Ward's serialization test stays skipped, and its dependency note should be updated to point at this decision rather than at a pending implementation. Two concurrent Windows directors will both pass the same launch reservation gate, which is now a stated property rather than an outstanding bug.