Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -128,3 +128,41 @@ jobs:
# second, empty duplicate draft).
publish=${{ github.event_name == 'push' && 'always' || 'never' }}
bunx electron-builder ${{ matrix.builder-platform }} $spec --publish "$publish" ${{ matrix.sign-args }}

# electron-builder's `--publish always` (above) CREATES the release as a
# DRAFT and uploads every artifact to it, but never publishes it and never
# writes notes — so historically each release had to be published by hand and
# shipped with an empty body. This job runs once, after every matrix leg has
# uploaded its artifacts, to generate notes from the merged PRs and flip the
# draft to a published "latest" release. Tag-push only; a workflow_dispatch
# dry-run builds nothing to publish.
finalize:
name: Publish release
needs: build
if: github.event_name == 'push'
runs-on: ubuntu-22.04
timeout-minutes: 10
permissions:
contents: write # to publish the release + set notes
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
fetch-tags: true

- name: Generate notes + publish the draft
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
shell: bash
run: |
TAG="${GITHUB_REF_NAME}"
# GitHub auto-picks the previous release for the diff; the "What's
# Changed" body lists every merged PR since it. Prepend the tag's
# annotation subject as a one-line human summary when present.
gen=$(gh api "repos/${GITHUB_REPOSITORY}/releases/generate-notes" \
-f tag_name="$TAG" --jq '.body')
summary=$(git for-each-ref "refs/tags/${TAG}" --format='%(contents:subject)')
{ [ -n "$summary" ] && printf '%s\n\n' "$summary"; printf '%s\n' "$gen"; } > notes.md
# The draft already exists (electron-builder created it for this tag).
gh release edit "$TAG" --repo "${GITHUB_REPOSITORY}" \
--draft=false --latest --notes-file notes.md
76 changes: 76 additions & 0 deletions packages/shell/changelog/changelog.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,82 @@
"$schema": "../src/main/help/changelog-schema.json",
"format": "brainstorm/changelog/v2",
"releases": [
{
"version": "0.1.7",
"date": "2026-07-02",
"icon": "🧹",
"title": "A full pass over every app",
"summary": "A fixes release on the public beta, from a sweep across every app: status cells edit as a pick list, the calendar and preview render cleanly, chat messages stay out of the file browsers, and the assistant shows real titles instead of internal ids.",
"body": [
{ "kind": "h1", "text": "Fixes across the apps" },
{
"kind": "li",
"text": [
{ "text": "Database", "marks": ["bold"] },
{ "text": " — status and select cells edit as a " },
{ "text": "combobox", "marks": ["highlight"] },
{ "text": ": pick a value already in the column, or type a new one." }
]
},
{
"kind": "li",
"text": [
{ "text": "Calendar", "marks": ["bold"] },
{
"text": " — multi-day events draw as one clean bar in month view instead of a clipped, repeated title in every day."
}
]
},
{
"kind": "li",
"text": [
{ "text": "Preview", "marks": ["bold"] },
{
"text": " — centers its empty state and docks the details panel on the right, like every other app."
}
]
},
{
"kind": "li",
"text": [
{ "text": "Files", "marks": ["bold"] },
{ "text": " & " },
{ "text": "Database", "marks": ["bold"] },
{ "text": " — chat messages no longer flood the vault browsers as untitled rows." }
]
},
{
"kind": "li",
"text": [
{ "text": "Assistant", "marks": ["bold"] },
{ "text": " — renders the documents it cites as clickable titles instead of raw ids." }
]
},
{
"kind": "li",
"text": [
{ "text": "Graph", "marks": ["bold"] },
{ "text": " — labels untitled items by type (" },
{ "text": "Note (untitled)", "marks": ["highlight"] },
{ "text": ") instead of internal ids." }
]
},
{
"kind": "p",
"text": "Plus tidier Agent settings, clearer empty states in Automations and Contacts, and task date chips that read correctly to screen readers."
},
{
"kind": "callout",
"icon": "🔄",
"text": [
{ "text": "Update in place. ", "marks": ["bold"] },
{ "text": "Existing installs update from " },
{ "text": "Settings → Updates", "marks": ["highlight"] },
{ "text": "." }
]
}
]
},
{
"version": "0.0.1",
"date": "2026-05-23",
Expand Down
Loading