Skip to content

cleanup(tick-history): batch-fix col1 schema violations across 15 shards#971

Merged
AceHack merged 1 commit intomainfrom
cleanup/tick-history-shard-col1-schema-violations-batch-fix-2026-04-30
Apr 30, 2026
Merged

cleanup(tick-history): batch-fix col1 schema violations across 15 shards#971
AceHack merged 1 commit intomainfrom
cleanup/tick-history-shard-col1-schema-violations-batch-fix-2026-04-30

Conversation

@AceHack
Copy link
Copy Markdown
Member

@AceHack AceHack commented Apr 30, 2026

Summary

Batch-fixes the col1 parenthetical schema violation that Copilot caught on the 6 stale PRs (#745, #746, #747, #753, #754, #755) and on PR #970 — the same pattern existed across 15 shards on main dating back to April 28.

Per docs/hygiene-history/ticks/README.md schema:

| <ISO 8601 UTC timestamp> | <model id> | <cron sentinel> | <body> | <PR ref> | <observation> |

The first column must be exactly the ISO-8601 UTC timestamp. The parenthetical context (e.g. "(autonomous-loop tick — peer-call substrate cluster)") was being appended after the timestamp in col1 across many shards.

Why this matters

Per the just-landed rediscoverable-from-main invariant on docs/AUTONOMOUS-LOOP.md (#969), tick-history is one of the four properties that makes the invariant true. Schema drift on main means future agents see two incompatible patterns and have to guess. Schema-uniform shards make the read surface predictable.

Files affected (15)

  • docs/hygiene-history/ticks/2026/04/28/{0408,0418,0433,0501}Z.md
  • docs/hygiene-history/ticks/2026/04/29/{0235,0240,0320,0350,0400,0425,0430,0435,0440}Z.md
  • docs/hygiene-history/ticks/2026/04/30/{2018,2312}Z.md

How fixed

For each shard, the (...) parenthetical between the timestamp and the next | column boundary was removed. Body content (col4) already restated the tick context, so no information lost. Trailing newline added to 3 files where the python regex pass had stripped it.

Test plan

  • All 15 shards verified col1-compliant via grep filter
  • markdownlint passes on all fixed shards
  • Body content preserved (only col1 prose stripped)
  • No same-day in-flight PR conflicts (only past-tick shards on main)

🤖 Generated with Claude Code

Per docs/hygiene-history/ticks/README.md schema, the first
column of each shard MUST be exactly an ISO-8601 UTC timestamp.
15 shards (April 28, 29, 30) carried a parenthetical context
appended to the timestamp in col1 — pattern caught by Copilot
on PRs #745-755 + #970.

The parenthetical content is preserved by each shard's body
column (col4) which already restates the tick context. The
fix removes the col1 violation without losing information.

Surface drift fix per the just-landed rediscoverable-from-main
invariant on docs/AUTONOMOUS-LOOP.md (#969): tick-history is
one of the four properties that makes the invariant true. If
shards drift in format on main, future agents see two
incompatible patterns and have to guess. Schema-uniform shards
make the read surface predictable.

Files affected (15):
- docs/hygiene-history/ticks/2026/04/28/{0408,0418,0433,0501}Z.md
- docs/hygiene-history/ticks/2026/04/29/{0235,0240,0320,0350,0400,0425,0430,0435,0440}Z.md
- docs/hygiene-history/ticks/2026/04/30/{2018,2312}Z.md

No data loss — only col1 prose drift removed; body context
fully preserved. Trailing newline added on 3 files where it
was missing.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings April 30, 2026 23:19
@AceHack AceHack enabled auto-merge (squash) April 30, 2026 23:19
@AceHack AceHack merged commit c9bd055 into main Apr 30, 2026
22 checks passed
@AceHack AceHack deleted the cleanup/tick-history-shard-col1-schema-violations-batch-fix-2026-04-30 branch April 30, 2026 23:22
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Batch schema-cleanup for tick-history shard files to keep the shard “first column” strictly ISO-8601 UTC timestamps (per docs/hygiene-history/ticks/README.md), removing appended parenthetical context that caused schema drift across multiple existing shards.

Changes:

  • Removed parenthetical tick-context text that had been appended after the timestamp in column 1 across 15 shard files.
  • Normalized shard first-line formatting to keep the timestamp column parseable and schema-compliant (and restored trailing newlines where needed).

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated no comments.

Show a summary per file
File Description
docs/hygiene-history/ticks/2026/04/28/0408Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/28/0418Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/28/0433Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/28/0501Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/29/0235Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/29/0240Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/29/0320Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/29/0350Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/29/0400Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/29/0425Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/29/0430Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/29/0435Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/29/0440Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/30/2018Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.
docs/hygiene-history/ticks/2026/04/30/2312Z.md Removes col1 parenthetical so the first column is a strict ISO-8601 timestamp.

AceHack added a commit that referenced this pull request Apr 30, 2026
…g future tick-times — surface for maintainer decision before mass-fixing col1 (#973)

Codex P2 review on PR #740 caught a pattern across 14+ open
tick-history shard PRs from 2026-04-29: col1 tick-times are
40-80 minutes ahead of the commits' author-times. The shards
weren't recording past ticks — they were prefabricating shard
files for future tick slots.

Empirical sample:

| PR | PR opened | Claimed tick | Commit author | Gap |
|---|---|---|---|---|
| #728 | 02:05:49Z | 02:45:00Z | 02:05:42Z | +40m |
| #730 | 02:07:17Z | 02:55:00Z | 02:07:14Z | +48m |
| #734 | 02:14:15Z | 03:15:00Z | 02:14:12Z | +61m |
| #740 | 02:24:24Z | 03:45:00Z | 02:24:20Z | +81m |

The prior-tick col1 cleanup (PR #971) on 15 shards already
on main and the per-PR force-pushes on #745-755 + #968 fixed
the schema-violating parenthetical, but the underlying
prefabrication concern was buried under the more visible
Copilot-P1 col1 finding.

Two interpretations:

1. Mis-timestamped recording — agent computed col1 wrong
2. Intentional batch prefabrication of future-tick receipts

Either way, mechanically fixing col1 on the remaining 14 PRs
would launder the prefabrication: shards would look schema-
compliant but still claim factually-incorrect tick times.

Composes with the rediscoverable-from-main invariant landed
in PR #969: tick-history-on-main is one of four supporting
properties; false time-claims subvert the invariant.

Decision options for the maintainer (in the file):

- Close affected PRs (audit-trail integrity over evidence-
  density)
- Rewrite col1 to commit-time
- Add a note column for time-of-record vs time-of-event
- Accept prefab pattern as intentional

Filing this as substrate (per substrate-or-it-didn't-happen)
and explicitly NOT mass-fixing col1 on those PRs until
direction.

MEMORY.md index entry added; latest-paired-edit marker
updated.

Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants