Skip to content

Commit e5f2f98

Browse files
eval: construct immutable seed history with plumbing
agent-session-id: dev3.dotfiles-cos-misc-st2-resource-design agent-tool: Codex agent-tool-version: 0.145.0 agent-model: gpt-5.6-sol agent-runtime-profile: /home/schickling/.local/state/agent-session-recovery/2026-07-29-pty-st2-cutover/runtime-profile/profile-without-null-opencode.json agent-skills-manifest: /nix/store/kx5j47nghj1yps2v693ryb6wnf1c2xhb-agent-skills-corpus/share/agent-skills/manifest.json tooling-profile: dotfiles@16a22c6
1 parent 59ebc6d commit e5f2f98

5 files changed

Lines changed: 50 additions & 21 deletions

File tree

cells/hook-integrity/fixture/setup.sh

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,19 @@
22
set -euo pipefail
33

44
catalog="${CATALOG:?CATALOG must be set}/net"
5-
author_name="$(git config --get user.name)"
6-
author_email="$(git config --get user.email)"
7-
[ -n "$author_name" ] && [ -n "$author_email" ] || {
8-
echo "FAIL: the invoking Git identity must be configured before materializing the eval" >&2
9-
exit 1
10-
}
115
for workspace in "$catalog/workspace" "$catalog/codex-workspace"; do
126
git -C "$workspace" init -q -b main
137
git -C "$workspace" add README.md
14-
git -C "$workspace" \
15-
-c user.name="$author_name" \
16-
-c user.email="$author_email" \
17-
commit -q -m "seed hook materialization workspace"
8+
# Seed history is fixture data; plumbing keeps agent commit hooks out of immutable setup.
9+
seed_tree="$(git -C "$workspace" write-tree)"
10+
seed_commit="$(
11+
printf '%s\n' "seed hook materialization workspace" |
12+
GIT_AUTHOR_NAME="eval-seed" GIT_AUTHOR_EMAIL="seed@eval.local" \
13+
GIT_COMMITTER_NAME="eval-seed" GIT_COMMITTER_EMAIL="seed@eval.local" \
14+
GIT_AUTHOR_DATE="2026-07-30T00:00:00Z" GIT_COMMITTER_DATE="2026-07-30T00:00:00Z" \
15+
git -C "$workspace" commit-tree "$seed_tree"
16+
)"
17+
git -C "$workspace" update-ref refs/heads/main "$seed_commit"
1818

1919
test -z "$(git -C "$workspace" status --porcelain)"
2020
printf 'seeded clean workspace: %s\n' "$workspace"

cells/render-target-safety/fixture/setup.sh

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,18 @@
22
set -euo pipefail
33

44
net="${CATALOG:?CATALOG must be set}/net"
5-
author_name="$(git config --get user.name)"
6-
author_email="$(git config --get user.email)"
7-
[ -n "$author_name" ] && [ -n "$author_email" ] || {
8-
echo "FAIL: the invoking Git identity must be configured before materializing the eval" >&2
9-
exit 1
10-
}
115
for workspace in "$net/good-workspace" "$net/bad-workspace"; do
126
git -C "$workspace" init -q -b main
137
git -C "$workspace" add README.md
14-
git -C "$workspace" -c user.name="$author_name" -c user.email="$author_email" \
15-
commit -q -m "seed render target"
8+
# Seed history is fixture data; plumbing keeps agent commit hooks out of immutable setup.
9+
seed_tree="$(git -C "$workspace" write-tree)"
10+
seed_commit="$(
11+
printf '%s\n' "seed render target" |
12+
GIT_AUTHOR_NAME="eval-seed" GIT_AUTHOR_EMAIL="seed@eval.local" \
13+
GIT_COMMITTER_NAME="eval-seed" GIT_COMMITTER_EMAIL="seed@eval.local" \
14+
GIT_AUTHOR_DATE="2026-07-30T00:00:00Z" GIT_COMMITTER_DATE="2026-07-30T00:00:00Z" \
15+
git -C "$workspace" commit-tree "$seed_tree"
16+
)"
17+
git -C "$workspace" update-ref refs/heads/main "$seed_commit"
1618
test -z "$(git -C "$workspace" status --porcelain)"
1719
done

cells/signal-rename-codex/fixture/materialize.sh

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,16 @@ GI
5858
echo "== git init seed + bare origin =="
5959
git -C "$SEED" init -q -b main
6060
git -C "$SEED" add -A
61-
git -C "$SEED" commit -q -m "seed: synthetic signal workspace (base + relay + hub + config)"
61+
# Seed history is fixture data; plumbing keeps agent commit hooks out of immutable setup.
62+
seed_tree="$(git -C "$SEED" write-tree)"
63+
seed_commit="$(
64+
printf '%s\n' "seed: synthetic signal workspace (base + relay + hub + config)" |
65+
GIT_AUTHOR_NAME="eval-seed" GIT_AUTHOR_EMAIL="seed@local" \
66+
GIT_COMMITTER_NAME="eval-seed" GIT_COMMITTER_EMAIL="seed@local" \
67+
GIT_AUTHOR_DATE="2026-07-30T00:00:00Z" GIT_COMMITTER_DATE="2026-07-30T00:00:00Z" \
68+
git -C "$SEED" commit-tree "$seed_tree"
69+
)"
70+
git -C "$SEED" update-ref refs/heads/main "$seed_commit"
6271
git clone -q --bare "$SEED" "$SB/origin.git"
6372

6473
echo "== clone one full workspace per agent (distinct authors) + drop its persona =="

cells/signal-rename/fixture/materialize.sh

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,16 @@ GI
5959
echo "== git init seed + bare origin =="
6060
git -C "$SEED" init -q -b main
6161
git -C "$SEED" add -A
62-
git -C "$SEED" commit -q -m "seed: synthetic signal workspace (base + relay + hub + config)"
62+
# Seed history is fixture data; plumbing keeps agent commit hooks out of immutable setup.
63+
seed_tree="$(git -C "$SEED" write-tree)"
64+
seed_commit="$(
65+
printf '%s\n' "seed: synthetic signal workspace (base + relay + hub + config)" |
66+
GIT_AUTHOR_NAME="eval-seed" GIT_AUTHOR_EMAIL="seed@local" \
67+
GIT_COMMITTER_NAME="eval-seed" GIT_COMMITTER_EMAIL="seed@local" \
68+
GIT_AUTHOR_DATE="2026-07-30T00:00:00Z" GIT_COMMITTER_DATE="2026-07-30T00:00:00Z" \
69+
git -C "$SEED" commit-tree "$seed_tree"
70+
)"
71+
git -C "$SEED" update-ref refs/heads/main "$seed_commit"
6372
git clone -q --bare "$SEED" "$SB/origin.git"
6473

6574
echo "== clone one full workspace per agent (distinct authors) + drop its persona =="

cells/weird-git-setup/fixture/setup-megarepo.sh

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,16 @@ MD
5353
echo "== git init seed -> bare canonical.git (the shared object store + refs) =="
5454
git -C "$SEED" init -q -b main
5555
git -C "$SEED" add -A
56-
git -C "$SEED" commit -q -m "clampkit: initial (has a planted above-range bug)"
56+
# Seed history is fixture data; plumbing keeps agent commit hooks out of immutable setup.
57+
seed_tree="$(git -C "$SEED" write-tree)"
58+
seed_commit="$(
59+
printf '%s\n' "clampkit: initial (has a planted above-range bug)" |
60+
GIT_AUTHOR_NAME="eval-seed" GIT_AUTHOR_EMAIL="seed@eval.local" \
61+
GIT_COMMITTER_NAME="eval-seed" GIT_COMMITTER_EMAIL="seed@eval.local" \
62+
GIT_AUTHOR_DATE="2026-07-30T00:00:00Z" GIT_COMMITTER_DATE="2026-07-30T00:00:00Z" \
63+
git -C "$SEED" commit-tree "$seed_tree"
64+
)"
65+
git -C "$SEED" update-ref refs/heads/main "$seed_commit"
5766
git clone -q --bare "$SEED" "$SB/canonical.git"
5867

5968
echo "== add TWO linked worktrees off the bare canonical (the megarepo shape) =="

0 commit comments

Comments
 (0)