15 Commits
Author SHA1 Message Date
KenanZhuandClaude 6624e9a8d7 fix(ci): add permissions block to release workflow
Release / Package & Release (push) Canceled after 0s
Release / Validate Templates (push) Canceled after 0s
GITHUB_TOKEN needs explicit contents: write to create releases via
softprops/action-gh-release. Without it, the API returns 403.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 11:18:07 +08:00
KenanZhuandClaude 5ba174a399 fix(ci): create archive dir before copying files in release workflow
cp -r requires the target directory to exist. Changed to mkdir -p the
full archive path instead of just dist/.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 11:15:07 +08:00
KenanZhuandClaude aa7e8d6e06 fix(ci): use English 'pending' instead of Chinese in badge
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 11:12:05 +08:00
KenanZhuandClaude 09c5108345 feat(ci): change badge to yellow '待测试' on new version detection
When tracker detects a new Gitea version, the shields.io badge now
updates from 'tested-blue' to '待测试-yellow' to indicate pending
verification status.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 11:11:37 +08:00
KenanZhuandClaude cb000cac90 refactor(ci): encode line offsets in tracker markers
Markers now self-document their position: 'OFFSET=N' means the target
row is N lines below the marker. Workflow extracts offset dynamically
via sed, no hardcoded values.

Format: <!-- TRACKER:<NAME> OFFSET=<N> -->

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 11:00:38 +08:00
KenanZhuandClaude 4f3dff0df4 fix(ci): move tracker markers above tables, use line offsets
HTML comments between table rows broke markdown rendering. Moved both
tracker markers above table headers, updated workflow to use offsets:
- QUICK-REF-MAX: data row at marker + 3
- VERSION-INSERT: insert at marker + 2

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 10:58:42 +08:00
KenanZhuandClaude 84452c2a18 fix(ci): QUICK-REF-MAX marker is ABOVE data row, not below
The workflow read MARKER-1 (line above marker = separator line),
returning '-----------------' as the version. The data row is BELOW
the marker. Fixed both read and update steps to use MARKER+1.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 10:49:46 +08:00
KenanZhuandClaude 6fc74fd648 fix(ci): replace grep -P/sed regex with awk for portability
grep -oP (Perl regex) failed on Ubuntu runner, returning empty current
version. Replaced version parsing with awk -F'|' to extract from the
pipe-separated Quick Reference table by column index.

Also replaced the Quick Reference update sed with awk -i inplace for
column-based editing, avoiding fragile regex on formatted table cells.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 10:47:36 +08:00
KenanZhuandClaude 6bcc7d791f fix(ci): use GitHub API instead of Gitea API for release tracking
Gitea.com API returned 404. Switched to GitHub's public API:
https://api.github.com/repos/go-gitea/gitea/releases/latest

No auth needed for public repo; 60 req/h is ample for daily cron.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 10:42:48 +08:00
KenanZhuandClaude 9075a5694e fix(ci): cross-validate and fix tracker workflow — 4 bugs squashed
Bug fixes found during cross-validation:

1. VERSION-INSERT marker placed before table header → moved after separator
   line so new rows insert between separator and first data row.

2. Badge sed pattern 'tested\)-[0-9a-z.]*\(blue\)' never matched because
   URL has 'tested-blue' not 'tested)-...'. Fixed to match URL-encoded
   format: '%20<version>%20tested-blue'.

3. Quick Reference sed depended on '| ✅' status literal. Changed to
   '| [^|]*' to match any status text, always setting to ⏳ on update.

4. Gitea API returns 'v1.27.0' tag_name but docs use '1.27.0'. Added
   '${NEW_VERSION#v}' to strip v prefix.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 10:39:20 +08:00
KenanZhuandClaude 5648f73d45 refactor(ci): use marker comments instead of regex for tracker workflow
Add TRACKER: HTML comment markers to COMPATIBILITY.md, README.md, and
all 5 translation READMEs. Rewrite gitea-tracker.yml to use grep -n
for precise line-based insertion and sed line-address editing.

Markers introduced:
- TRACKER:QUICK-REF-MAX  — Quick Reference max tested version
- TRACKER:VERSION-INSERT — Version History row insertion point
- TRACKER:LATEST-VERIFIED — latest verified note version
- TRACKER:BADGE — shields.io badge version
- TRACKER:LATEST-TESTED — latest tested version in READMEs

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 10:34:43 +08:00
KenanZhuandClaude 41caba06c0 chore: remove webhook config, keep schedule + manual trigger only
Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 10:30:28 +08:00
KenanZhuandClaude 15509e01ac ci: add Gitea version tracker workflow with auto-PR creation
- Daily cron + repository_dispatch webhook + manual workflow_dispatch
- Fetches latest Gitea release via API, compares with current max tested
- On new version: updates COMPATIBILITY.md matrix, README badges (all 6
  languages), creates PR with verification checklist
- Webhook setup instructions in COMPATIBILITY.md
- Uses peter-evans/create-pull-request for PR automation

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 10:28:54 +08:00
KenanZhuandClaude 2f27d54251 docs: add Gitea version compatibility matrix and badge
- Create COMPATIBILITY.md with version matrix, Gitea release tracking,
  template variable reference, and compatibility verification process
- Add Gitea 1.25+ | 1.26.4 tested badge to README
- Update all 6 READMEs (EN + 5 translations) with latest tested version
  and link to COMPATIBILITY.md
- Include COMPATIBILITY.md in release artifacts

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 10:19:34 +08:00
KenanZhuandClaude 84740fa081 ci: add release workflow with template lint and artifact packaging
- Validate all templates on push to main and tag v*
- On tag: package themes/ as zip + tar.gz and create GitHub release

Co-Authored-By: Claude <noreply@anthropic.com>
2026-06-23 09:50:46 +08:00