clone

a personal forge on plain git: static pages, stacked-diff reviews, signed local ci, repo sites and releases

Write the stand-in rclone's listing whole in scenarios

cat committed 6d291bc
Three scenarios wait for the stand-in rclone's file to appear, then read
it; the shell creates it empty before ls or find writes, so under a full
parallel run private-flip read an empty listing and failed. The stand-in
now writes to a temporary file and renames it, or appends each run's
listing at once.
commit
6d291bcbe3a9c42c35ae132b88f6083a0e0ccfa7
parent
e0704ad293d2408d39739fec3a11ffd90aa59fbf
author
cat <admin@dev.site>
ci
✓ passed in 66s, signed by cat
kind
fix risk score 0.6 of 3, Jev's estimate
review
#2 Deploy a commit, not the working tree
ci attestation
forge-attestation 1
type ci
commit 6d291bcbe3a9c42c35ae132b88f6083a0e0ccfa7
tree fe83308c388136ac6a807072bf9ed8437a389234
script .forge/ci 05d612a331a46d602928c28846e036e53299df48
result pass
exit 0
started 2026-10-18T22:04:36Z
duration 66s
runner (not shown here; refs/notes/ci has it)
system Darwin 25.5.0 arm64
env host
log sha256:5adaf700dc883e202dbb30740d9de704fe40813406245420c8c5106fc6fe9479 234 lines
|remote: review #4: /dami/greet/reviews/4/
|pushed wip/i18n
|fdb3504 running .forge/ci: greet.sh: say what it is
|  | sh: /bin/sh
|  | ok   greet
|fdb3504 pass in 0s, signed
|pushed main
|remote: review #4: /dami/greet/reviews/4/
|pushed wip/i18n
|7c55794 running .forge/ci: wave at the world
|  | sh: /bin/sh
|  | FAIL greet : got 'hello, world o/', want 'hello, world'
|7c55794 fail in 0s, signed
|forge: 1 commit(s) did not pass
|remote: review #6: /dami/greet/reviews/6/
|pushed ana/wave
|2b61583 running .forge/ci: update the test for the wave
|  | sh: /bin/sh
|  | ok   greet
|2b61583 pass in 0s, signed
|remote: review #6: /dami/greet/reviews/6/
|pushed ana/wave
|warning: You appear to have cloned an empty repository.
|site home: deployed 7dad4c7 -> /sites/ana/dotfiles/home/
|created ana/notes
|remote: review #1: /ana/notes/reviews/1/
|pushed ana/todo
|landing #1 A todo list: ana/todo -> main
|e18b5eb running .forge/ci: web, server and Python versions of greet
|  | sh: /bin/sh
|  | ok   greet
|e18b5eb pass in 0s, signed
|pushed main
|eb70bc5 running .forge/ci: messages: notes for the later regions
|  | sh: /bin/sh
|  | ok   greet
|eb70bc5 pass in 0s, signed
|remote: review #7: /dami/greet/reviews/7/
|pushed dami/regions
|created dami/forge
|warning: You appear to have cloned an empty repository.
|site guide: deployed 323352f -> /sites/dami/forge/guide/
|(node:38561) ExperimentalWarning: stripTypeScriptTypes is an experimental feature and might change at any time
|(Use `node --trace-warnings ...` to show where the warning was created)
|built ana/dotfiles in 1s -> /Users/dami/Library/Caches/forge/ci/35f7a65d0235/demo/root/.forge/www
|(node:38685) ExperimentalWarning: stripTypeScriptTypes is an experimental feature and might change at any time
|(Use `node --trace-warnings ...` to show where the warning was created)
|built ana/notes in 0s -> /Users/dami/Library/Caches/forge/ci/35f7a65d0235/demo/root/.forge/www
|(node:38821) ExperimentalWarning: stripTypeScriptTypes is an experimental feature and might change at any time
|(Use `node --trace-warnings ...` to show where the warning was created)
|built dami/forge in 1s -> /Users/dami/Library/Caches/forge/ci/35f7a65d0235/demo/root/.forge/www
|(node:38950) ExperimentalWarning: stripTypeScriptTypes is an experimental feature and might change at any time
|(Use `node --trace-warnings ...` to show where the warning was created)
|built dami/greet in 1s -> /Users/dami/Library/Caches/forge/ci/35f7a65d0235/demo/root/.forge/www
|(node:39611) ExperimentalWarning: stripTypeScriptTypes is an experimental feature and might change at any time
|(Use `node --trace-warnings ...` to show where the warning was created)
|built - in 0s -> /Users/dami/Library/Caches/forge/ci/35f7a65d0235/demo/root/.forge/www
|226 of 226 pages render the same without 11ty
|guide: 4 files, links ok
|ok

Signature: good, cat

3 files changed, +6 -3
Mtest/scenarios/insights-private-pages.sh3++-
Mtest/scenarios/private-flip.sh3++-
Mtest/scenarios/release-private-web.sh3++-
M test/scenarios/insights-private-pages.sh +2 -1
M test/scenarios/private-flip.sh +2 -1
M test/scenarios/release-private-web.sh +2 -1