Skip to content

feat(lint): lease-mutation fence + roadmap progress log (coupling-core E3)#468

Merged
proboscis merged 2 commits into
mainfrom
feat/coupling-core-lease-guard
Jun 12, 2026
Merged

feat(lint): lease-mutation fence + roadmap progress log (coupling-core E3)#468
proboscis merged 2 commits into
mainfrom
feat/coupling-core-lease-guard

Conversation

@proboscis

Copy link
Copy Markdown
Owner

Stacked on #467. Phase E3 of the coupling-core roadmap: the static guard for the worker-lease core.

  • New semgrep rule worker-lease-mutation-surface: entry writes/deletes on s.workers / s.workerLeases are confined to internal/daemon/worker_plane.go (write surface LW1–LW5 in docs/design/worker-lease.md, PR docs(design): worker-lease survey + draft laws (coupling-core Phase E1) #465).
  • Zero current violations — a pure fence with no frozen whitelist, unlike the status-write rule.
  • Fixture tests (4 ruleid + 2 ok) wired into make lint; negative-tested with a synthetic delete(s.workerLeases, …) in socket.go (1 finding, reverted).
  • Roadmap progress log updated for Phases C/D/E (F1 living-document maintenance).

Remaining for the lease core: E2 — promote LL1–LL5 draft laws to property tests.

🤖 Generated with Claude Code

proboscis and others added 2 commits June 12, 2026 15:14
…o (coupling-core E3)

Adds semgrep rule worker-lease-mutation-surface: writing or deleting
entries of s.workers / s.workerLeases outside
internal/daemon/worker_plane.go is an error. The lease write surface
(LW1-LW5, docs/design/worker-lease.md) currently has zero violations, so
the rule ships with no annotations - it is a pure fence, the mirror of
run-status-write-surface for the second coupling core. Fixture tests
wired into make lint; a synthetic mutation in socket.go trips the rule
(negative-tested, reverted).

Also appends the Phase C/D/E progress log to the coupling-core roadmap.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
(The previous commit's message claimed this edit; it had failed to apply.)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@proboscis proboscis changed the base branch from feat/coupling-core-phase-c to main June 12, 2026 07:58
@proboscis proboscis merged commit 0b0014d into main Jun 12, 2026
@proboscis proboscis deleted the feat/coupling-core-lease-guard branch June 12, 2026 07:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant