diff --git a/CHANGELOG.md b/CHANGELOG.md index 6e895a3..7185953 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,47 @@ All notable changes to the public AKMS packages are documented here. The public history begins with the first curated release; earlier private development is intentionally not replayed. +## [0.3.1] — 2026-09-10 + +### Added +- `compmech-reference-pack`, the computational-mechanics companion adapter, + joins the published set. It bridges `akms-learn` LSP excerpts to the + [MechDSL](https://github.com/CEmM2/MechDSL) executable backend; the compile + path is an optional `mechdsl` extra, so the backend is not pulled into a + consumer's resolution unless asked for. It could not ship in 0.3.0 because + its only hard dependency, `akms-learn`, was not yet on PyPI. +- `akms vault status` and `akms vault install`. With no argument, `install` + fetches the canonical + [compmech vault](https://github.com/CEmM2/akms-vault-compmech), pinned to a + release tag. It also accepts a directory, a `.tar.gz`, or an https URL, and + refuses to replace a populated vault without `--force`. + +### Changed +- The node corpus no longer ships inside the `akms` wheel, which drops it from + 1.3 MB to 320 KB. The corpus was never reachable from the package — + `resolve_global_vault` has four precedence levels and the package directory + is on none of them — so nothing could read it. Vaults are distributed and + installed separately now; see `akms vault install`. +- `package-data` is enumerated rather than globbed, so a corpus placed back + under `_bundled` cannot silently re-enter the wheel. + +### Fixed +- Documentation referenced `Packages/AKMS` and similar paths 37 times across + 14 files. The tree ships `packages/akms`; those commands resolved only on a + case-insensitive filesystem and failed on Linux. +- The installation guide stated that no PyPI release existed, and warned that + a full workspace sync required a sibling checkout that is not part of the + public tree. +- Material icons on the documentation site rendered as literal text + (`:material-graph:`) because `pymdownx.emoji` was not enabled, and the + companion-adapter card had lost its title line. +- `site_url`, `repo_url` and `edit_uri` were unset, so canonical links and the + sitemap pointed nowhere. + +### Notes +- All five packages release in lockstep, so the four unchanged since 0.3.0 are + republished at 0.3.1 with no content change. + ## [0.3.0] — 2026-08-31 ### Added diff --git a/CITATION.cff b/CITATION.cff index 0a2bd55..662fd53 100644 --- a/CITATION.cff +++ b/CITATION.cff @@ -7,8 +7,8 @@ authors: - family-names: Osovski given-names: Shmuel email: shmuliko@technion.ac.il -version: 0.3.0 -date-released: 2026-08-31 +version: 0.3.1 +date-released: 2026-09-10 repository-code: "https://github.com/CEmM2/AKMS" abstract: >- A deterministic global-local knowledge compiler: typed knowledge nodes, diff --git a/packages/akms/pyproject.toml b/packages/akms/pyproject.toml index d0b53c5..d7d74b4 100644 --- a/packages/akms/pyproject.toml +++ b/packages/akms/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "akms" -version = "0.3.0" +version = "0.3.1" description = "A deterministic global-local knowledge compiler: typed knowledge nodes, graph compilation, projections, and evidence ingestion" requires-python = ">=3.12,<3.13" license = "Apache-2.0" diff --git a/packages/akms_failure_memory/pyproject.toml b/packages/akms_failure_memory/pyproject.toml index 8d5e5cc..cf030a8 100644 --- a/packages/akms_failure_memory/pyproject.toml +++ b/packages/akms_failure_memory/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "akms-failure-memory" -version = "0.3.0" +version = "0.3.1" description = "Deterministic, project-owned failure memory for AKMS" readme = "README.md" license = "Apache-2.0" diff --git a/packages/akms_learn/pyproject.toml b/packages/akms_learn/pyproject.toml index 7e8e6fa..0cf8844 100644 --- a/packages/akms_learn/pyproject.toml +++ b/packages/akms_learn/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "akms-learn" -version = "0.3.0" +version = "0.3.1" description = "Learning Source Packet compiler and exporters for AKMS (experimental preview)" requires-python = ">=3.12,<3.13" license = "Apache-2.0" diff --git a/packages/akms_nodes_gen/README.md b/packages/akms_nodes_gen/README.md index 3287a4a..67986a2 100644 --- a/packages/akms_nodes_gen/README.md +++ b/packages/akms_nodes_gen/README.md @@ -28,7 +28,7 @@ uv sync --project packages/akms_nodes_gen --group docs ## Batch picker ```bash -uv --project Packages/AKMS_nodes_gen run akms-pick +uv --project packages/akms_nodes_gen run akms-pick ``` The picker runs a local FastAPI UI for selecting papers, staging PDFs, creating @@ -76,8 +76,8 @@ The generator writes: Build the docs locally: ```bash -uv --project Packages/AKMS_nodes_gen run --group docs \ - mkdocs build -f Packages/AKMS_nodes_gen/mkdocs.yml +uv --project packages/akms_nodes_gen run --group docs \ + mkdocs build -f packages/akms_nodes_gen/mkdocs.yml ``` -Main docs live in `Packages/AKMS_nodes_gen/docs/`. +Main docs live in `packages/akms_nodes_gen/docs/`. diff --git a/packages/akms_nodes_gen/pyproject.toml b/packages/akms_nodes_gen/pyproject.toml index 01b5868..422d384 100644 --- a/packages/akms_nodes_gen/pyproject.toml +++ b/packages/akms_nodes_gen/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "akms-nodes-gen" -version = "0.3.0" +version = "0.3.1" description = "Node generation and validation tooling for AKMS: NotebookLM batch generation, YAML-to-node conversion, and the batch-picker UI" readme = "README.md" license = "Apache-2.0" diff --git a/packages/compmech_reference_pack/README.md b/packages/compmech_reference_pack/README.md new file mode 100644 index 0000000..3775126 --- /dev/null +++ b/packages/compmech_reference_pack/README.md @@ -0,0 +1,60 @@ +# compmech-reference-pack + +The computational-mechanics companion adapter for +[AKMS](https://github.com/CEmM2/AKMS). It bridges `akms-learn` Learning Source +Packet excerpts to the [MechDSL](https://github.com/CEmM2/MechDSL) executable +backend, so an algorithm described in a knowledge node can be transpiled and +compiled rather than only read. + +It ships the `compmech` domain pack — the descriptor and source packs that tell +`akms-learn` which companions exist and what each can do. + +## Install + +```bash +pip install compmech-reference-pack +``` + +That gives you the domain pack and the adapter's declared capability surface, +and pulls in `akms-learn`. It does **not** pull in the MechDSL backend: every +`mechdsl` and `algo2code` import in this package is function-scoped, so it +installs and imports cleanly without them. + +To enable the actual compile, transpile and verify path: + +```bash +pip install "compmech-reference-pack[mechdsl]" +``` + +The extra exists so a downstream consumer can depend on this package without +dragging the executable backend — and transitively Taichi — into its +resolution. + +## What it provides + +- **`MechDSLRunner`** — the `executable_bridge` adapter. Given an LSP excerpt + it normalises the algorithmic block, derives a safe algorithm name, and + delegates to MechDSL's `transpile_algorithm` / `compile_from_sources`. + Provenance is preserved from node to generated artefact. +- **`capabilities()`** — a declaration of what the package offers, kept + deliberately import-light and Taichi-free so a caller can ask without paying + for a backend it may not use. +- **The `compmech` domain pack** — `domain_pack.yaml` plus the source packs + under `domain_pack/source_packs/`, addressed through + `compmech_reference_pack.paths`. + +## Companion status + +| Companion | Role | Status | +|---|---|---| +| `mechdsl` | executable bridge | available | +| `constkit` | concept kit | planned | +| `symbolic_fem_workbench` | pedagogical workbench | planned | + +`planned` describes the adapter, not the source: the material for both planned +companions is public, in +[SOSOVSKI/Teaching-materials](https://github.com/SOSOVSKI/Teaching-materials). + +## Licence + +Apache-2.0, matching AKMS. diff --git a/packages/compmech_reference_pack/pyproject.toml b/packages/compmech_reference_pack/pyproject.toml index f29b024..0542265 100644 --- a/packages/compmech_reference_pack/pyproject.toml +++ b/packages/compmech_reference_pack/pyproject.toml @@ -1,7 +1,8 @@ [project] name = "compmech-reference-pack" -version = "0.3.0" -description = "Computational-mechanics companion adapter — bridges AKMS LSP excerpts to the MechDSL executable backend (Tier 2 of the AKMS executable-bridge)." +version = "0.3.1" +description = "Computational-mechanics companion adapter — bridges AKMS LSP excerpts to the MechDSL executable backend." +readme = "README.md" requires-python = ">=3.11,<3.14" dependencies = [ "akms-learn", diff --git a/uv.lock b/uv.lock index 8d8ec09..7945f11 100644 --- a/uv.lock +++ b/uv.lock @@ -72,7 +72,7 @@ wheels = [ [[package]] name = "akms" -version = "0.3.0" +version = "0.3.1" source = { editable = "packages/akms" } dependencies = [ { name = "networkx" }, @@ -123,7 +123,7 @@ provides-extras = ["agents", "mcp", "telemetry", "orchestration"] [[package]] name = "akms-failure-memory" -version = "0.3.0" +version = "0.3.1" source = { editable = "packages/akms_failure_memory" } dependencies = [ { name = "akms" }, @@ -145,7 +145,7 @@ provides-extras = ["dev"] [[package]] name = "akms-learn" -version = "0.3.0" +version = "0.3.1" source = { editable = "packages/akms_learn" } dependencies = [ { name = "akms" }, @@ -177,7 +177,7 @@ provides-extras = ["notebook", "html", "llm", "nlm", "dev"] [[package]] name = "akms-nodes-gen" -version = "0.3.0" +version = "0.3.1" source = { editable = "packages/akms_nodes_gen" } dependencies = [ { name = "fastapi" }, @@ -423,7 +423,7 @@ wheels = [ [[package]] name = "compmech-reference-pack" -version = "0.3.0" +version = "0.3.1" source = { editable = "packages/compmech_reference_pack" } dependencies = [ { name = "akms-learn" },