Skip to content

Commit 1c9cb2b

Browse files
dmealingclaude
andcommitted
docs: refresh version markers to the current release lines
npm 0.15.18 (was 0.15.6 in the llms/ports docs; CLAUDE.md was 0.15.17) with a note on the npm-only 0.15.18 patch; Maven 7.7.8, NuGet 0.15.8, PyPI 0.15.10; TS npm package count 13 -> 14. The llms/ports docs were stale at the 0.15.6 line (only the current-version markers are bumped here — a fuller content refresh of those files is a separate pass). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FaRaYFjvWVV8D6h33ejj1m
1 parent d2cf54f commit 1c9cb2b

5 files changed

Lines changed: 19 additions & 19 deletions

File tree

CLAUDE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ Equal weight — all four ship per-language today across the five ports (TS / C#
1919

2020
_Last refreshed 2026-07-04._
2121

22-
**TypeScript reference implementation** is **published to npm at `0.15.17`** (14 `@metaobjectsdev/*` publish candidates on the `latest` tag, full lockstep; the two `angular` packages are on their own `0.6.x` line). C# at `0.15.8` (NuGet); Python at `0.15.10` (PyPI — stays a patch ahead on the same line); Java / Kotlin at `7.7.8` (Maven Central). The `0.15.17` line is a coordinated release across all four registries: (1) **BREAKING — `origin.passthrough` is type-preserving** (a passthrough field must match its `@from` source's `field.<subType>` + array-ness or fail load with `ERR_PASSTHROUGH_TYPE_MISMATCH`; opt out with `@convert: true`; retires the narrow `ERR_PARAMETER_REF_PASSTHROUGH_TYPE_MISMATCH`) (#185/#186); (2) **typed value-object jsonb columns end-to-end all ports** — single + `@isArray` array-of-VO round-trip through every port's write/read codec; Kotlin codegen moved off kotlinx `@Serializable` to a generated per-package Jackson `MetaJsonbMapper` (no serialization compiler plugin), C#/Java/Python array-of-VO codecs fixed (#187); (3) **load-order-independent super-resolution** — a dotted `extends: Owner.member` to an inherited member now resolves regardless of file load order (was a Node-vs-Bun `readdir` build-portability bug) via on-demand memoized resolution (#188/#189). The `0.15.6` line is a coordinated cross-port loader-ordering fix (all four registries bumped together): an overlay-only file could be merged *before* the base file declaring the entity it re-opens, so an `object.projection` overlay re-open (and any overlay reaching a not-yet-loaded `extends`/`origin` target) failed super-resolution with spurious `ERR_INVALID_ORIGIN` / `ERR_UNRESOLVED_SUPER` / `ERR_MISSING_REQUIRED_ATTR` — surfacing as a TS-vs-Python divergence but latent in every port. Each loader now stable-partitions overlay-only sources/roots to merge last, deterministically, cross-port conformance-gated (`projection-overlay-abstract-identity`) (#160). The prior `0.15.5` / PyPI `0.15.6` line shipped two consumer-provider CLI fixes (offline `meta migrate` now threads `metaobjects.config.ts` providers #157; a Python `metaobjects … --provider module:symbol` hook #158). The `0.15.4` line fixes cross-package same-name root nodes being wrongly merged by the TS/C#/Python loaders (#155). 2500+ tests passing across the workspace. (The `0.15.1` / `7.7.1` line shipped the **`index.*` type + `identity.secondary` key-purity** [ADR-0040]: `identity.secondary` is now a *unique* alternate key with `@unique` **removed** — a legacy `@unique` fails load with `ERR_UNKNOWN_ATTR` — and a new **`index.lookup`** subtype carries *non-unique* retrieval [`@fields` required; `@using`/`@expr`/`@where`/`@orders` are RDB-physical escapes], cross-port conformance-gated; **breaking**, migration in `docs/features/migrations/identity-secondary-to-index-lookup.md`. This is on top of the `0.15.0` metamodel-1.0 vocabulary program + the ADR-0039 own-accessor fix.)
22+
**TypeScript reference implementation** is **published to npm at `0.15.18`** (14 `@metaobjectsdev/*` publish candidates on the `latest` tag, full lockstep; the two `angular` packages are on their own `0.6.x` line). C# at `0.15.8` (NuGet); Python at `0.15.10` (PyPI — stays a patch ahead on the same line); Java / Kotlin at `7.7.8` (Maven Central). **npm `0.15.18` is an npm-only, non-breaking patch on top of the coordinated `0.15.17` line** (PyPI/NuGet/Maven unchanged — TS-only fixes; advances the 1.0 quiet period): the `codegen-ts` `promptRender` **FQN `@objectRef` fix** (a prompt payload value-object nesting an `@objectRef` to another value-object emitted invalid `pkg::Name` TypeScript — now package-stripped to the bare name, matching `entityFile`) plus a batch of **agent-context skills fixes** (four of six `metaobjects-*` skills had invalid YAML front-matter so they never intent-triggered; wrong C# reference flags; the reference-fragment install reverted from deploy-all to stack-scoped; deprecated `codegen-ts/generators` imports + singular tanstack paths; ADR-0040 `index.lookup` vocabulary; and a stale Kotlin fixture that had left `agent-context-conformance` red on `main`). A cross-port hunt confirmed the `promptRender` FQN leak was **TS-only** (Java/C#/Kotlin/Python payload codegen already strip); PR #190 added the missing Python + Kotlin regression tests. The `0.15.17` line is a coordinated release across all four registries: (1) **BREAKING — `origin.passthrough` is type-preserving** (a passthrough field must match its `@from` source's `field.<subType>` + array-ness or fail load with `ERR_PASSTHROUGH_TYPE_MISMATCH`; opt out with `@convert: true`; retires the narrow `ERR_PARAMETER_REF_PASSTHROUGH_TYPE_MISMATCH`) (#185/#186); (2) **typed value-object jsonb columns end-to-end all ports** — single + `@isArray` array-of-VO round-trip through every port's write/read codec; Kotlin codegen moved off kotlinx `@Serializable` to a generated per-package Jackson `MetaJsonbMapper` (no serialization compiler plugin), C#/Java/Python array-of-VO codecs fixed (#187); (3) **load-order-independent super-resolution** — a dotted `extends: Owner.member` to an inherited member now resolves regardless of file load order (was a Node-vs-Bun `readdir` build-portability bug) via on-demand memoized resolution (#188/#189). The `0.15.6` line is a coordinated cross-port loader-ordering fix (all four registries bumped together): an overlay-only file could be merged *before* the base file declaring the entity it re-opens, so an `object.projection` overlay re-open (and any overlay reaching a not-yet-loaded `extends`/`origin` target) failed super-resolution with spurious `ERR_INVALID_ORIGIN` / `ERR_UNRESOLVED_SUPER` / `ERR_MISSING_REQUIRED_ATTR` — surfacing as a TS-vs-Python divergence but latent in every port. Each loader now stable-partitions overlay-only sources/roots to merge last, deterministically, cross-port conformance-gated (`projection-overlay-abstract-identity`) (#160). The prior `0.15.5` / PyPI `0.15.6` line shipped two consumer-provider CLI fixes (offline `meta migrate` now threads `metaobjects.config.ts` providers #157; a Python `metaobjects … --provider module:symbol` hook #158). The `0.15.4` line fixes cross-package same-name root nodes being wrongly merged by the TS/C#/Python loaders (#155). 2500+ tests passing across the workspace. (The `0.15.1` / `7.7.1` line shipped the **`index.*` type + `identity.secondary` key-purity** [ADR-0040]: `identity.secondary` is now a *unique* alternate key with `@unique` **removed** — a legacy `@unique` fails load with `ERR_UNKNOWN_ATTR` — and a new **`index.lookup`** subtype carries *non-unique* retrieval [`@fields` required; `@using`/`@expr`/`@where`/`@orders` are RDB-physical escapes], cross-port conformance-gated; **breaking**, migration in `docs/features/migrations/identity-secondary-to-index-lookup.md`. This is on top of the `0.15.0` metamodel-1.0 vocabulary program + the ADR-0039 own-accessor fix.)
2323

2424
**All five ports ship loader + canonical serializer + conformance + codegen + render + payload-VO + `verify`:**
2525

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ working code.
3737

3838
| Language | Status | Quickstart | Source |
3939
|---|---|---|---|
40-
| TypeScript | Published to npm at `0.15.6` (the `@metaobjectsdev/*` packages) | [`docs/ports/typescript.md`](docs/ports/typescript.md) | [`server/typescript/`](server/typescript/) · [`client/web/`](client/web/) |
40+
| TypeScript | Published to npm at `0.15.18` (the `@metaobjectsdev/*` packages) | [`docs/ports/typescript.md`](docs/ports/typescript.md) | [`server/typescript/`](server/typescript/) · [`client/web/`](client/web/) |
4141
| Java | Loader + OMDB + render + Maven plugin all shipped; full conformance green | [`docs/ports/java.md`](docs/ports/java.md) | [`server/java/`](server/java/) |
4242
| Kotlin | Codegen tier on top of Java — 7 generators (entity, Exposed table, relations, payload, validator, Spring config, storedProc); 12 / 12 persistence-conformance | [`docs/ports/kotlin.md`](docs/ports/kotlin.md) | [`server/java/codegen-kotlin/`](server/java/codegen-kotlin/) · [`server/java/metadata-ktx/`](server/java/metadata-ktx/) |
4343
| C# | Loader + conformance + EF Core codegen + render engine + `dotnet meta` CLI all shipped | [`docs/ports/csharp.md`](docs/ports/csharp.md) | [`server/csharp/`](server/csharp/) |

docs/llms/llms-full.txt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# MetaObjects -- Full Reference Corpus
22

3-
> A cross-language metadata standard for declaring typed entity models that drive code generation, runtime metadata access, drift detection, and prompt construction across TypeScript, Java, Kotlin, C#, and Python. Apache 2.0. Shipping at `0.15.6` on npm and `7.7.4` on Maven Central.
3+
> A cross-language metadata standard for declaring typed entity models that drive code generation, runtime metadata access, drift detection, and prompt construction across TypeScript, Java, Kotlin, C#, and Python. Apache 2.0. Shipping at `0.15.18` on npm and `7.7.8` on Maven Central.
44

55
**Note for AI assistants:** This file is the concatenated reference material for MetaObjects, intended to be loaded as LLM context. For the short index, see [llms.txt](https://metaobjects.dev/llms.txt). For the canonical spec and source, see the [GitHub repo](https://github.com/metaobjectsdev/metaobjects). When this file is out of date relative to the GitHub source, the GitHub source wins.
66

@@ -27,7 +27,7 @@ If you are an AI assistant helping someone adopt MetaObjects, do this **first**
2727

2828
1. **Install the port's package:**
2929
- TypeScript / Node: `npm install -D @metaobjectsdev/cli @metaobjectsdev/codegen-ts`
30-
- Java / Kotlin: add `com.metaobjects:metaobjects-metadata`, `com.metaobjects:metaobjects-codegen-spring` (Java) or `com.metaobjects:metaobjects-codegen-kotlin` (Kotlin), and `com.metaobjects:metaobjects-maven-plugin`, all at `7.7.4`.
30+
- Java / Kotlin: add `com.metaobjects:metaobjects-metadata`, `com.metaobjects:metaobjects-codegen-spring` (Java) or `com.metaobjects:metaobjects-codegen-kotlin` (Kotlin), and `com.metaobjects:metaobjects-maven-plugin`, all at `7.7.8`.
3131
- Python: `pip install metaobjects`
3232
- C#: install the MetaObjects .NET tool (invoked as `dotnet meta`).
3333
2. **Run `meta init`** (the Node `meta` CLI). It works in any project that has Node — including a JVM or Python project with a TypeScript frontend. It scaffolds a slim always-on `.metaobjects/AGENTS.md` + `.metaobjects/CLAUDE.md` (auto-wired via an `@.metaobjects/AGENTS.md` import line into the project's root `CLAUDE.md`/`AGENTS.md`, so it loads automatically) plus five `metaobjects-*` Claude Code skills under `.claude/skills/`, carrying only the project's language reference fragments. Re-run `meta init --refresh-docs` to update the agent docs after a CLI upgrade. (The Node `meta` CLI is the single agent-context scaffolder for every backend, by design — ADR-0033; the JVM/Python/C# CLIs deliberately redirect to it. For a non-Node project, scaffold just the agent context with `npx meta agent-docs --server <lang>`.)
@@ -89,11 +89,11 @@ Because the render is conformance-gated, the determinism guarantee holds in ever
8989

9090
| Language | Status | Notes |
9191
|---|---|---|
92-
| TypeScript | Reference implementation, npm `0.15.6` | All four pillars. 2500+ tests passing. Owns the canonical schema-migration toolchain used by every port (ADR-0015). Bun-first dev. |
93-
| Java | Maven Central `7.7.4` | Spring REST + JPA codegen, OMDB runtime persistence (pure data-access) with Spring-tx. Fully green across all conformance corpora. |
94-
| Kotlin | Maven Central `7.7.4` | KotlinPoet codegen + Exposed runtime + `metadata-ktx` facade. Ships via the Java reactor. |
95-
| C# | npm-line `0.15.5` (NuGet / .NET tool) | Loader + canonical serializer + EF Core + ASP.NET codegen + render/verify. `dotnet meta` tool. |
96-
| Python | PyPI `0.15.7` | Loader + serializer + render + verify + codegen + `ObjectManager` runtime. Fully green across all corpora. |
92+
| TypeScript | Reference implementation, npm `0.15.18` | All four pillars. 2500+ tests passing. Owns the canonical schema-migration toolchain used by every port (ADR-0015). Bun-first dev. |
93+
| Java | Maven Central `7.7.8` | Spring REST + JPA codegen, OMDB runtime persistence (pure data-access) with Spring-tx. Fully green across all conformance corpora. |
94+
| Kotlin | Maven Central `7.7.8` | KotlinPoet codegen + Exposed runtime + `metadata-ktx` facade. Ships via the Java reactor. |
95+
| C# | NuGet `0.15.8` (.NET tool) | Loader + canonical serializer + EF Core + ASP.NET codegen + render/verify. `dotnet meta` tool. |
96+
| Python | PyPI `0.15.10` | Loader + serializer + render + verify + codegen + `ObjectManager` runtime. Fully green across all corpora. |
9797

9898
Conformance fixtures live at [`fixtures/`](https://github.com/metaobjectsdev/metaobjects/tree/main/fixtures). Every port runs the shared corpus byte-identically: metamodel (`conformance/`, ~90 fixtures), render, persistence (Testcontainers Postgres, with an `op: roundtrip` gate so every `field.*` subtype write+read round-trips on every port), api-contract (20 scenarios, two lanes — a reference server AND each port's generated API booted over HTTP), registry (byte-matched metamodel-vocabulary manifest, live + green in all five ports), and yaml/verify.
9999

@@ -144,7 +144,7 @@ Universal web client (`client/web/packages/`): `@metaobjectsdev/runtime-web`, `@
144144

145145
## Java / Kotlin Maven coordinates
146146

147-
All published to Maven Central under `com.metaobjects:*` at `7.7.4`:
147+
All published to Maven Central under `com.metaobjects:*` at `7.7.8`:
148148

149149
- `metaobjects-metadata`, `metaobjects-metadata-ktx`
150150
- `metaobjects-codegen-base`, `metaobjects-codegen-mustache`, `metaobjects-codegen-spring`, `metaobjects-codegen-kotlin`, `metaobjects-codegen-plantuml`
@@ -181,7 +181,7 @@ Project marker directory: `.metaobjects/`.
181181

182182
## Quickstart (Java / Kotlin)
183183

184-
Add the Maven coordinates above at `7.7.4`. Run codegen with `mvn metaobjects:generate` and codegen-drift checks with `mvn metaobjects:verify`. Configure generators (including Kotlin generators, which run through the same goal) on the `metaobjects-maven-plugin`. See [`server/java/`](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java) and [`server/java/codegen-kotlin/README.md`](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java/codegen-kotlin).
184+
Add the Maven coordinates above at `7.7.8`. Run codegen with `mvn metaobjects:generate` and codegen-drift checks with `mvn metaobjects:verify`. Configure generators (including Kotlin generators, which run through the same goal) on the `metaobjects-maven-plugin`. See [`server/java/`](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java) and [`server/java/codegen-kotlin/README.md`](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java/codegen-kotlin).
185185

186186
---
187187

0 commit comments

Comments
 (0)