Skip to content

chore: release v0.7.0 — changelog, version bump, and integration fixes#5805

Merged
JordanTheJet merged 9 commits intomasterfrom
chore/release-0.7.0
Apr 17, 2026
Merged

chore: release v0.7.0 — changelog, version bump, and integration fixes#5805
JordanTheJet merged 9 commits intomasterfrom
chore/release-0.7.0

Conversation

@theonlyhennygod
Copy link
Copy Markdown
Collaborator

@theonlyhennygod theonlyhennygod commented Apr 16, 2026

Summary

  • Base branch: master
  • Problem: Version 0.6.x accumulated 140+ features, 200+ fixes, and a full workspace refactoring across 73 contributors — none released under a stable tag yet. Additionally, Hugging Face and LM Studio integrations were marked ComingSoon despite being fully implemented, and Docker web UI required manual pairing code entry.
  • Why it matters: Users and downstream packaging (Docker, Homebrew, AUR, Scoop, crates.io) need a tagged 0.7.0 release. Contributors deserve attribution for their work across the 0.6.x series.
  • What changed:
    1. Bump version from 0.6.9 to 0.7.0 across workspace (Cargo.toml, Cargo.lock, Tauri config, marketplace templates, workflows)
    2. Add comprehensive CHANGELOG.md covering the entire 0.6.x series with all 73 contributors attributed
    3. Mark Hugging Face and LM Studio integrations as Available (fix: use providers.fallback not default_provider)
    4. Auto-fill pairing code in Docker web UI environments
    5. Fix pre-release validation CI to use correct secrets (RELEASE_TOKEN, WEBSITE_REPO_PAT)
  • What did not change: No runtime logic changes beyond the targeted fixes. README badge updates deferred to the version-sync workflow on merge.

Label Snapshot (required)

  • Risk label: risk: low
  • Size label: size: M
  • Scope labels: ci, docs, dependencies, integration
  • Module labels: provider: huggingface, provider: lmstudio

Change Metadata

  • Change type: chore (release preparation with targeted fixes)
  • Primary scope: multi

Linked Issue

Supersede Attribution (required when Supersedes # is used)

#5792 was opened under the old branch name fix/huggingface-lmstudio-integration-status. This PR carries the same commits on the renamed branch chore/release-0.7.0 with additional CI fixes.

Validation Evidence (required)

# Workspace version bump verified
cargo update --workspace  # ✅ all 14 crates at 0.7.0

# Version sync verified across 38 files
bash scripts/release/bump-version.sh 0.7.0  #

# Compilation fix verified — providers.fallback resolves correctly
cargo check  #

# Markdown lint verified — CHANGELOG.md passes MD022

Security Impact (required)

  • New permissions/capabilities? No
  • New external network calls? No
  • Secrets/tokens handling changed? No (CI workflow updated to reference existing secrets correctly)
  • File system access scope changed? No

Privacy and Data Hygiene (required)

  • Data-hygiene status: pass
  • Redaction/anonymization notes: CHANGELOG attributes contributors by public GitHub display names and handles only.
  • Neutral wording confirmation: Confirmed.

Compatibility / Migration

  • Backward compatible? Yes — version bump is metadata-only; integration fix corrects existing broken logic.
  • Config/env changes? No
  • Migration needed? No

i18n Follow-Through (required when docs or user-facing wording changes)

  • i18n follow-through triggered? No — README badge updates deferred to version-sync workflow on merge.

Human Verification (required)

  • Verified scenarios: Version string consistency across all changed files; CHANGELOG contributor attribution accuracy; providers.fallback field resolves on Config struct; Docker pairing code auto-fill behavior; pre-release validation secrets resolve correctly.
  • Edge cases checked: aardvark-sys stays at 0.1.0 (intentionally separate versioning); cargo fmt satisfied on multi-line matches! macro; website access checked with dedicated WEBSITE_REPO_PAT.
  • What was not verified: Cross-platform binary builds (depends on CI).

Side Effects / Blast Radius (required)

  • Affected subsystems/workflows: Version-sync workflow (fires on merge to sync README badges), beta release pipeline, marketplace templates, pre-release validation workflow.
  • Potential unintended effects: None — version bump is metadata; integration fix corrects field reference; CI fix aligns secret names.
  • Guardrails: Beta release runs first before stable tag is pushed.

Agent Collaboration Notes (recommended)

  • Agent tools used: Claude Code for changelog generation, contributor extraction from git history, version bump coordination, and CI debugging.
  • Workflow summary: Generated CHANGELOG from git log v0.6.0..HEAD, extracted 73 unique contributors, bumped workspace version across 14 crates, diagnosed and fixed compilation error (default_providerproviders.fallback), fixed pre-release CI secret references.
  • Verification focus: Version string consistency, CHANGELOG completeness, integration compilation, CI secret resolution.
  • Confirmation: Naming and architecture boundaries followed per AGENTS.md and CONTRIBUTING.md.

Risks and Mitigations

  • Risk: Pre-release validation workflow changes run from master on PR triggers, so the CI fix only takes full effect after merge.
    • Mitigation: The fix is straightforward (secret name alignment) and was verified by checking the step that previously failed now passes the secrets check.
  • Risk: Version bump touches Cargo.lock which could drift if master gets new dependency changes.
    • Mitigation: Branch is rebased on latest master before each push; cargo update --workspace confirms lock file is current.

Rollback Plan (required)

  • Fast rollback: git revert <merge-commit> on master.
  • Feature flags: N/A — metadata + bugfix changes.
  • Observable failure symptoms: CI --locked failures if Cargo.lock stale; release pipeline version mismatch if Cargo.toml doesn't match tag.

Release Plan

Once merged to master:

  1. Version-sync workflow fires → updates 31 README badges automatically
  2. Beta release fires → v0.7.0-beta.{N} with all targets + Docker beta
  3. After CI passes, push tag v0.7.0 to trigger full stable release:
    • Cross-platform binaries (Linux x86/ARM, macOS, Windows, Android)
    • macOS desktop app (.dmg)
    • Docker images → ghcr.io/zeroclaw-labs/zeroclaw:v0.7.0 + :latest
    • crates.io publish
    • Package managers: Homebrew, Scoop, AUR
    • Marketplace: Coolify, Dokploy, EasyPanel
    • Announcements: Twitter + Discord
    • Website redeploy

@theonlyhennygod theonlyhennygod added ci Auto scope: CI/workflow/hook files changed. docs Auto scope: docs/markdown/template files changed. dependencies Auto scope: dependency manifest/lock/policy changed. integration Auto scope: src/integrations/** changed. labels Apr 16, 2026
@github-actions github-actions bot removed the integration Auto scope: src/integrations/** changed. label Apr 16, 2026
@JordanTheJet
Copy link
Copy Markdown
Collaborator

Agent triage — skipped, flagged for maintainer review

Comprehension summary

What: Prepares v0.7.0 release. Bumps workspace version 0.6.9 → 0.7.0 across 14 crates + Tauri + marketplace templates, adds a 321-line CHANGELOG.md covering the entire 0.6.x series with 73-contributor attribution, fixes HuggingFace/LM Studio integration status (they were hardcoded ComingSoon despite being implemented — now read providers.fallback), migrates pre-release validation from secrets.PATsecrets.RELEASE_TOKEN + secrets.WEBSITE_REPO_PAT, and auto-fills the Docker web UI pairing code.

Why: 0.6.x accumulated 140+ features / 200+ fixes with no stable tag since the workspace refactor; downstream packaging (Docker, Homebrew, AUR, Scoop, crates.io) is blocked waiting for 0.7.0.

Blast radius: Release pipeline (beta → stable → marketplace sync → Homebrew/AUR/Scoop/crates.io/Docker/Discord), version-sync workflow (31 README badges), integration status surface in runtime registry, Docker web UI pairing flow.

Why this is being escalated rather than agent-reviewed

Per docs/contributing/reviewer-playbook.md §1.5 and the agent's review protocol, PRs that modify high-risk paths and are NOT primarily docs changes must be routed to a human maintainer. This PR touches:

  • .github/workflows/pre-release-validate.yml — changes the secret reference used for downstream-repo write-access checks (PATRELEASE_TOKEN) and introduces a second token (WEBSITE_REPO_PAT) for the website repo split. Secret-handling + release-gating = needs a human with access to verify the new secrets are actually provisioned in org settings before this merges. If RELEASE_TOKEN or WEBSITE_REPO_PAT is unset or under-scoped, the Validate Release Readiness job will silently let a bad release tag through.
  • .github/workflows/discord-release.yml and .github/workflows/sync-marketplace-templates.yml — doc-string bumps only (v0.6.9v0.7.0 in input descriptions). Low concern, but still high-risk path.
  • crates/zeroclaw-runtime/src/integrations/registry.rs — behavior change: HF and LM Studio flip from ComingSoon to Active when providers.fallback == \"huggingface\" | \"hf\" | \"lmstudio\" | \"lm-studio\". Small and local, but it is a runtime/* change.

Release PRs also carry category-level risk the agent doesn't clear autonomously: once the v0.7.0 tag lands, binary builds, crates.io publish, Homebrew/AUR/Scoop push, Docker image tagging, and marketplace sync all fire. Rollback after tag push is materially harder than reverting a normal PR.

What the agent did NOT do

  • Did not run the local validation battery (cargo fmt / clippy / build / test). CI is green on the PR side (all 21 checks SUCCESS including CI Required Gate and Security Required Gate).
  • Did not execute the PR's test-plan-equivalent "Validation Evidence" block.
  • Did not assign itself or apply agent-approved.

What the maintainer should verify before merge

  1. Secrets provisioned: RELEASE_TOKEN exists in the repo/org with push scope to zeroclaw-labs/dokploy, easypanel, coolify; WEBSITE_REPO_PAT exists with push scope to zeroclaw-labs/zeroclaw-website. The Validate Release Readiness job will fail loudly if either is missing, but worth confirming pre-merge.
  2. Superseded PR attribution: PR declares Supersedes #5792. Per docs/contributing/pr-discipline.md, if material commits from chore: bump version to 0.7.0 with comprehensive changelog #5792 were carried over, Co-authored-by trailers should be present. PR body's own note says this branch carries the same commits plus a compilation fix — worth confirming chore: bump version to 0.7.0 with comprehensive changelog #5792's author is credited.
  3. CHANGELOG contributor list: 73 contributors attributed by display name/handle. Worth a skim for correctness and for any names that should be redacted per the data-hygiene rules.
  4. Release pipeline order: PR body states "Beta release runs first before stable tag is pushed" as a guardrail. Confirm the v0.7.0-beta.N beta path actually fires on merge before anyone pushes the stable v0.7.0 tag.
  5. aardvark-sys intentionally stays at 0.1.0 — confirm this is still the desired versioning strategy.

Meta notes

  • PR missing size: label (PR body claims size: M) and risk: label (PR body claims risk: low). Auto-labelers applied ci, docs, dependencies only.
  • Mergeable state: BLOCKED — expected, since no approving review has been left yet.
  • No prior agent comments; this is the first triage pass.

Not applying agent-approved. Flagging for human review. @JordanTheJet


🤖 Generated with Claude Code

When the /pair/code endpoint returns the code (initial setup, before
first pairing), auto-fill it into the input field so the user just
clicks "Pair" instead of manually copying from docker logs. Also
updates the subtitle to clarify the next step.

Follows up on #4786 which added the public /pair/code endpoint.
Both providers are fully implemented in providers/mod.rs (huggingface
uses HF Inference API, lmstudio uses OpenAI-compatible local server)
but were still marked ComingSoon in the integration registry. Update
their status_fn to show Available/Active like all other providers,
including alias support (hf, lm-studio).
Add detailed CHANGELOG.md attributing all 73 contributors across the
0.6.x series. Sync version references across README badges, Tauri
config, marketplace templates, and workflow descriptions.
…udio status

The Hugging Face and LM Studio integration entries referenced
c.default_provider which does not exist on Config. Use
c.providers.fallback (matching the pattern of all other entries)
to fix the compilation error.
…se validation

The pre-release validation workflow referenced secrets.PAT which does
not exist in repo settings. All other release workflows use
RELEASE_TOKEN for the same purpose. Align this workflow to match.
…lidation

The release workflows use WEBSITE_REPO_PAT (not RELEASE_TOKEN) for
website redeployment. Align the pre-release validation to check each
downstream repo with the correct token.
@singlerider
Copy link
Copy Markdown
Collaborator

Echoing @JordanTheJet's escalation — this one needs human eyes before anything near a tag push.

One additional blocker not yet captured here: the release plan in this PR lists crates.io publish as a pipeline step. That step will hard-fail. All 14 workspace sub-crates are publish = false, so cargo publish on the root fails with no matching package named zeroclaw-api found — documented in detail in #5811.

I've left a changes-requested review on #5812, which is the PR attempting to gate the publish step in CI. The recommendation there is to drop the CI gymnastics and instead set publish = false on the root Cargo.toml — matching what the sub-crates already do and making the block self-documenting at the manifest level rather than buried in workflow YAML. That should be resolved and merged before this release PR lands, otherwise whoever pushes the v0.7.0 tag is going to hit a broken pipeline mid-release.

Jordan's checklist above is the right gate. Holding on approval until #5812 is settled and the secrets are confirmed provisioned.

Address review feedback from @singlerider: instead of gating publish
via CI workflow YAML (`if: false && ...` + `publish_crates_io` input),
set `publish = false` on the root `zeroclawlabs` crate. This is
simpler, consistent with the 14 sub-crates, and puts the policy where
Cargo expects it. Reverts both workflow file changes.

Refs: #5811, RFC #5579

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@WareWolf-MoonWall
Copy link
Copy Markdown
Collaborator

Changelog — v0.6.9 → next

Changes since the v0.6.9 stable release. This release represents the largest
structural overhaul in ZeroClaw's history: the entire codebase has been split into a
proper Cargo workspace of focused crates, a new config schema has shipped with a live
migration path, and a wave of channel, provider, and security improvements have landed
on top of that foundation.


Highlights

  • Workspace split complete — ZeroClaw is now a multi-crate Cargo workspace. The
    monolithic source tree has been decomposed into 12+ focused crates
    (zeroclaw-api, zeroclaw-runtime, zeroclaw-gateway, zeroclaw-channels,
    zeroclaw-tools, zeroclaw-memory, zeroclaw-providers, zeroclaw-infra,
    zeroclaw-config, zeroclaw-tui, zeroclaw-plugins, zeroclaw-hardware).
    The foundation binary now builds at 6.6 MB with --no-default-features.

  • Config V2 schema with automatic migration — Provider config has moved to a cleaner
    layout. Running zeroclaw config migrate upgrades your existing config in-place,
    preserving comments. The old props subcommand still works but is now deprecated in
    favour of zeroclaw config.

  • OpenRouter streaming — OpenRouterProvider now streams responses token-by-token
    instead of waiting for the full response, matching the experience of native providers.

  • Web dashboard decoupled from the binary — The dashboard is now built separately
    and embedded at release time. cargo install and AUR/Homebrew packages include it.
    A new voice mode and plugins page have been added to the dashboard.

  • LINE channel — LINE Messaging API is now a supported channel.

  • Matrix improvements — Mention-only filtering (the agent only responds when
    mentioned), encrypted media download restored, outbound attachment support added, and
    onboarding wizard preservation.


What's New

Architecture & Workspace

  • Extracted 12 workspace crates from the monolith, implementing the microkernel RFC
    roadmap (RFC D1–D5). Every subsystem — providers, channels, tools, memory, infra,
    config, gateway, TUI, plugins, hardware — now lives in its own crate with explicit
    dependency boundaries enforced by the compiler.
  • Foundation binary (--no-default-features) compiles clean at 6.6 MB.
  • agent-runtime feature flag gates the full agent loop; the kernel binary builds
    without it.
  • Switched TLS from aws-lc-rs to ring and stripped .eh_frame sections, reducing
    binary size further.
  • schemars is now optional behind a schema-export feature flag — no longer a
    mandatory compile dependency.
  • 28 per-channel feature flags with forwarding chains so unused channels add zero
    compile time.
  • Workspace-wide [workspace.dependencies] and [workspace.package] inheritance
    eliminates version duplication across Cargo.toml files.
  • RFC Rev 2 compliance: stability tiers, versioning policy, and release profile are now
    wired into the workspace.

Providers

Channels

Configuration

  • Config V2 schema with a new provider layout (providers.models,
    providers.fallback, model_routes, embedding_routes).
  • zeroclaw config migrate upgrades a V1 config to V2 in-place, preserving comments
    and formatting.
  • zeroclaw config replaces zeroclaw props. The old props subcommand is deprecated
    but still functional.
  • Onboarding wizard updated to write V2 provider format directly.
  • Fixed: false "Unknown config key" warnings for Option<T> fields and config aliases
    (fix(config): false "Unknown config key" warning for Option fields and aliases #5510).
  • Fixed: providers.fallback now emits a warning if it references a key that does not
    exist in providers.models.
  • Fixed: temperature validation restored in the providers.models loop.
  • Slack config: channel_id deprecated in favour of channel_ids (plural) for V2.
  • Nostr, WhatsApp Web, and hardware wizard sections wired into the onboarding flow
    (fix(onboard): wire nostr, whatsapp-web, and hardware wizard sections #5640).

Web Dashboard

Agent & Runtime

Skills (Claude Code)

Security

Installation & Distribution

Dependencies & Security Advisories


Bug Fixes (summary)

Area Fix
Provider Strip native tool messages for non-native-tool-calling providers
Provider DeepSeek V3.2 system prompt escaping and token estimation
Agent CLI channel factory missing in interactive mode
Agent Duplicate ToolCall events in streaming turns
Matrix Encrypted media download; outbound attachments
Channels Missing Arc Provider forwarding methods
Channels <think> tag leaking into streaming draft updates
Config False "Unknown config key" warnings on Option fields
Config Temperature validation missing from providers loop
Config Fallback key references nonexistent provider — now warns
Session Integrity, streaming refactor, history pruning
Cron auto_save causing recursive memory bloat on scheduled jobs
Security Dangerous interpreter flags not blocked
Install install.sh broken after workspace split
Runtime Windows console window visible in background mode
Distribution Web dashboard missing from AUR and cargo install builds

Breaking Changes

Config schema (V1 → V2)

The provider section of config.toml has a new layout. V1 configs are still loaded and
automatically understood, but the recommended path is to run the migration:

zeroclaw config migrate

This rewrites your config to V2 in-place. The old format will continue to work in this
release but will not be supported indefinitely.

zeroclaw props deprecated

Use zeroclaw config instead. The props subcommand still works and will not be
removed in this release, but it will emit a deprecation notice.

Slack channel_id deprecated

Use channel_ids (a list) in the Slack config block. channel_id (singular) still
works but is deprecated in V2.

Workspace crate boundaries

If you have any code that depends directly on internal ZeroClaw crate paths (e.g. for
embedding or testing), the crate structure has changed significantly. Refer to
AGENTS.md for the current crate map and stability tiers. zeroclaw-api is the stable
extension point — all other crates are Beta or Experimental.


Contributors

Thank you to everyone who contributed to this release:

  • Argenis
  • Dan Gilles (Audacity88)
  • Matteo Pietro Dazzi
  • Nayrosk
  • Shane Engelman
  • zilch40
  • Chris Hengge (WareWolf-MoonWall)

Full diff: git log v0.6.9..HEAD --oneline

@WareWolf-MoonWall
Copy link
Copy Markdown
Collaborator

Changelog — v0.6.9 → next

Changes since the v0.6.9 stable release. This release represents the largest
structural overhaul in ZeroClaw's history: the entire codebase has been split into a
proper Cargo workspace of focused crates, a new config schema has shipped with a live
migration path, and a wave of channel, provider, and security improvements have landed
on top of that foundation.


Highlights

  • Workspace split complete — ZeroClaw is now a multi-crate Cargo workspace. The
    monolithic source tree has been decomposed into 12+ focused crates
    (zeroclaw-api, zeroclaw-runtime, zeroclaw-gateway, zeroclaw-channels,
    zeroclaw-tools, zeroclaw-memory, zeroclaw-providers, zeroclaw-infra,
    zeroclaw-config, zeroclaw-tui, zeroclaw-plugins, zeroclaw-hardware).
    The foundation binary now builds at 6.6 MB with --no-default-features.

  • Config V2 schema with automatic migration — Provider config has moved to a cleaner
    layout. Running zeroclaw config migrate upgrades your existing config in-place,
    preserving comments. The old props subcommand still works but is now deprecated in
    favour of zeroclaw config.

  • OpenRouter streaming — OpenRouterProvider now streams responses token-by-token
    instead of waiting for the full response, matching the experience of native providers.

  • Web dashboard decoupled from the binary — The dashboard is now built separately
    and embedded at release time. cargo install and AUR/Homebrew packages include it.
    A new voice mode and plugins page have been added to the dashboard.

  • LINE channel — LINE Messaging API is now a supported channel.

  • Matrix improvements — Mention-only filtering (the agent only responds when
    mentioned), encrypted media download restored, outbound attachment support added, and
    onboarding wizard preservation.


What's New

Architecture & Workspace

  • Extracted 12 workspace crates from the monolith, implementing the microkernel RFC
    roadmap (RFC D1–D5). Every subsystem — providers, channels, tools, memory, infra,
    config, gateway, TUI, plugins, hardware — now lives in its own crate with explicit
    dependency boundaries enforced by the compiler.
  • Foundation binary (--no-default-features) compiles clean at 6.6 MB.
  • agent-runtime feature flag gates the full agent loop; the kernel binary builds
    without it.
  • Switched TLS from aws-lc-rs to ring and stripped .eh_frame sections, reducing
    binary size further.
  • schemars is now optional behind a schema-export feature flag — no longer a
    mandatory compile dependency.
  • 28 per-channel feature flags with forwarding chains so unused channels add zero
    compile time.
  • Workspace-wide [workspace.dependencies] and [workspace.package] inheritance
    eliminates version duplication across Cargo.toml files.
  • RFC Rev 2 compliance: stability tiers, versioning policy, and release profile are now
    wired into the workspace.

Providers

Channels

Configuration

  • Config V2 schema with a new provider layout (providers.models,
    providers.fallback, model_routes, embedding_routes).
  • zeroclaw config migrate upgrades a V1 config to V2 in-place, preserving comments
    and formatting.
  • zeroclaw config replaces zeroclaw props. The old props subcommand is deprecated
    but still functional.
  • Onboarding wizard updated to write V2 provider format directly.
  • Fixed: false "Unknown config key" warnings for Option<T> fields and config aliases
    (fix(config): false "Unknown config key" warning for Option fields and aliases #5510).
  • Fixed: providers.fallback now emits a warning if it references a key that does not
    exist in providers.models.
  • Fixed: temperature validation restored in the providers.models loop.
  • Slack config: channel_id deprecated in favour of channel_ids (plural) for V2.
  • Nostr, WhatsApp Web, and hardware wizard sections wired into the onboarding flow
    (fix(onboard): wire nostr, whatsapp-web, and hardware wizard sections #5640).

Web Dashboard

Agent & Runtime

Skills (Claude Code)

Security

Installation & Distribution

Dependencies & Security Advisories


Bug Fixes (summary)

Area Fix
Provider Strip native tool messages for non-native-tool-calling providers
Provider DeepSeek V3.2 system prompt escaping and token estimation
Agent CLI channel factory missing in interactive mode
Agent Duplicate ToolCall events in streaming turns
Matrix Encrypted media download; outbound attachments
Channels Missing Arc Provider forwarding methods
Channels <think> tag leaking into streaming draft updates
Config False "Unknown config key" warnings on Option fields
Config Temperature validation missing from providers loop
Config Fallback key references nonexistent provider — now warns
Session Integrity, streaming refactor, history pruning
Cron auto_save causing recursive memory bloat on scheduled jobs
Security Dangerous interpreter flags not blocked
Install install.sh broken after workspace split
Runtime Windows console window visible in background mode
Distribution Web dashboard missing from AUR and cargo install builds

Breaking Changes

Config schema (V1 → V2)

The provider section of config.toml has a new layout. V1 configs are still loaded and
automatically understood, but the recommended path is to run the migration:

zeroclaw config migrate

This rewrites your config to V2 in-place. The old format will continue to work in this
release but will not be supported indefinitely.

zeroclaw props deprecated

Use zeroclaw config instead. The props subcommand still works and will not be
removed in this release, but it will emit a deprecation notice.

Slack channel_id deprecated

Use channel_ids (a list) in the Slack config block. channel_id (singular) still
works but is deprecated in V2.

Workspace crate boundaries

If you have any code that depends directly on internal ZeroClaw crate paths (e.g. for
embedding or testing), the crate structure has changed significantly. Refer to
AGENTS.md for the current crate map and stability tiers. zeroclaw-api is the stable
extension point — all other crates are Beta or Experimental.


Contributors

Thank you to everyone who contributed to this release:


Full diff: git log v0.6.9..HEAD --oneline

The changelog content belongs in the GitHub Release body, not as a
tracked file that causes merge conflicts and goes stale. Release notes
for v0.7.0 are prepared in release-notes-0.7.0.md.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@github-actions github-actions bot removed the docs Auto scope: docs/markdown/template files changed. label Apr 17, 2026
…se it

- Add CHANGELOG-next.md with human-written release notes for v0.7.0,
  covering the workspace split, config V2 migration, OpenRouter streaming,
  LINE channel, Matrix improvements, and all fixes since v0.6.9.
  Contributors resolved via GitHub GraphQL API (authors + co-authors).

- Update release-beta-on-push.yml and release-stable-manual.yml: if
  CHANGELOG-next.md exists at release time, use it verbatim as the GitHub
  release body instead of the auto-generated feat-only notes.

- After a stable release, the workflow removes and commits the deletion of
  CHANGELOG-next.md automatically so it does not carry over into the next
  release cycle.
@github-actions github-actions bot added the docs Auto scope: docs/markdown/template files changed. label Apr 17, 2026
Copy link
Copy Markdown
Collaborator

@JordanTheJet JordanTheJet left a comment

Choose a reason for hiding this comment

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

LGTM, change logs maybe not required and might be orphaned but they can be used as release notes and cleaned up

@JordanTheJet JordanTheJet merged commit d0d8319 into master Apr 17, 2026
21 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci Auto scope: CI/workflow/hook files changed. dependencies Auto scope: dependency manifest/lock/policy changed. docs Auto scope: docs/markdown/template files changed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants