Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
8a74c23
ci: publish Codex Git release artifacts
ttaylorr-oai Jul 14, 2026
f362c18
ci: prepare Windows package before SDK setup
ttaylorr-oai Jul 14, 2026
3a68e43
ci: use Windows runner processor count
ttaylorr-oai Jul 14, 2026
e7ad0f2
ci: stabilize Windows SDK environment
ttaylorr-oai Jul 14, 2026
466e67c
ci: build Windows arm64 on native runner
ttaylorr-oai Jul 14, 2026
4095be8
ci: recognize Windows arm64 binaries
ttaylorr-oai Jul 14, 2026
a31aede
ci: slim Codex release artifacts
ttaylorr-oai Jul 14, 2026
f90d09a
ci: loosen artifact size guardrails
ttaylorr-oai Jul 14, 2026
a41101f
ci: release only controller-published Codex commits
ttaylorr-oai Aug 4, 2026
a9de123
maintenance: account for promisor pack geometry
ttaylorr-oai Aug 4, 2026
dc2fffc
maintenance: trigger --auto for promisor rollups
ttaylorr-oai Aug 4, 2026
ba107e0
ci: release controller-published Codex unstable commits
ttaylorr-oai Aug 5, 2026
40589b5
ci: stamp Codex release source refs
ttaylorr-oai Aug 5, 2026
5cd3b37
ci: scan approved Codex topics through pinned plans
ttaylorr-oai Aug 7, 2026
012e49a
ci: run Codex Linux arm64 releases natively
ttaylorr-oai Jul 21, 2026
3972a3e
ci: build Codex Git releases with LTO
ttaylorr-oai Jul 21, 2026
6e6ec36
ci: build Codex Git from dugite fork
dreynaud-oai Jul 21, 2026
f0ee69f
ci: train Codex Git releases with PGO
ttaylorr-oai Jul 21, 2026
da56896
http-fetch: correct --index-pack-arg documentation
tnm-oai Jul 27, 2026
aae9a24
http: avoid closing index-pack input twice
tnm-oai Jul 27, 2026
a6d49d8
http: accept HTTP 416 for complete partial packs
tnm-oai Jul 27, 2026
7dfd028
http: avoid concurrent appends to partial packs
tnm-oai Jul 27, 2026
6f5e4ba
http: permit unlinking partial packs on Windows
tnm-oai Jul 27, 2026
4cc8b32
fetch-pack: accept "pack" output for packfile URIs
tnm-oai Jul 27, 2026
091aa86
pack-objects: trace bytes written to stdout
friel-openai Aug 15, 2026
9f46d10
pack-objects: trace bytes for all pack output
friel-openai Aug 17, 2026
9abdcdc
pack-objects: accumulate bytes after finalization
friel-openai Aug 17, 2026
5a0134a
Merge tb/codex/automation into codex
chatgpt-codex-connector[bot] Aug 20, 2026
9af0ac9
Merge tb/codex/geometric-maintenance-promisor into codex
chatgpt-codex-connector[bot] Aug 20, 2026
4f05196
Merge tb/codex/release into codex
chatgpt-codex-connector[bot] Aug 20, 2026
3cb34f5
Merge dr/codex/dugite into codex
chatgpt-codex-connector[bot] Aug 20, 2026
f9dc72b
Merge tb/codex/lto-pgo into codex
chatgpt-codex-connector[bot] Aug 20, 2026
d3e1fc7
Merge tb/codex/packfile-uri-concurrency into codex
chatgpt-codex-connector[bot] Aug 20, 2026
c4ab2e0
Merge af/codex/pack-bytes into codex
chatgpt-codex-connector[bot] Aug 20, 2026
633e355
index-pack: hash full blobs in a bounded worker pool
ttaylorr-oai Aug 21, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 60 additions & 0 deletions .github/workflows/codex-pgo-training.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
#!/bin/sh

# Keep this workload short and biased toward the local Git operations Codex
# invokes frequently. The full Git test suite is too slow for each release
# target and would weight test-harness paths more heavily than status, diff,
# clone, fetch, and repository maintenance.

set -eu

git_bin="$PWD/bin-wrappers/git"
training_dir=$(mktemp -d "${TMPDIR:-/tmp}/codex-git-pgo.XXXXXX")
repo="$training_dir/repo"
clone="$training_dir/clone"

cleanup () {
rm -rf "$training_dir"
}
trap cleanup EXIT HUP INT TERM

mkdir -p "$training_dir/home"
export HOME="$training_dir/home"
export GIT_CONFIG_NOSYSTEM=1
export GIT_TERMINAL_PROMPT=0

"$git_bin" clone --quiet --no-local "$PWD" "$repo"
"$git_bin" -C "$repo" config user.name "Codex Git PGO"
"$git_bin" -C "$repo" config user.email "codex-git-pgo@openai.com"

i=0
while test "$i" -lt 256
do
dir="$repo/training/$((i % 16))"
mkdir -p "$dir"
printf '%s\n' "$i" >"$dir/file-$i"
i=$((i + 1))
done

"$git_bin" -C "$repo" status --porcelain=v2 --branch >/dev/null
"$git_bin" -C "$repo" status --porcelain=v2 --branch --untracked-files=all >/dev/null
"$git_bin" -C "$repo" ls-files --others --exclude-standard >/dev/null
"$git_bin" -C "$repo" add training
"$git_bin" -C "$repo" diff --cached --stat >/dev/null
"$git_bin" -C "$repo" commit --quiet -m "add training files"

printf 'changed\n' >>"$repo/training/0/file-0"
rm "$repo/training/1/file-1"
mkdir -p "$repo/untracked"
printf 'new\n' >"$repo/untracked/file"

"$git_bin" -C "$repo" status --porcelain=v2 --branch >/dev/null
"$git_bin" -C "$repo" diff --stat >/dev/null
"$git_bin" -C "$repo" diff --name-status >/dev/null
"$git_bin" -C "$repo" ls-files --stage >/dev/null
"$git_bin" -C "$repo" log --oneline --decorate -20 >/dev/null
"$git_bin" -C "$repo" rev-list --objects --all >/dev/null
"$git_bin" -C "$repo" for-each-ref --format='%(refname) %(objectname)' >/dev/null
"$git_bin" -C "$repo" repack -ad
"$git_bin" clone --quiet --no-local "$repo" "$clone"
"$git_bin" -C "$clone" status --porcelain=v2 --branch >/dev/null
"$git_bin" -C "$clone" fetch --quiet "$repo"
Loading
Loading