diff --git a/.gitattributes b/.gitattributes index dc316e45b..178c9ab40 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,3 +1,32 @@ +# Normalize text files automatically +* text=auto + +# Source files use LF +*.py text eol=lf +*.js text eol=lf +*.jsx text eol=lf +*.ts text eol=lf +*.tsx text eol=lf +*.json text eol=lf +*.yml text eol=lf +*.yaml text eol=lf +*.md text eol=lf *.sh text eol=lf infra/docker/*.sh text eol=lf scripts/*.sh text eol=lf + +# Windows scripts use CRLF +*.bat text eol=crlf +*.cmd text eol=crlf +*.ps1 text eol=crlf + +# Binary files +*.png binary +*.jpg binary +*.jpeg binary +*.gif binary +*.ico binary +*.woff binary +*.woff2 binary +*.ttf binary +*.eot binary diff --git a/.learnings/ERRORS.md b/.learnings/ERRORS.md index f05167b91..da85d534c 100644 --- a/.learnings/ERRORS.md +++ b/.learnings/ERRORS.md @@ -73,3 +73,30 @@ Recover host first, stop residual build/runner tasks, verify production/staging - Errors: main branch is protected from direct push; local main had divergence/conflicts; tag v0.1.51 was pushed from the wrong local main HEAD and then removed. - Fix: never tag production before protected main has accepted the release commit. Use PR/approved merge path or Gitea API merge, then tag the actual merged main commit. + +## 2026-06-25 - No local Gitea/GitHub CLI in Windows workspace + +- Failed command: gh --version / tea --version / gitea --version during release automation. +- Error: commands not found in PowerShell runtime. +- Fix: use Gitea API/server-side tools when available, or the web PR flow for protected-branch releases. + + +## 2026-06-25 - Gitea generated token returned API 401 + +- Failed operation: create release PR via server-side generated Gitea access token. +- Error: API returned 401 on authenticated pull request query/create. +- Fix: verify token output/scopes/API auth behavior before using; do not print secrets, and delete temporary tokens after failed attempts. + + +## 2026-06-25 - Business Gitea host lacks runtime-builder SSH key for ref sync + +- Failed command: git fetch from git.xiaoxiajianji.com:2222 inside /var/lib/gitea/data/gitea-repositories using /root/.ssh/xiaoxia_runtime_builder. +- Error: identity file missing and Permission denied (publickey). +- Fix: do not install keys ad hoc on the business host; use an already-authenticated local clone bundle or proper Git/Gitea maintenance path to sync refs. + + +## 2026-06-25 - Non-ASCII comments in .gitattributes broke Git attribute parsing + +- Error: Git printed 'is not a valid attribute name' for Chinese comment text in .gitattributes during merge/fetch operations. +- Fix: keep .gitattributes comments/rules ASCII-only and preserve the LF/CRLF normalization semantics. +