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
12 changes: 11 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,17 @@ Hy Memory and MemHub are versioned and released independently.
Because PyPI release metadata is immutable, the next SDK patch release must
carry the updated license metadata; `2.0.1` retains its published metadata.

## MemHub 1.0.3 — Unreleased
## MemHub 1.0.5 — Unreleased

- Updated the source version to `1.0.5` (build 14).
- Pinned the public SDK to the stable `hy-memory==2.0.5` release.

## MemHub 1.0.4 — 2026-10-18

- Updated the source version to `1.0.4` (build 13).
- Published the `v1.0.4` source and release metadata.

## MemHub 1.0.3 — 2026-10-17

- Updated the source version to `1.0.3` (build 7).
- Pinned the public SDK to `hy-memory==2.0.3`.
Expand Down
10 changes: 5 additions & 5 deletions memhub/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ If you run into a problem, please open an Issue with the version, platform,repro

## 发行与平台合同

源码当前固定使用公开 PyPI 开发预览 `hy-memory==2.0.5.dev3`。MemHub 源码版本为 `1.0.4`
(build 13),GitHub 仓库为
源码当前固定使用公开 PyPI 正式版 `hy-memory==2.0.5`。MemHub 源码版本为 `1.0.5`
(build 14),GitHub 仓库为
[`Tencent-Hunyuan/Hy-Memory`](https://github.com/Tencent-Hunyuan/Hy-Memory),npm 包名为
`memhub-cli`。当前代码架构见
[`docs/ARCHITECTURE.md`](docs/ARCHITECTURE.md)。

`v1.0.4` 的发行目标是 Linux x64/arm64 Runtime 与 macOS arm64/x64 App 和 Runtime。
`v1.0.5` 的发行目标是 Linux x64/arm64 Runtime 与 macOS arm64/x64 App 和 Runtime。
Linux 制品由 GitHub Actions 在原生架构 runner 上构建并完成生命周期验收;macOS
制品由发行流水线完成 Developer ID 签名、公证和验收后手动上传。Windows 不支持。
只有同时出现在 GitHub Release 与 `release-manifest.json` 中、且通过公开校验的制品才属于
Expand All @@ -45,7 +45,7 @@ Linux 制品由 GitHub Actions 在原生架构 runner 上构建并完成生命

## 仓库结构

- `apps/core`:Python / FastAPI Kernel,负责授权、模型、队列、SDK bridge 与 API。
- `apps/core`:Python / FastAPI Kernel,负责授权、模型、队列、SDK Runtime 边界与 API。
- `apps/cli`:安装、控制和诊断共享 Runtime 的 `one-memory` CLI。
- `apps/web`:React / TypeScript 管理界面。
- `apps/desktop`:Electron 桌面壳与图形安装入口。
Expand Down Expand Up @@ -117,7 +117,7 @@ MemHub 的 SQLite 数据默认位于 `~/.one-memory`,不在 npm 包或 Runtime

## Hy Memory

SDK 依赖固定为公开 PyPI 开发预览 `hy-memory==2.0.5.dev3`。SDK 配置、权限边界及 search
SDK 依赖固定为公开 PyPI 正式版 `hy-memory==2.0.5`。SDK 配置、权限边界及 search
返回格式见 [`MEMORY.md`](MEMORY.md)。HY search 返回的 `content` 已包含 SDK 统一生成的
逻辑时间和演化上下文;调用方不应再次转换时间戳或重复拼接 `When`。

Expand Down
6 changes: 3 additions & 3 deletions memhub/SBOM.spdx.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,9 @@
"dataLicense": "CC0-1.0",
"SPDXID": "SPDXRef-DOCUMENT",
"name": "one-memory",
"documentNamespace": "https://one-memory.local/spdx/2026-10-22T08:09:31Z",
"documentNamespace": "https://one-memory.local/spdx/2026-10-22T13:18:16Z",
"creationInfo": {
"created": "2026-10-22T08:09:31Z",
"created": "2026-10-22T13:18:16Z",
"creators": [
"Tool: one-memory-generate-sbom"
]
Expand Down Expand Up @@ -2352,7 +2352,7 @@
{
"SPDXID": "SPDXRef-Package-hy-memory",
"name": "hy-memory",
"versionInfo": "2.0.5.dev3",
"versionInfo": "2.0.5",
"downloadLocation": "NOASSERTION",
"filesAnalyzed": false,
"licenseConcluded": "Apache-2.0",
Expand Down
4 changes: 2 additions & 2 deletions memhub/THIRD_PARTY_NOTICES.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@

MemHub itself is licensed under Apache-2.0 (see `LICENSE`).
It bundles the runtime dependencies listed below.
Generated from the installed dependency tree on 2026-10-22T08:09:31Z
Generated from the installed dependency tree on 2026-10-22T13:18:16Z
by `python3 scripts/generate_sbom.py`. Do not edit by hand.

Per-package license texts are not reproduced here yet; the license
column is filled in as part of release review, and the SBOM records
`NOASSERTION` until then rather than guessing.

## hy-memory 2.0.5.dev3
## hy-memory 2.0.5

License: Apache-2.0

Expand Down
2 changes: 1 addition & 1 deletion memhub/apps/cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@one-memory/cli",
"version": "1.0.4",
"version": "1.0.5",
"description": "MemHub bootstrap CLI for installing and managing the local-first shared memory runtime",
"license": "Apache-2.0",
"repository": {
Expand Down
4 changes: 2 additions & 2 deletions memhub/apps/core/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,15 +4,15 @@ build-backend = "uv_build"

[project]
name = "one-memory"
version = "1.0.4"
version = "1.0.5"
description = "MemHub local-first memory core"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
"fastapi>=0.141.1",
"filelock>=3.32.4",
# Public SDK version validated against MemHub's permission and recall contracts.
"hy-memory==2.0.5.dev3",
"hy-memory==2.0.5",
# Retrieval's derived vector index directly consumes these locked versions.
"chromadb==1.5.9",
"numpy==2.5.2",
Expand Down
2 changes: 1 addition & 1 deletion memhub/apps/core/src/one_memory/hy_runtime_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from typing import Literal, cast

HY_MEMORY_DISTRIBUTION = "hy-memory"
HY_MEMORY_VERSION = "2.0.5.dev3"
HY_MEMORY_VERSION = "2.0.5"
HY_MEMORY_NAMESPACE = "governed-v2"
DiagnosticLogLevel = Literal["error", "warning", "info", "debug"]

Expand Down
4 changes: 2 additions & 2 deletions memhub/apps/core/tests/test_cli_restore.py
Original file line number Diff line number Diff line change
Expand Up @@ -363,7 +363,7 @@ def test_sdk_cutover_is_offline_confirmed_and_returns_marker(tmp_path, monkeypat
lambda **_kwargs: SimpleNamespace(
migration_id="migration-1",
backup_bundle_id="bundle-1",
sdk_version="2.0.5.dev3",
sdk_version="2.0.5",
completed_at="2026-10-21T00:00:00Z",
),
)
Expand Down Expand Up @@ -393,7 +393,7 @@ def test_sdk_cutover_is_offline_confirmed_and_returns_marker(tmp_path, monkeypat
assert code == 0
document = output.getvalue().replace(" ", "")
assert '"state":"cutover"' in document
assert '"sdk_version":"2.0.5.dev3"' in document
assert '"sdk_version":"2.0.5"' in document


def test_sdk_cutover_never_runs_while_runtime_is_live(tmp_path, monkeypatch) -> None:
Expand Down
8 changes: 4 additions & 4 deletions memhub/apps/core/tests/test_sdk_data_plane_migration.py
Original file line number Diff line number Diff line change
Expand Up @@ -219,7 +219,7 @@ def test_startup_cutover_freezes_pending_job_input_and_preserves_the_queue(store
database_path=store.database_path,
migration_id="m1",
bundle_id="bundle-1",
sdk_version="2.0.5.dev3",
sdk_version="2.0.5",
)
assert marker.migration_id == "m1"
assert legacy_tables_present(store.database_path)
Expand Down Expand Up @@ -683,7 +683,7 @@ def test_offline_backfill_reaches_ready_without_committing_cutover(store):
migration_id="migration",
bundle_id="bundle",
source_runtime_build="v1.0.4",
target_sdk_version="2.0.5.dev3",
target_sdk_version="2.0.5",
source_schema_version=55,
namespace_fingerprint="namespace",
backend_fingerprint="backend",
Expand Down Expand Up @@ -719,7 +719,7 @@ def test_offline_backfill_reaches_ready_without_committing_cutover(store):
migration_id="migration",
bundle_id="bundle",
source_runtime_build="v1.0.4",
target_sdk_version="2.0.5.dev3",
target_sdk_version="2.0.5",
source_schema_version=55,
namespace_fingerprint="namespace",
backend_fingerprint="backend",
Expand Down Expand Up @@ -752,7 +752,7 @@ def test_offline_backfill_blocks_cutover_when_an_item_is_quarantined(store):
migration_id="migration",
bundle_id="bundle",
source_runtime_build="v1.0.4",
target_sdk_version="2.0.5.dev3",
target_sdk_version="2.0.5",
source_schema_version=55,
namespace_fingerprint="namespace",
backend_fingerprint="backend",
Expand Down
2 changes: 1 addition & 1 deletion memhub/apps/core/tests/test_sdk_migration_bundle.py
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ def test_bundle_contains_management_sdk_config_and_verified_manifest(tmp_path):
assert manifest["bundle_id"] == "migration-1"
assert manifest["sdk_namespace"] == "governed-v2"
assert manifest["runtime_build"] == "build-13"
assert manifest["snapshot_sdk_version"] == "2.0.5.dev3"
assert manifest["snapshot_sdk_version"] == "2.0.5"
paths = {item["path"]: item for item in manifest["files"]}
assert {
"management/one-memory.sqlite3",
Expand Down
10 changes: 5 additions & 5 deletions memhub/apps/core/uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion memhub/apps/desktop/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@one-memory/desktop",
"version": "1.0.4",
"version": "1.0.5",
"private": true,
"main": "dist/main.js",
"scripts": {
Expand Down
2 changes: 1 addition & 1 deletion memhub/apps/site/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@one-memory/site",
"version": "1.0.4",
"version": "1.0.5",
"private": true,
"type": "module",
"scripts": {
Expand Down
2 changes: 1 addition & 1 deletion memhub/apps/web/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@one-memory/web",
"version": "1.0.4",
"version": "1.0.5",
"private": true,
"type": "module",
"scripts": {
Expand Down
2 changes: 1 addition & 1 deletion memhub/docs/ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -282,7 +282,7 @@ Support is declared per immutable GitHub Release manifest:
- Linux x64/arm64 Runtime on native GHA runners.
- macOS arm64/x64 App/Runtime: Developer ID, notarization, native acceptance.
- Windows is not supported.
- `hy-memory==2.0.5.dev3` is the current development-preview SDK dependency; the release
- `hy-memory==2.0.5` is the current stable SDK dependency; the release
lock and [`../MEMORY.md`](../MEMORY.md) are authoritative when the pin changes.

See [`INSTALLATION.md`](INSTALLATION.md).
Expand Down
2 changes: 1 addition & 1 deletion memhub/docs/INSTALLATION.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# MemHub 安装与发行

MemHub `v1.0.4`(build 13)的发行目标如下:
MemHub `v1.0.5`(build 14)的发行目标如下:

| 平台 | 发行物 | 构建与验收 |
| --- | --- | --- |
Expand Down
4 changes: 2 additions & 2 deletions memhub/package.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"name": "one-memory",
"version": "1.0.4",
"version": "1.0.5",
"release": {
"build_number": 13,
"build_number": 14,
"macos_min_version": "13.0",
"app_update": "manual",
"runtime_manifest_schema": 1,
Expand Down
2 changes: 1 addition & 1 deletion memhub/packages/contracts/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@one-memory/contracts",
"version": "1.0.4",
"version": "1.0.5",
"private": true,
"type": "module",
"types": "./src/index.ts",
Expand Down
2 changes: 1 addition & 1 deletion memhub/packages/host-bridge/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@one-memory/host-bridge",
"version": "1.0.4",
"version": "1.0.5",
"private": true,
"type": "module",
"exports": {
Expand Down
2 changes: 1 addition & 1 deletion memhub/packages/i18n/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@one-memory/i18n",
"version": "1.0.4",
"version": "1.0.5",
"private": true,
"type": "module",
"types": "./src/index.ts",
Expand Down
2 changes: 1 addition & 1 deletion memhub/packages/operations/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@one-memory/operations",
"version": "1.0.4",
"version": "1.0.5",
"private": true,
"type": "module",
"types": "./src/index.ts",
Expand Down
2 changes: 1 addition & 1 deletion memhub/packages/runtime-control/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@one-memory/runtime-control",
"version": "1.0.4",
"version": "1.0.5",
"private": true,
"type": "module",
"bin": {
Expand Down
2 changes: 1 addition & 1 deletion memhub/scripts/generate_sbom.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
MEMMY_PROVENANCE = MEMMY_LICENSE.with_name("PROVENANCE.md")
MEMMY_PIN = "25acd5f29fc7df73b943713abe61f1b2f9839887"
HY_MEMORY_NAME = "hy-memory"
HY_MEMORY_VERSION = "2.0.5.dev3"
HY_MEMORY_VERSION = "2.0.5"


class SbomError(RuntimeError):
Expand Down
6 changes: 3 additions & 3 deletions memhub/scripts/test_generate_sbom.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,15 +13,15 @@


def test_hy_memory_notice_comes_from_the_installed_dist_info(tmp_path: Path) -> None:
dist_info = tmp_path / "hy_memory-2.0.5.dev3.dist-info"
dist_info = tmp_path / "hy_memory-2.0.5.dist-info"
licenses = dist_info / "licenses"
licenses.mkdir(parents=True)
(dist_info / "METADATA").write_text(
"\n".join(
(
"Metadata-Version: 2.4",
"Name: hy-memory",
"Version: 2.0.5.dev3",
"Version: 2.0.5",
"License-Expression: Apache-2.0",
"",
)
Expand All @@ -38,7 +38,7 @@ def test_hy_memory_notice_comes_from_the_installed_dist_info(tmp_path: Path) ->
notice = module.hy_memory_notice(dist_info)

assert notice["name"] == "hy-memory"
assert notice["version"] == "2.0.5.dev3"
assert notice["version"] == "2.0.5"
assert notice["license"] == "Apache-2.0"
assert notice["copyright"] == "Copyright (C) 2026 Tencent. All rights reserved."
assert "Licensed under the Apache License" in notice["text"]
Expand Down
Loading