Commit Graph

13 Commits

Author SHA1 Message Date
Hunter B 3a983ac10b fix(release): exercise every shipped entrypoint
Keep same-version release preparation on the canonical validation path, install and package the native codew shim, and make web and checksum verification reflect what operators actually run. Add focused release-helper, npm, and checksum contracts while leaving deploy and publication boundaries unchanged.

Signed-off-by: Hunter B <hmbown@gmail.com>
2026-07-18 09:42:32 -07:00
Hunter B 5694a56b9b fix(release): anchor every publish to the tag SHA
Require exact-tag dispatches, immutable source checkouts, live tag revalidation before public writes, and stale-main-safe tag creation. Cargo and npm publication now fail closed unless the checkout is clean and matches the remote release tag, with moved-tag regression coverage and corrected operator sequencing.
2026-07-15 03:41:47 -07:00
Hunter B 366ac7fb72 fix(distribution): make CNB mirror contract truthful
Publish the codew shim alongside the Linux x64 CNB runtime, verify the exact four-file mirror set, and reject the CNB shortcut on platforms that the mirror does not build. Document Android and static-musl support accurately.
2026-07-15 03:18:26 -07:00
Hunter Bown 76e09ed10d docs(web): add provenance / source-of-truth copy (footer, install, CNB) (#3514)
State plainly that GitHub is the sole canonical source across the site:
- footer: a Provenance section shown on all locales (was a zh-only mirror
  list), starring the official GitHub link and noting that mirrors are
  China-network accelerators (link labels localized for EN/ZH)
- install: an "Official source" label on the Mainland China network section
- docs/CNB_MIRROR.md: a Provenance section that accurately describes the
  CNB-built SHA256 manifest, with a verification path

Harvested from PR #3440 by @donglovejava. Dropped that branch's unrelated
churn (stray working files, workflow edits, and a SECURITY.md contact change
that regresses the current address) and preserved the current Gitee URL.


Claude-Session: https://claude.ai/code/session_01991fnUqBbWSgiUFw33L8XX

Co-authored-by: donglovejava <211940267+donglovejava@users.noreply.github.com>
2026-06-23 17:27:54 -07:00
Hunter B 7b4d2911ea chore: clean public release surfaces
Remove public benchmark docs/scripts and the shipped SWE-bench CLI surface from the CodeWhale repo; benchmark work belongs outside this release repo.

Trim public docs that routed users into private maintainer runbooks, remove stale deleted-doc links, tone down release-facing copy, update CodeWhale crate descriptions, and expose the residue ledger as /debt while keeping quiet legacy dispatch compatibility.

Verification:\n- cargo fmt --all -- --check\n- git diff --check\n- ./scripts/release/check-versions.sh\n- cargo check -p codewhale-tui --bin codewhale-tui --locked\n- cargo test -p codewhale-tui --bin codewhale-tui --locked command_registry\n- cargo test -p codewhale-tui --bin codewhale-tui --locked every_command_alias_dispatches_to_a_handler\n- cargo test -p codewhale-cli --locked
2026-06-21 13:35:47 -07:00
jayzhu 4464de86a8 docs: add Linux build-time deps to cargo install guides (#3270) 2026-06-16 18:22:07 -07:00
Hunter Bown 5fa24733e9 chore(rebrand): update repository links for CodeWhale
Sync to CNB / sync (push) Has been cancelled
Release / parity (push) Has been cancelled
Release / resolve (push) Has been cancelled
Release / build (codewhale-linux-arm64, codewhale, ubuntu-24.04-arm, aarch64-unknown-linux-gnu) (push) Has been cancelled
Release / build (codewhale-linux-x64, codewhale, ubuntu-latest, x86_64-unknown-linux-gnu) (push) Has been cancelled
Release / build (codewhale-macos-arm64, codewhale, macos-latest, aarch64-apple-darwin) (push) Has been cancelled
Release / build (codewhale-macos-x64, codewhale, macos-latest, x86_64-apple-darwin) (push) Has been cancelled
Release / build (codewhale-tui-linux-arm64, codewhale-tui, ubuntu-24.04-arm, aarch64-unknown-linux-gnu) (push) Has been cancelled
Release / build (codewhale-tui-linux-x64, codewhale-tui, ubuntu-latest, x86_64-unknown-linux-gnu) (push) Has been cancelled
Release / build (codewhale-tui-macos-arm64, codewhale-tui, macos-latest, aarch64-apple-darwin) (push) Has been cancelled
Release / build (codewhale-tui-macos-x64, codewhale-tui, macos-latest, x86_64-apple-darwin) (push) Has been cancelled
Release / build (codewhale-tui-windows-x64.exe, codewhale-tui.exe, windows-latest, x86_64-pc-windows-msvc) (push) Has been cancelled
Release / build (codewhale-windows-x64.exe, codewhale.exe, windows-latest, x86_64-pc-windows-msvc) (push) Has been cancelled
Release / build (deepseek-linux-arm64, deepseek, ubuntu-24.04-arm, aarch64-unknown-linux-gnu) (push) Has been cancelled
Release / build (deepseek-linux-x64, deepseek, ubuntu-latest, x86_64-unknown-linux-gnu) (push) Has been cancelled
Release / build (deepseek-macos-arm64, deepseek, macos-latest, aarch64-apple-darwin) (push) Has been cancelled
Release / build (deepseek-macos-x64, deepseek, macos-latest, x86_64-apple-darwin) (push) Has been cancelled
Release / build (deepseek-tui-linux-arm64, deepseek-tui, ubuntu-24.04-arm, aarch64-unknown-linux-gnu) (push) Has been cancelled
Release / build (deepseek-tui-linux-x64, deepseek-tui, ubuntu-latest, x86_64-unknown-linux-gnu) (push) Has been cancelled
Release / build (deepseek-tui-macos-arm64, deepseek-tui, macos-latest, aarch64-apple-darwin) (push) Has been cancelled
Release / build (deepseek-tui-macos-x64, deepseek-tui, macos-latest, x86_64-apple-darwin) (push) Has been cancelled
Release / build (deepseek-tui-windows-x64.exe, deepseek-tui.exe, windows-latest, x86_64-pc-windows-msvc) (push) Has been cancelled
Release / build (deepseek-windows-x64.exe, deepseek.exe, windows-latest, x86_64-pc-windows-msvc) (push) Has been cancelled
Release / docker (push) Has been cancelled
Release / release (push) Has been cancelled
Release / homebrew (push) Has been cancelled
2026-05-23 14:07:36 -05:00
Hunter Bown ddaabbfed2 chore(rebrand): finish codewhale release surfaces 2026-05-23 13:41:46 -05:00
Hunter Bown 6de8ba363f chore(release): prepare codewhale v0.8.41 test build 2026-05-23 13:19:01 -05:00
Hunter Bown a3acdbe70b docs(brand): rename to codewhale across READMEs and docs
Sweep brand mentions of `DeepSeek TUI` / `deepseek-tui` / bare
`deepseek` (the dispatcher binary) across all user-facing docs to
the new `codewhale` brand. The DeepSeek **provider** integration is
left untouched throughout: env vars (`DEEPSEEK_*`), model IDs
(`deepseek-v4-pro`, `deepseek-v4-flash`, `deepseek-chat`,
`deepseek-reasoner`), the `api.deepseek.com` host, the
`~/.deepseek/` config dir, and the `--provider deepseek` argument
value all keep the legacy spelling.

Anti-scope items deliberately left as the legacy `deepseek-tui`:

- Homebrew tap and formula (`Hmbown/homebrew-deepseek-tui`,
  `brew install deepseek-tui`, `scoop install deepseek-tui`). The
  tap rename ships separately.
- Docker image (`ghcr.io/hmbown/deepseek-tui`). Image-tag rename
  ships separately.
- CNB mirror namespace (`cnb.cool/deepseek-tui.com/DeepSeek-TUI`).
  Third-party hosted path.
- Security contact email (`security@deepseek-tui.com`).
- GitHub repo URL (`Hmbown/DeepSeek-TUI`).

New artifact:

- `docs/REBRAND.md` documents what changed, what didn't, the
  deprecation window, and migration commands for npm / Cargo /
  Homebrew / manual installs.

CHANGELOG entries:

- Root `CHANGELOG.md` and `crates/tui/CHANGELOG.md` both gain a
  new `[Unreleased]` section describing the rename and the one-
  release deprecation window. Historical entries are untouched.

Issue templates:

- `.github/ISSUE_TEMPLATE/bug_report.md` and `feature_request.md`
  refer to "codewhale" / `codewhale --version` instead of the old
  brand name in their environment fields.

The rebrand sweep was driven by a perl script with bulk patterns
(`deepseek-tui` -> `codewhale-tui`, `DeepSeek TUI` -> `codewhale`,
bare `deepseek` -> `codewhale` with provider/model/host/env-var/
config-path negative lookbehind/lookahead) followed by targeted
reverts for the anti-scope items above. Output was visually
reviewed file-by-file before committing.

Verified:

- `cargo check --workspace --all-targets --locked` — pass.
- `cargo test --workspace --all-features --locked` — pass (no
  test source touched here; suite stayed green to confirm no
  doc-from-string assertions broke).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-23 11:25:48 -05:00
Hunter Bown 938d681edb ci(cnb): preflight stability release branches 2026-05-20 23:57:47 +08:00
Hunter Bown 9483248a9f feat(feishu): carry Lighthouse bridge into v0.8.37
Add the Feishu/Lark long-connection bridge, Tencent Lighthouse runbooks, CNB mirror guidance, CNB tag release pipeline, and China-friendly update fallback documentation for the v0.8.37 line.
2026-05-14 03:56:03 -05:00
Hunter Bown 90eaf04a84 ci(cnb): rewrite sync workflow with concurrency + scoped push + retry
Closes the persistent "fatal: could not read Username for 'https://cnb.cool'"
failure that bit about half of recent sync-cnb runs.

Root causes from the failure log of run 25705666413 (2026-05-12) and
25697452832 (2026-05-11):

  1. The previous tencentcom/git-sync Docker action discovered every
     local ref via fetch-depth: 0 and tried to push them all —
     including dependabot/* branches that GitHub had locally. Those
     follow-on pushes ran without the configured credential helper
     in scope and failed with the basic-auth prompt error above.

  2. No concurrency guard meant the back-to-back `main` push and
     `v*` tag push that auto-tag.yml fires within ~15s of each other
     raced. Two workflow runs would attempt to push to the same
     CNB remote simultaneously; one would lose.

Rewrite:

  * Hand-rolled `git push` with the CNB token URL-encoded inline so
    the credential is always in scope. No Docker action dependency.
  * `concurrency: group: cnb-sync, cancel-in-progress: false` so
    queued runs serialize cleanly rather than racing or dropping.
  * Only push the ref that triggered the run — `main` on branch
    push (with --force-with-lease for safety), the specific tag on
    tag push. Feature branches and dependabot refs no longer
    mirror.
  * 3-attempt retry with linear backoff (5s, 10s) for transient
    failures (CNB rate-limit, DNS blips, etc.).
  * `workflow_dispatch: {}` trigger so the maintainer can re-run
    against a specific ref manually if the automated run fails.

Adds docs/CNB_MIRROR.md with: the verification steps after a
release, the manual fallback procedure (one-time `git remote add cnb`,
then `git push cnb vX.Y.Z`), the token-rotation procedure, and a
note on why binary release assets aren't on CNB today.

Cross-links from docs/RELEASE_RUNBOOK.md so the verify-after-release
step doesn't get forgotten.
2026-05-11 22:47:54 -05:00