Skip to content

fix(ci): repair PR sizing and cold-start checks; audit upstream sync - #6

Merged
Hylouis233 merged 23 commits into
mainfrom
fix/upstream-sync-diagnostics
Sep 21, 2026
Merged

Hylouis233 merged 23 commits into
mainfrom
fix/upstream-sync-diagnostics

Conversation

@Hylouis233

@Hylouis233 Hylouis233 commented Sep 20, 2026 •

Copy link
Copy Markdown
Owner

Purpose

Repair the fork's CI blockers and add complete, read-only Git-object diagnostics for upstream synchronization PR #4. This PR does not import upstream application code or authorize an upstream merge.

Changes

  • Handle GitHub's 3,000-file PR listing cap without inventing exact totals. An incomplete listing may prove size:XXL only when observed non-test lines already establish that lower bound; otherwise use size:unknown. Unexpected truncation, invalid statistics and API failures still fail. Trust policy and stale-head checks remain intact.
  • Trigger PR-size checks when their regression tests change. The write-capable labeler continues to load trusted default-branch code, never PR code.
  • Test cold Shiki initialization in source-first and snippet-first order. Hold Date.now fixed inside those tests, restore it in finally, and retain exact token equality plus numeric/operator assertions. Production tokenization limits and long-line safeguards are unchanged.
  • Run repository-wide vp fmt --check separately from vp check --no-fmt; retain all lint rules, the separate workspace typecheck, desktop build, preload validation and PR Gate. Preserve raw lint output and checked source as failure artifacts with pipefail enabled.
  • Use node:os.devNull in the standalone audit and its Git fixture instead of two direct process.platform reads. Remove one obsolete unused lint suppression. UTF-8 validation and Git configuration isolation are unchanged.
  • Retain the read-only upstream audit: immutable heads, disposable bare repositories, mode/blob identities, complete path enumeration, conflict and overlap reporting. It does not check out or execute upstream code, install dependencies, push refs, approve checks, merge or publish.

Evidence and verification

  • Current repair head: 987761d20104de7e7c6430296ab75f7144505bba; base at this checkpoint: e03b7dee5dd3a45a5aed8d35bf63cc6480599901.
  • All 61 focused PR-policy, sync and audit tests passed locally after the final audit changes, including the real 3,102-path Git history, invalid UTF-8 rejection, all non-NUL ASCII path characters, unchanged refs and merge authorization guards. This is not a local full application CI run.
  • Verified final audit blobs: source 14906254b6fd71540ec2c4b7592ec1d06ef0e5e2, test a788ebd661a9c35fb43ff8374231862486b071e1.
  • Full Test, all three Test Server shards, Rust, Release Smoke and mobile native static analysis passed on predecessor 0021db3. Repository-wide standalone formatting also passed there. Those checks are not reused as validation of the current head.
  • Raw check.log from artifact 10626653205, with verified archive SHA-256 e414098395d3962f7bc15c46047f74864ba20ddaad89bb8548b7f8c15f011f30, established the actual three lint blockers: process.platform in the audit and fixture, plus one unused disable directive. The repair addresses precisely these diagnostics.
  • Earlier fetched log excerpts alleged control-character regex and desktop startup errors that did not match the raw artifact or lint implementation. They are not supported root causes. No desktop startup change or regex rewrite remains in this PR.
  • Fresh CI 35574114297 is running for the current head; upstream diagnostics 35574114285 has succeeded. Full current-head CI is not yet reported as passed.

Boundaries

The audit retains diagnosticOnly=true, validationSucceeded=false, and mergeAuthorized=false. NUL delimits Git records while other valid path characters are preserved. PR diagnostics have a separate concurrency group and cannot enter write-capable upstream preparation or merging. Review thread PRRT_kwDOT_UOv85_AXnM is resolved.

Candidate validation, branch protection, required checks and publishing restrictions remain unchanged. PR #4 still requires separate semantic review and exact-candidate application validation. The labeler repair only takes effect for trusted label jobs after this PR reaches the default branch.

Implementation: GPT-6 Astra Pro via ChatGPT, local Node/TypeScript checks and the GitHub connector.

…ence

Add a read-only diagnostic job to the existing sync workflow, without changing merge gates or approving checks. Capture exact public heads, enumerate raw path/mode/blob changes without REST file-list limits, and compute actual conflicts in a disposable bare repository without checkout, credentials, submodules or application execution.

Six local regression tests passed, including a real Git history with 3,102 changed paths, a README conflict, unchanged refs and preserved working files. Full repository CI remains required before merge. This prerequisite supports existing sync PR #4; it is not an upstream import.

Implementation: GPT-6 Astra Pro via ChatGPT and the GitHub connector.
Copilot AI lite review requested due to automatic review settings September 20, 2026 04:23

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 20, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-21T07:43:52.546938Z 987761d New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions github-actions Bot added vouch:trusted Author has write access or is explicitly trusted by OpenT3Code. size:L 100-499 effective changed lines. labels Sep 20, 2026
@github-actions

github-actions Bot commented Sep 20, 2026 •

Copy link
Copy Markdown

Thread transfer impact

✅ Thread transfer remains within every enforced ceiling.

Provider Metric Main baseline This PR Impact PR ceiling
Codex Total thread wire 13.6 KiB 13.6 KiB +13 B (+0.1%) 15.1 KiB ✅
Codex Thread snapshot wire 7.1 KiB 7.1 KiB +3 B (+0.0%) 7.3 KiB ✅
Codex Live turn WebSocket wire 6.5 KiB 6.5 KiB +10 B (+0.1%) 7.8 KiB ✅
Codex Live turn WebSocket decoded 57.0 KiB 57.1 KiB +44 B (+0.1%) 66.4 KiB ✅
Codex Live turn messages 9 10 +1 (+11.1%) 21 ✅
Claude Total thread wire 13.6 KiB 13.5 KiB −130 B (−0.9%) 15.1 KiB ✅
Claude Thread snapshot wire 7.1 KiB 7.1 KiB +1 B (+0.0%) 7.3 KiB ✅
Claude Live turn WebSocket wire 6.5 KiB 6.4 KiB −131 B (−2.0%) 7.8 KiB ✅
Claude Live turn WebSocket decoded 57.8 KiB 57.0 KiB −884 B (−1.5%) 66.4 KiB ✅
Claude Live turn messages 9 8 −1 (−11.1%) 21 ✅

Baseline: e03b7de · PR result: 987761d · Source CI: success

Scenario and decoded snapshot size

10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.

  • Codex decoded thread snapshot: 113.9 KiB
  • Claude decoded thread snapshot: 114.6 KiB

Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed.

Use the formatting diagnostics emitted by CI 35489039234 without changing behavior. Re-ran all six focused local regression tests successfully. Real upstream Git-object audit 35489039228 completed and produced a complete inventory with two actual conflicted paths; it is diagnostic evidence, not candidate validation.
…ration

CI 35489305432 rejected a fixture commit because the hosted runner had no author identity. Supply process-scoped fixture author and committer identities, exclude ambient global/system Git config, and assert the generated commit identity. No real repository identity or merge policy is changed. All six focused local tests pass; fresh full CI remains required.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f7beeff288

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .github/workflows/opent3code-sync.yml
@Hylouis233 Hylouis233 changed the title fix(ci): diagnose upstream sync conflicts beyond API file limits fix(ci): repair PR sizing and cold-start checks; audit upstream sync Sep 21, 2026
Restore the multiline pipe expressions required by the pinned formatter. CI run 35571866895 produced an exact diff from blob 111045c to the existing blob 0d626a5; do not infer formatting from earlier inconsistent logs.

Retain the cold-start test repair, PR-size coverage handling, formatting diffs, and all required checks.
Use the standalone formatter for the repository-wide read-only formatting gate, matching the actionable formatting-diff step. Keep vp check's lint and configured type checks with --no-fmt, plus the existing separate typecheck and desktop build.

No formatting rule, source path, required check, or release guard is removed.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 0021db39c0

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

return {
...result,
effective: null,
label: result.nonTest >= 1000 ? "size:XXL" : "size:unknown",

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Update the documented incomplete-list policy

For PRs exceeding GitHub's 3,000-file cap, this now publishes size:unknown (or the proven size:XXL lower bound), but docs/operations/pr-actions.md still says that any incomplete file listing stops classification without publishing a label. That makes the maintainer guidance incorrect for the exact recovery path introduced here; update the contribution-label section to describe the new outcomes.

AGENTS.md reference: AGENTS.md:L75-L75

Useful? React with 👍 / 👎.

Record unmodified lint output alongside the checked desktop entry point, lint configuration and plugin source. Keep pipefail so capturing diagnostics cannot turn a failing check green. Do not rewrite source based on log excerpts that disagree with the verified artifact blobs.
Replace two process.platform branches with node:os.devNull and remove an obsolete unused lint suppression. Preserve UTF-8 validation and Git configuration isolation.

The three actual blocking diagnostics were read from the raw check.log in artifact 10626653205 (SHA-256 e414098395d3962f7bc15c46047f74864ba20ddaad89bb8548b7f8c15f011f30), not from contradictory log excerpts. All 61 focused PR-policy, sync and Git-audit tests pass locally. No desktop startup code or lint rule is changed.
@Hylouis233
Hylouis233 merged commit a204dfc into main Sep 21, 2026
21 checks passed

Hylouis233 commented Sep 21, 2026 •

Copy link
Copy Markdown
Owner Author

Merge and final live verification

Merged into main as a204dfcd57b2a873c42283adbe8b6b5355ee1857 after CI 35574114297 passed every job, including PR Gate. The checked-out merge candidate was 3880b966887c2690ace76cbe8e80f1f4468a2dd3; its exact parents were independently verified against the current base and repair head before the SHA-guarded merge. The resulting tree is 531c2eaf04bd58f43551670b765ef55f65c02c92, identical to the validated candidate.

Post-merge main CI 35575322774 completed successfully on a204dfc at 2026-09-21 08:02:25 UTC. All 11 jobs succeeded: OpenT3Code Maintenance, Check, Test, Test Server 1/2/3, Rust, Mobile Native Changes, Mobile Native Static Analysis, Release Smoke, and PR Gate. Check completed formatting, unused-code analysis, lint, typecheck, desktop build and preload verification. This is a fresh main-push result, not reused pre-merge checks.

The default-branch PR Size run 35575322714 also succeeded. Its log confirms checkout of a204dfc, 31/31 policy tests passed, and successful classification of PR #4 after receiving 3,000 of 5,068 files. It reported the observed non-test lower bound of 176,390 lines and applied size:XXL; it did not invent an exact total.

Upstream PR #4 is not merged or authorized by this repair. Its conflict and compatibility review remains separate. No required check, branch protection, production tokenization safeguard or publishing restriction was removed.

Verification: GPT-6 Astra Pro via ChatGPT and the GitHub connector.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L 100-499 effective changed lines. vouch:trusted Author has write access or is explicitly trusted by OpenT3Code.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants