CLAUDE LABJP
RELEASE — Claude Code v2.1.248 shipped on August 27, followed a day later by v2.1.250, a one-line stabilizing release. It is the largest batch of changes this weekRESTRICTED — The new --restricted flag drops the built-in tools that run commands or code along with WebFetch, keeps file work inside the working directory, and refuses bypassPermissionsSECURITY — /ultrareview was uploading credential files such as prod.env, *.tfvars, and swap or backup copies like key.pem.tmp. Those now stay on your machineTOKENS — The Workflow tool's description shrank from roughly 5.7k tokens to about 1k, with the script-writing reference moved into a bundled workflow-authoring skillHARDWARE — Anthropic released the Model Hardware Standard as a research preview, a way to connect Claude to scientific, robotics, and manufacturing hardwareLIMITS — The 50% weekly limit increase runs through August 31 for Pro, Max, Team, and seat-billed Enterprise accounts, which leaves two daysRELEASE — Claude Code v2.1.248 shipped on August 27, followed a day later by v2.1.250, a one-line stabilizing release. It is the largest batch of changes this weekRESTRICTED — The new --restricted flag drops the built-in tools that run commands or code along with WebFetch, keeps file work inside the working directory, and refuses bypassPermissionsSECURITY — /ultrareview was uploading credential files such as prod.env, *.tfvars, and swap or backup copies like key.pem.tmp. Those now stay on your machineTOKENS — The Workflow tool's description shrank from roughly 5.7k tokens to about 1k, with the script-writing reference moved into a bundled workflow-authoring skillHARDWARE — Anthropic released the Model Hardware Standard as a research preview, a way to connect Claude to scientific, robotics, and manufacturing hardwareLIMITS — The 50% weekly limit increase runs through August 31 for Pro, Max, Team, and seat-billed Enterprise accounts, which leaves two days
Articles/Cowork
Cowork/2026-08-29Advanced

The lock I left in a shared folder shut out every run after the first

A cloud-synced connected folder allows create, append, and rename, but refuses delete. Putting a single-instance lock there quietly disabled every unattended run after the first. Measurements for three lock styles, plus an implementation that picks a safe location.

Cowork35scheduled tasks9connected folder2lockingunattended automation6

Premium Article

A job I had queued the night before finished with a single line in the log. Not an error. Just the branch I had written myself: "another process is running, skipping this round."

No other process was running.

As an indie developer I hand more and more of the routine work to unattended scheduled runs, and several of those runs touch the same connected folder. Double execution was the one thing I wanted to rule out, so I added a lock. The mistake was where I put it — in the most reliably shared place I could think of, which was the connected folder itself.

The mutual exclusion worked. It worked so well that it never let go.

The locking part was fine

My first suspicion was the acquisition logic. If nothing was competing but the code said otherwise, the condition must be wrong. So I checked whether exclusion was happening at all.

# hold the lock for 3 seconds in one shell, then try a second one
( flock -n 9 && sleep 3 ) 9> "$SHARED/slot.lock" &
sleep 0.5
( flock -n 9 && echo "second acquired (unexpected)" \
              || echo "second blocked (as expected)" ) 9> "$SHARED/slot.lock"
wait

The answer came back second blocked (as expected). flock behaves correctly on this folder. This was not the classic story of advisory locks failing over a network filesystem.

The problem was on the other side of the lock's life.

Only deletion was refused

I broke a file's life cycle into individual operations and ran each one in the same place: create, append, read, rename, make a directory, and remove.

T="$SHARED/probe_test"
echo x >  "$T"          # create
echo y >> "$T"          # append
cat "$T" > /dev/null    # read
mv  "$T" "$T.renamed"   # rename
rm -f "$T.renamed"      # delete
mkdir "$SHARED/probe_dir" && rmdir "$SHARED/probe_dir"

Here is what my environment returned.

OperationConnected folder (cloud-synced)Local sandbox storage
Create (>)OKOK
Append (>>)OKOK
ReadOKOK
Rename (mv)OKOK
Create directory (mkdir)OKOK
Delete (rm)Operation not permittedOK
Remove directory (rmdir)Operation not permittedOK

A writability check passes here. Mine did. You can create, you can append, you can even rename, so as far as write permission goes nothing is wrong.

Deletion is the only refusal. And a single-instance lock is a mechanism that only works if you can delete it.

Thank you for reading this far.

Continue Reading

What follows includes implementation code, benchmarks, and practical content we hope you'll find useful. This site runs without ads — server and development costs are supported entirely by members like you. If it's been helpful, we'd be truly grateful for your support.

WHAT YOU'LL LEARN
You will be able to tell, before the second unattended run, whether your lock style can actually be released where you put it
You will be able to swap mkdir locks, noclobber locks, and flock for a form that stays correct even when deletes are refused
You will be able to turn lock-caused skips into recorded outcomes instead of silent successes, so a job cannot sit dead for days unnoticed
Secure payment via Stripe · Cancel anytime

Unlock This Article

Get full access to the rest of this article. Buy once, read anytime. This site is ad-free — your support goes directly toward keeping it running.

or
Unlock all articles with Membership →
Share

Thank You for Reading

Claude Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • Copy-paste ready implementation code
  • New advanced guides published daily
  • $5/mo or $15 for lifetime access
View Membership →

Related Articles

Cowork2026-08-24
I counted the keys in my connected folder: filenames found 5 of the 18
A record of counting what lives inside a connected folder, once by filename and once by file contents. Filenames returned 24 hits of which only 5 were real, while a content scan returned 18 of which 13 left no trace in their names. Includes a scanner that never prints a secret, its real output, and the rules I adopted afterwards.
Cowork2026-06-23
Stopping an Unattended Writer From Publishing the Same Article Twice
When a Cowork scheduled task generates articles every day, the real danger isn't a crash — it's quietly publishing a piece that overlaps with one from a few days ago. Here is a gate that compares slug similarity and the day's log before publishing, built from a near-miss I caught this morning.
Cowork2026-06-21
Why Cowork's bash Says 'No Such File' When Finder Shows It Right There
Connect a cloud-synced folder to Cowork and bash sees empty placeholders while cat fails. Here is how on-demand materialization actually works, and the design patterns that keep your automations from silently dropping data.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links
See all →