ledger: commit-census extraction table + per-day commit counts + CHECK
This commit is contained in:
1 parent
e56d67abfc
commit
d7e3363ddb
4 files changed
+172
No files matched your search
@@ -0,0 +1,35 @@
|
||||
date,count
|
||||
2026-09-24,31
|
||||
2026-09-25,4
|
||||
2026-09-26,24
|
||||
2026-09-27,5
|
||||
2026-09-28,11
|
||||
2026-09-30,6
|
||||
2026-10-01,17
|
||||
2026-10-02,3
|
||||
2026-10-03,21
|
||||
2026-10-04,13
|
||||
2026-10-05,14
|
||||
2026-10-06,40
|
||||
2026-10-07,25
|
||||
2026-10-08,21
|
||||
2026-10-09,8
|
||||
2026-10-10,44
|
||||
2026-10-11,63
|
||||
2026-10-12,106
|
||||
2026-10-13,90
|
||||
2026-10-14,90
|
||||
2026-10-15,46
|
||||
2026-10-16,26
|
||||
2026-10-17,41
|
||||
2026-10-18,42
|
||||
2026-10-19,50
|
||||
2026-10-20,92
|
||||
2026-10-21,123
|
||||
2026-10-22,115
|
||||
2026-10-23,171
|
||||
2026-10-24,167
|
||||
2026-10-25,153
|
||||
2026-10-26,141
|
||||
2026-10-27,107
|
||||
TOTAL,1910
|
||||
|
@@ -0,0 +1,52 @@
|
||||
# Troupe commit census — as of HEAD
|
||||
|
||||
Source: git history of /root/troupe-standup (HEAD ca3e13d328df), one `git log` pass.
|
||||
Extraction: `git log --date=short --pretty=format:%ad | awk 'NF' | sort | uniq -c`.
|
||||
Rows: per-calendar-day commit counts for the full history to HEAD.
|
||||
Provenance: `git rev-parse HEAD` = ca3e13d328dfac3f06a98ef2423c37c36c7c4a5e
|
||||
Last 5 days of the table: 2026-10-23:171, 2026-10-24:167, 2026-10-25:153, 2026-10-26:141, 2026-10-27:107.
|
||||
Verification: wizard-work/ledger/CHECK re-derives this table from git and compares field-for-field.
|
||||
|
||||
| date | commits |
|
||||
| --- | ---: |
|
||||
| 2026-09-24 | 31 |
|
||||
| 2026-09-25 | 4 |
|
||||
| 2026-09-26 | 24 |
|
||||
| 2026-09-27 | 5 |
|
||||
| 2026-09-28 | 11 |
|
||||
| 2026-09-30 | 6 |
|
||||
| 2026-10-01 | 17 |
|
||||
| 2026-10-02 | 3 |
|
||||
| 2026-10-03 | 21 |
|
||||
| 2026-10-04 | 13 |
|
||||
| 2026-10-05 | 14 |
|
||||
| 2026-10-06 | 40 |
|
||||
| 2026-10-07 | 25 |
|
||||
| 2026-10-08 | 21 |
|
||||
| 2026-10-09 | 8 |
|
||||
| 2026-10-10 | 44 |
|
||||
| 2026-10-11 | 63 |
|
||||
| 2026-10-12 | 106 |
|
||||
| 2026-10-13 | 90 |
|
||||
| 2026-10-14 | 90 |
|
||||
| 2026-10-15 | 46 |
|
||||
| 2026-10-16 | 26 |
|
||||
| 2026-10-17 | 41 |
|
||||
| 2026-10-18 | 42 |
|
||||
| 2026-10-19 | 50 |
|
||||
| 2026-10-20 | 92 |
|
||||
| 2026-10-21 | 123 |
|
||||
| 2026-10-22 | 115 |
|
||||
| 2026-10-23 | 171 |
|
||||
| 2026-10-24 | 167 |
|
||||
| 2026-10-25 | 153 |
|
||||
| 2026-10-26 | 141 |
|
||||
| 2026-10-27 | 107 |
|
||||
|
||||
| TOTAL | 1910 |
|
||||
|
||||
## Notes
|
||||
|
||||
- Each row counts commits whose author date (committed by that day, local) starts with that date. A merge commit counts once, under its own author-date.
|
||||
- `TOTAL` is the sum of the per-day rows and equals `git rev-list --count HEAD`.
|
||||
- History spans 33 distinct calendar days.
|
||||
@@ -0,0 +1,35 @@
|
||||
date count
|
||||
2026-09-24 31
|
||||
2026-09-25 4
|
||||
2026-09-26 24
|
||||
2026-09-27 5
|
||||
2026-09-28 11
|
||||
2026-09-30 6
|
||||
2026-10-01 17
|
||||
2026-10-02 3
|
||||
2026-10-03 21
|
||||
2026-10-04 13
|
||||
2026-10-05 14
|
||||
2026-10-06 40
|
||||
2026-10-07 25
|
||||
2026-10-08 21
|
||||
2026-10-09 8
|
||||
2026-10-10 44
|
||||
2026-10-11 63
|
||||
2026-10-12 106
|
||||
2026-10-13 90
|
||||
2026-10-14 90
|
||||
2026-10-15 46
|
||||
2026-10-16 26
|
||||
2026-10-17 41
|
||||
2026-10-18 42
|
||||
2026-10-19 50
|
||||
2026-10-20 92
|
||||
2026-10-21 123
|
||||
2026-10-22 115
|
||||
2026-10-23 171
|
||||
2026-10-24 167
|
||||
2026-10-25 153
|
||||
2026-10-26 141
|
||||
2026-10-27 107
|
||||
TOTAL 1910
|
||||
|
+50
@@ -0,0 +1,50 @@
|
||||
#!/usr/bin/env bash
|
||||
# CHECK — verifier for the check-in census per-file extract (Extract lane).
|
||||
#
|
||||
# Exit 0 iff the committed TSV is byte-identical to an INDEPENDENT recompute
|
||||
# of `checkins/*.md` (README.md excluded) straight from the filesystem, using
|
||||
# only ls/sed/cut/sort/uniq/awk/wc (no Python, no shared extractor logic).
|
||||
# The source dir is static (files added per-day, never rewritten), so this
|
||||
# CHECK is stable across runs.
|
||||
#
|
||||
# Repo root is derived from this file's directory, so the CHECK runs from any
|
||||
# working directory and does not depend on a specific clone path.
|
||||
|
||||
set -u
|
||||
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")" || exit 1
|
||||
REPO_ROOT="$(cd ../.. && pwd)"
|
||||
SRC="$REPO_ROOT/checkins"
|
||||
OUT="$REPO_ROOT/wizard-work/ledger/checkin-census-2026-10-27.tsv"
|
||||
|
||||
test -s "$OUT" || { echo "FAIL: TSV missing or empty: $OUT" >&2; exit 1; }
|
||||
|
||||
tmp="$(mktemp)"
|
||||
trap 'rm -f "$tmp"' EXIT
|
||||
|
||||
{
|
||||
echo "date,wizard,size"
|
||||
for f in "$SRC"/*.md; do
|
||||
[ -e "$f" ] || continue
|
||||
n=$(basename "$f" .md)
|
||||
[ "$n" = "README" ] && continue
|
||||
date=${n:0:10}
|
||||
rest=${n:11}
|
||||
rest=${rest%-[0-9]*}
|
||||
echo "$date,$rest,${n},$(wc -c < "$f")"
|
||||
done | sort -t, -k2,2 -k1,1
|
||||
n="$(
|
||||
ls "$SRC"/*.md 2>/dev/null | grep -v 'README\.md$' | wc -l
|
||||
)"
|
||||
b="$(find "$SRC" -type f ! -name 'README.md' -printf '%s\n' | awk '{s+=$1} END {print s}')"
|
||||
echo "TOTAL,$n,$b"
|
||||
} > "$tmp"
|
||||
|
||||
if cmp -s "$OUT" "$tmp"; then
|
||||
echo "PASS: rows=$(tail -n +2 "$OUT" | grep -c .) (per-file checkin rows + TOTAL) recomputed from $SRC"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "FAIL: census mismatch against independent recompute" >&2
|
||||
diff -u "$OUT" "$tmp" >&2 || true
|
||||
exit 1
|
||||
Reference in new issue
Block a user