| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
ci(build): pipeline hardening (pin actions, dist-tag guard, darwin ldflags, cleanup) Ten round-6 findings in the release pipeline: - Makefile: drop the release-snapshot target (identical to release-local except for the goreleaser-v2-removed --rm-dist flag; unreferenced); make release now passes --skip=publish like every workflow call — goreleaser's own push only reaches the GitHub mirror, never the real release. - dist-tag retries: lookups now normalize failures into retries (|| true) instead of dying silently through errexit — the bare assignment in the recovery skip path killed the step with no message, and the main path's verification loop had the same hole. The recovery retry window aligns with the main path (12x15s; propagation >35s observed in v0.14.1). - Dist-tag guard: the recovery path's inline node comparison moves to scripts/npm-dist-tag-guard.mjs (unit-tested: forward/equal moves, backwards refusal, prerelease ranking, malformed input) and the main npm job now runs the same guard before publishing — it previously had no backslide protection at all and, notably, no checkout step. - darwin ldflags: Makefile, build-release.sh and package.sh all stripped with -s on every platform; -s drops LC_UUID which dyld requires (per the ci.yml comment and goreleaser overrides). All three now build darwin with -w only. - CI drift: the package-assets check only regenerated build/ from the committed completions/, so a stale completions/ commit passed CI and failed at release preflight. The step now regenerates completions/ from a fresh build and diffs both trees. - Upgrade e2e: pin the install source to @gitcode-cli/cli explicitly — 0.10.3 is that coordinate's first release and atomgit-cli@0.10.3 never existed, so a package.json name switch would have 404'd the matrix. - ci.yml: all 16 uses pinned to day-verified SHAs (two tags had moved since the review snapshot) and pip install build pinned to 1.4.1, matching release.yml. - Dockerfile: alpine 3.19 reached EOL 2025-11-01; bump to 3.22 (digest pin deferred — registry access unavailable from the dev environment, documented in the Dockerfile). The source label points at the retired github.com/gitcode-com org; now the real mirror. - goreleaser: goarm (no 32-bit targets), release, announce and changelog blocks were dead under --skip=publish and invited misreading (release notes come from gh --notes-file); brews keeps only its live role (formula generation) — the tap push is the workflow's brew job — dropping the push-only fields. - Misc: PyPI precheck urlopen gets a 30s timeout (a hang holds the release concurrency slot); verify-remote-facts.py now rejects an explicitly-passed --issue that the PR does not reference; package.sh converges its three doc-sync sed blocks onto the hardened sync-docs-version.sh (boundary-aware, per-file detection, residual check) instead of an unbounded rewriter with none. Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 个月前 | |
fix: remove -s ldflag on macOS to preserve LC_UUID for dyld macOS dyld requires LC_UUID load command in Mach-O binaries. Go's -s ldflag strips the symbol table including LC_UUID on macOS, causing 'bin/gc version' to crash with: dyld: missing LC_UUID load command Fix: use -w only on macOS (strip DWARF, preserve symbol table/LC_UUID). Linux/Windows keep -s -w (full strip is safe on these platforms). Files changed: - .github/workflows/ci.yml: detect RUNNER_OS, use -w only on macOS - .goreleaser.yaml: add darwin override with -w only - scripts/build.sh: detect uname -s, use -w only on Darwin Co-Authored-By: Claude <noreply@anthropic.com> | 4 个月前 | |
docs: automate AI review gating and fact checks | 6 个月前 | |
refactor(loop): eliminate hardcoded paths and dates - full-flow-run.sh: extract PROJECT_ROOT from script location via $(cd "$(dirname "$0")/../.." && pwd), replace 7 hardcoded paths. Also fix accidental duplicate process_tokens.py call from prior edit. - count-deliveries.sh: replace hardcoded "2026-06-27" with datetime.now().strftime("%Y-%m-%d") for today count. Co-Authored-By: Claude <noreply@anthropic.com> | 4 个月前 | |
fix(dev): summarize native check failures | 3 个月前 | |
fix(dev): keep check mode fully read-only | 3 个月前 | |
ci(build): pipeline hardening (pin actions, dist-tag guard, darwin ldflags, cleanup) Ten round-6 findings in the release pipeline: - Makefile: drop the release-snapshot target (identical to release-local except for the goreleaser-v2-removed --rm-dist flag; unreferenced); make release now passes --skip=publish like every workflow call — goreleaser's own push only reaches the GitHub mirror, never the real release. - dist-tag retries: lookups now normalize failures into retries (|| true) instead of dying silently through errexit — the bare assignment in the recovery skip path killed the step with no message, and the main path's verification loop had the same hole. The recovery retry window aligns with the main path (12x15s; propagation >35s observed in v0.14.1). - Dist-tag guard: the recovery path's inline node comparison moves to scripts/npm-dist-tag-guard.mjs (unit-tested: forward/equal moves, backwards refusal, prerelease ranking, malformed input) and the main npm job now runs the same guard before publishing — it previously had no backslide protection at all and, notably, no checkout step. - darwin ldflags: Makefile, build-release.sh and package.sh all stripped with -s on every platform; -s drops LC_UUID which dyld requires (per the ci.yml comment and goreleaser overrides). All three now build darwin with -w only. - CI drift: the package-assets check only regenerated build/ from the committed completions/, so a stale completions/ commit passed CI and failed at release preflight. The step now regenerates completions/ from a fresh build and diffs both trees. - Upgrade e2e: pin the install source to @gitcode-cli/cli explicitly — 0.10.3 is that coordinate's first release and atomgit-cli@0.10.3 never existed, so a package.json name switch would have 404'd the matrix. - ci.yml: all 16 uses pinned to day-verified SHAs (two tags had moved since the review snapshot) and pip install build pinned to 1.4.1, matching release.yml. - Dockerfile: alpine 3.19 reached EOL 2025-11-01; bump to 3.22 (digest pin deferred — registry access unavailable from the dev environment, documented in the Dockerfile). The source label points at the retired github.com/gitcode-com org; now the real mirror. - goreleaser: goarm (no 32-bit targets), release, announce and changelog blocks were dead under --skip=publish and invited misreading (release notes come from gh --notes-file); brews keeps only its live role (formula generation) — the tap push is the workflow's brew job — dropping the push-only fields. - Misc: PyPI precheck urlopen gets a 30s timeout (a hang holds the release concurrency slot); verify-remote-facts.py now rejects an explicitly-passed --issue that the PR does not reference; package.sh converges its three doc-sync sed blocks onto the hardened sync-docs-version.sh (boundary-aware, per-file detection, residual check) instead of an unbounded rewriter with none. Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 个月前 | |
ci(build): pipeline hardening (pin actions, dist-tag guard, darwin ldflags, cleanup) Ten round-6 findings in the release pipeline: - Makefile: drop the release-snapshot target (identical to release-local except for the goreleaser-v2-removed --rm-dist flag; unreferenced); make release now passes --skip=publish like every workflow call — goreleaser's own push only reaches the GitHub mirror, never the real release. - dist-tag retries: lookups now normalize failures into retries (|| true) instead of dying silently through errexit — the bare assignment in the recovery skip path killed the step with no message, and the main path's verification loop had the same hole. The recovery retry window aligns with the main path (12x15s; propagation >35s observed in v0.14.1). - Dist-tag guard: the recovery path's inline node comparison moves to scripts/npm-dist-tag-guard.mjs (unit-tested: forward/equal moves, backwards refusal, prerelease ranking, malformed input) and the main npm job now runs the same guard before publishing — it previously had no backslide protection at all and, notably, no checkout step. - darwin ldflags: Makefile, build-release.sh and package.sh all stripped with -s on every platform; -s drops LC_UUID which dyld requires (per the ci.yml comment and goreleaser overrides). All three now build darwin with -w only. - CI drift: the package-assets check only regenerated build/ from the committed completions/, so a stale completions/ commit passed CI and failed at release preflight. The step now regenerates completions/ from a fresh build and diffs both trees. - Upgrade e2e: pin the install source to @gitcode-cli/cli explicitly — 0.10.3 is that coordinate's first release and atomgit-cli@0.10.3 never existed, so a package.json name switch would have 404'd the matrix. - ci.yml: all 16 uses pinned to day-verified SHAs (two tags had moved since the review snapshot) and pip install build pinned to 1.4.1, matching release.yml. - Dockerfile: alpine 3.19 reached EOL 2025-11-01; bump to 3.22 (digest pin deferred — registry access unavailable from the dev environment, documented in the Dockerfile). The source label points at the retired github.com/gitcode-com org; now the real mirror. - goreleaser: goarm (no 32-bit targets), release, announce and changelog blocks were dead under --skip=publish and invited misreading (release notes come from gh --notes-file); brews keeps only its live role (formula generation) — the tap push is the workflow's brew job — dropping the push-only fields. - Misc: PyPI precheck urlopen gets a 30s timeout (a hang holds the release concurrency slot); verify-remote-facts.py now rejects an explicitly-passed --issue that the PR does not reference; package.sh converges its three doc-sync sed blocks onto the hardened sync-docs-version.sh (boundary-aware, per-file detection, residual check) instead of an unbounded rewriter with none. Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 个月前 | |
fix(install,doctor): broaden install diagnostics and drop dead branches Health-check failures reported "unknown error" when stderr was empty, discarding the actual reason npm may have printed on stdout: fall back to the first non-empty stdout line in all three health-check sites (installer, npm updater, bootstrap helper). doctor leftovers only scanned PATH candidate directories, so leftovers in an install directory that is not on PATH were invisible; include the binary and entrypoint directories in the scan. The Go leftover matcher also prefix-matched ".gc-write-probe" (reporting ".gc-write-probe-x" variants the JS sweep never cleans — the report-without-cleanup loop the code itself warns about); match that name exactly like JS does. Skip the /usr/local/bin default candidate when a Homebrew layout is present (Intel Macs: the directory belongs to brew and writing there upsets brew doctor), show the platform-appropriate command name in the install help (gc on POSIX, gitcode on Windows), and delete the dead update-shell-completions branch from scripts/postinstall.sh (the command does not exist anywhere; deb/rpm completions ship via nfpm contents). Second review P3 backlog, issue 603 items 5, 7, 8, 11, 26, 29a. Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 个月前 | |
fix(release): close first-round review findings on multi-coordinate publishing P0:v2 恢复清单 file 正则补 '.' 去 '/'(此前拒绝一切含 semver 点的合 法文件名,v2 恢复全废)。 P3:staging 清理改脚本级 EXIT trap(set -e 中止路径可靠);recovery 三个循环改 fd 3 读 TSV + tgz 下载量==清单行数断言;npm job 门禁有界 重试(3×10s)防 registry 传播误红。 测试:新增 TestReleaseWorkflowRecoversAllNPMCoordinates;recovery 门 禁/TSV 分支/stage 顺序/coordinate_tarball 分支断言补齐。 文档:PACKAGING 产物树三 tarball、模板推荐坐标对齐 atomgit-cli、 更新器策略段移出模板围栏为独立章节;release-process 裸名所有权写明 (个人账户持有,转移登记 #588)、并行→同批、preflight 补 npm 组装、 v2 子集语义、旧版本重跑走 recovery 说明。 Refs #590 Commit-by: aflyingto | 1 个月前 | |
fix(release): harden v0.9.0 publication pipeline | 2 个月前 | |
chore: fix end-of-file-fixer and gofmt issues exposed by LF normalization Apply end-of-file-fixer (newline at EOF) and gofmt formatting fixes to files that were previously masked by CRLF/LF line-ending noise. Closes #300 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> | 4 个月前 | |
fix(review): isolate env-override smoke env, pin no-relogin, mirror in system suite Review fixes for the regression coverage: - pin the default-host resolution with an empty GC_CONFIG_DIR and a cleared GC_HOST, mirroring the Auth Exit Code isolation: a runner whose real config or environment points at a custom host would otherwise bypass the stub token through the StoredToken path and fail loudly but misleadingly - add assert_not_contains (regression-core.sh + tests/system/lib.sh) and assert the dead-end re-login advice is gone, pinning the negative side the docs row claims - mirror the section into tests/system/cases/read/auth.sh so the auth coverage stays 4+4 instead of drifting (layering finding) - REGRESSION.md: boundary sentence for smoke matrix vs tests/system, item 4 describes the isolation, fix pre-existing items 8/9 order to match the script section order Red re-verified with the fixed section: a 5d2e0fb binary exits 1 at the new section under a clean environment; the current tree passes the full script, the system read suite, and the testscript layer. Isolation is proven directly under a hostile GC_HOST. Refs #623 Co-Authored-By: Claude Code <noreply@anthropic.com> | 11 天前 | |
fix(review): address multi-role review findings for the 608 batch Four independent reviewers (code/security/test/docs) cleared the batch with no P1/P2 code findings; their P2/P3 findings are fixed here: - sync-docs-version.sh: add the left boundary to the version patterns (code review). Without it, a new version that digit-prefix-extends the old one (0.6.1 -> 10.6.1) left the residual check matching the old version embedded in the new string — the sync could never exit 0 — and a longer mention in the docs (v10.6.1) was silently rewritten to v10.7.0. The consumed-boundary form has a known limitation for back-to-back same-version tokens, documented in the comment; the residual check fails loudly rather than missing it. Two new test cases: v10.6.1 survival, and the true self-heal variant (first file already at target, another lagging) that the old README-only detection silently no-op'ed. - list tests: lock the sort-before-trim order (test+code review). The original pagination fixture was monotonic, so trim-first and sort-first were indistinguishable; the new case gives a page-2 release beyond the accumulation window the newest published_at and asserts it heads the trimmed output. Also cover the --page + --limit=100 boundary of the mutual-exclusion guard. - delete tests: add the success path (DELETE 204 -> "Deleted release") and the GetRelease 404 WrapNotFound path (exit 3) — the success branch was completely unlocked should the platform ever enable the delete endpoint. - docs: AI-GUIDE.md pinned gitcode-cli==0.11.1 one release behind README (a version pin the URL-based sync can never reach); the 405 guidance wording claimed an unconditional html_url link where the code degrades to URL-less text; the (latest) marker note now states the --page window semantics. - test-npm-install-upgrade.js: correct the completion-assertion comment — "gc" is not a prefix of "gitcode" (g-c vs g-i); the real protection is the anchored ( |$)/$ patterns. Recorded without code changes: prerelease versions (v1.0.0-rc.1) are rejected by the new docs gate (fail-closed, no rc has ever been shipped); the --page nil-slice JSON concern is a false positive (WriteJSON normalizes top-level nil slices); e2e-only completion coverage is tracked by the installCompletions injection-point item. Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 个月前 | |
feat(install): unify diagnostics and automatic npm updates Refs #505 | 2 个月前 | |
fix(dev): summarize native check failures | 3 个月前 | |
fix(dev): keep check mode fully read-only | 3 个月前 | |
ci(build): pipeline hardening (pin actions, dist-tag guard, darwin ldflags, cleanup) Ten round-6 findings in the release pipeline: - Makefile: drop the release-snapshot target (identical to release-local except for the goreleaser-v2-removed --rm-dist flag; unreferenced); make release now passes --skip=publish like every workflow call — goreleaser's own push only reaches the GitHub mirror, never the real release. - dist-tag retries: lookups now normalize failures into retries (|| true) instead of dying silently through errexit — the bare assignment in the recovery skip path killed the step with no message, and the main path's verification loop had the same hole. The recovery retry window aligns with the main path (12x15s; propagation >35s observed in v0.14.1). - Dist-tag guard: the recovery path's inline node comparison moves to scripts/npm-dist-tag-guard.mjs (unit-tested: forward/equal moves, backwards refusal, prerelease ranking, malformed input) and the main npm job now runs the same guard before publishing — it previously had no backslide protection at all and, notably, no checkout step. - darwin ldflags: Makefile, build-release.sh and package.sh all stripped with -s on every platform; -s drops LC_UUID which dyld requires (per the ci.yml comment and goreleaser overrides). All three now build darwin with -w only. - CI drift: the package-assets check only regenerated build/ from the committed completions/, so a stale completions/ commit passed CI and failed at release preflight. The step now regenerates completions/ from a fresh build and diffs both trees. - Upgrade e2e: pin the install source to @gitcode-cli/cli explicitly — 0.10.3 is that coordinate's first release and atomgit-cli@0.10.3 never existed, so a package.json name switch would have 404'd the matrix. - ci.yml: all 16 uses pinned to day-verified SHAs (two tags had moved since the review snapshot) and pip install build pinned to 1.4.1, matching release.yml. - Dockerfile: alpine 3.19 reached EOL 2025-11-01; bump to 3.22 (digest pin deferred — registry access unavailable from the dev environment, documented in the Dockerfile). The source label points at the retired github.com/gitcode-com org; now the real mirror. - goreleaser: goarm (no 32-bit targets), release, announce and changelog blocks were dead under --skip=publish and invited misreading (release notes come from gh --notes-file); brews keeps only its live role (formula generation) — the tap push is the workflow's brew job — dropping the push-only fields. - Misc: PyPI precheck urlopen gets a 30s timeout (a hang holds the release concurrency slot); verify-remote-facts.py now rejects an explicitly-passed --issue that the PR does not reference; package.sh converges its three doc-sync sed blocks onto the hardened sync-docs-version.sh (boundary-aware, per-file detection, residual check) instead of an unbounded rewriter with none. Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 个月前 | |
fix(release): tighten version validation contract | 4 个月前 | |
fix(review): address multi-role review findings for the 608 batch Four independent reviewers (code/security/test/docs) cleared the batch with no P1/P2 code findings; their P2/P3 findings are fixed here: - sync-docs-version.sh: add the left boundary to the version patterns (code review). Without it, a new version that digit-prefix-extends the old one (0.6.1 -> 10.6.1) left the residual check matching the old version embedded in the new string — the sync could never exit 0 — and a longer mention in the docs (v10.6.1) was silently rewritten to v10.7.0. The consumed-boundary form has a known limitation for back-to-back same-version tokens, documented in the comment; the residual check fails loudly rather than missing it. Two new test cases: v10.6.1 survival, and the true self-heal variant (first file already at target, another lagging) that the old README-only detection silently no-op'ed. - list tests: lock the sort-before-trim order (test+code review). The original pagination fixture was monotonic, so trim-first and sort-first were indistinguishable; the new case gives a page-2 release beyond the accumulation window the newest published_at and asserts it heads the trimmed output. Also cover the --page + --limit=100 boundary of the mutual-exclusion guard. - delete tests: add the success path (DELETE 204 -> "Deleted release") and the GetRelease 404 WrapNotFound path (exit 3) — the success branch was completely unlocked should the platform ever enable the delete endpoint. - docs: AI-GUIDE.md pinned gitcode-cli==0.11.1 one release behind README (a version pin the URL-based sync can never reach); the 405 guidance wording claimed an unconditional html_url link where the code degrades to URL-less text; the (latest) marker note now states the --page window semantics. - test-npm-install-upgrade.js: correct the completion-assertion comment — "gc" is not a prefix of "gitcode" (g-c vs g-i); the real protection is the anchored ( |$)/$ patterns. Recorded without code changes: prerelease versions (v1.0.0-rc.1) are rejected by the new docs gate (fail-closed, no rc has ever been shipped); the --page nil-slice JSON concern is a false positive (WriteJSON normalizes top-level nil slices); e2e-only completion coverage is tracked by the installCompletions injection-point item. Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 个月前 | |
fix(review): cover list-form placeholders, de-link the security pointer - PLACEHOLDER_RE now also matches list-wrapped placeholders ("- (…)"), closing the mixed-draft bypass where every section but 证据 is filled and its placeholder line slipped through - flagged independently by three reviewers - the bug template's relative spec link resolves against the repo root in issue-form rendering contexts and would 404 (known platform pitfall); the plain repository path keeps the guidance without the broken link Refs #614 Co-Authored-By: Claude Code <noreply@anthropic.com> | 5 天前 | |
fix(release): tighten version validation contract | 4 个月前 | |
docs(sig): address re-review findings 复核遗留项清零(三角色复核 A' 1 major + 5 minor、B' 脚本 N1-N5、C' 2 major): - A'1(major): §3 评估工具修正——gc pr list 实测无 --label flag,PR 侧数据 改为平台 Web 过滤或 gc api 查询,gc sig prs 为 Phase 3 候选 - A'2: §6.2 事实修正——gc discussion 能力实为 org 级 list/view/delete + repo 级只读 project list/view(实测),无 create 与分类管理 - A'3: §3 degraded 准入补"豁免整改逾期"触发条件,闭合 §4.2 逾期后果空挂钩 - A'4: 脚本跨文件 scope_labels 重复映射 ERROR→WARN(§6.1 允许 charter 说明的例外,避免 Phase 2 接 CI 后阻断合法配置) - A'5: §9 单主体口径澄清为评估参考项而非额外门槛 - A'7: §6.3 Issue 主干补 status/ready-for-review(对齐 issue-workflow.md) - A'8: lazy consensus 限定为日常议题,避免与 §7 重大方向决策方式重叠 - A'9: 三个 YAML 头部 discussion 分类注释加"规划值"限定词 - A'10: §2 表注补 scope_labels 字段 - A'11: 脚本已知缺口注明单人重叠必要条件反转(≥2 maintainer 时属 §4.1 违规) - B'N1/N2/N5: get_field/get_list_entries 统一剥离行内注释与尾随空白 - B'N3: labels 校验收敛到 labels 段内精确匹配(charter 块不再误匹配) - B'N4: scope_labels 正则改字母开头(与 KEBAB_CASE_RE 对齐) - B'N5: 必需标量字段空值检查(如 status: 后无值) - C'N1: §6.1 label 描述条款对齐平台现实——GitCode label API 创建/更新均仅 支持 name/color(api-doc 实查),关联发现改为命名约定 + docs/SIGS.md 导航; §21/§38/矩阵同步去除 label 描述引用;归档不改 label 名(保留历史可查性) - C'N3: spec/README.md 目录树补 rfc-workflow.md 与 status-label-checklist.md 验证:validate-sig-yamls.sh 正向 3 文件通过;负面回归矩阵 13 组全过 (R1 条目注释豁免判定、R2 scope_labels 注释、R3 charter 误匹配、R4 空值、 R5 数字开头 scope、R6 重复映射 WARN、R7 原矩阵回归 6 项)。 Commit-by: aflyingto | 1 个月前 | |
ci(build): pipeline hardening (pin actions, dist-tag guard, darwin ldflags, cleanup) Ten round-6 findings in the release pipeline: - Makefile: drop the release-snapshot target (identical to release-local except for the goreleaser-v2-removed --rm-dist flag; unreferenced); make release now passes --skip=publish like every workflow call — goreleaser's own push only reaches the GitHub mirror, never the real release. - dist-tag retries: lookups now normalize failures into retries (|| true) instead of dying silently through errexit — the bare assignment in the recovery skip path killed the step with no message, and the main path's verification loop had the same hole. The recovery retry window aligns with the main path (12x15s; propagation >35s observed in v0.14.1). - Dist-tag guard: the recovery path's inline node comparison moves to scripts/npm-dist-tag-guard.mjs (unit-tested: forward/equal moves, backwards refusal, prerelease ranking, malformed input) and the main npm job now runs the same guard before publishing — it previously had no backslide protection at all and, notably, no checkout step. - darwin ldflags: Makefile, build-release.sh and package.sh all stripped with -s on every platform; -s drops LC_UUID which dyld requires (per the ci.yml comment and goreleaser overrides). All three now build darwin with -w only. - CI drift: the package-assets check only regenerated build/ from the committed completions/, so a stale completions/ commit passed CI and failed at release preflight. The step now regenerates completions/ from a fresh build and diffs both trees. - Upgrade e2e: pin the install source to @gitcode-cli/cli explicitly — 0.10.3 is that coordinate's first release and atomgit-cli@0.10.3 never existed, so a package.json name switch would have 404'd the matrix. - ci.yml: all 16 uses pinned to day-verified SHAs (two tags had moved since the review snapshot) and pip install build pinned to 1.4.1, matching release.yml. - Dockerfile: alpine 3.19 reached EOL 2025-11-01; bump to 3.22 (digest pin deferred — registry access unavailable from the dev environment, documented in the Dockerfile). The source label points at the retired github.com/gitcode-com org; now the real mirror. - goreleaser: goarm (no 32-bit targets), release, announce and changelog blocks were dead under --skip=publish and invited misreading (release notes come from gh --notes-file); brews keeps only its live role (formula generation) — the tap push is the workflow's brew job — dropping the push-only fields. - Misc: PyPI precheck urlopen gets a 30s timeout (a hang holds the release concurrency slot); verify-remote-facts.py now rejects an explicitly-passed --issue that the PR does not reference; package.sh converges its three doc-sync sed blocks onto the hardened sync-docs-version.sh (boundary-aware, per-file detection, residual check) instead of an unbounded rewriter with none. Co-Authored-By: Claude Code <noreply@anthropic.com> | 1 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 个月前 | ||
| 4 个月前 | ||
| 6 个月前 | ||
| 4 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 4 个月前 | ||
| 11 天前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 4 个月前 | ||
| 1 个月前 | ||
| 5 天前 | ||
| 4 个月前 | ||
| 1 个月前 | ||
| 1 个月前 |