Skip to content

Commit 4659547

Browse files
dmealingclaude
andcommitted
docs: 1.0.2 is the current release (npm 1.0.2, Maven Central 8.0.2)
The release docs checklist for the 1.0.2 cut. npm and Maven Central moved; PyPI and NuGet sat the cut out (no changed product file), so every PyPI / NuGet / C# / Python reference correctly stays at 1.0.1. - AGENTS.md (CLAUDE.md is a link to it): the version paragraph no longer says "all four moved together", the latest-release line describes 1.0.2, and it is refreshed 2026-09-11. - README.md: the TypeScript, Java and Kotlin rows. - docs/llms/llms.txt + llms-full.txt: the npm coordinate (Maven moved with the 8.0.2 bump). - docs/ports/typescript.md, docs/ports/java.md: install coordinates. - docs/RELEASING.md: three "currently" notes that were already stale before this cut (C# and PyPI said 1.0.0, Maven said 8.0.0). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01ApQWqotP1jaKs85XhKVXG4
1 parent afa979b commit 4659547

7 files changed

Lines changed: 21 additions & 22 deletions

File tree

‎AGENTS.md‎

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ The first four ship per-language today across the five ports (TS / C# / Java / P
1818

1919
## Status
2020

21-
_Last refreshed 2026-09-10._
21+
_Last refreshed 2026-09-11._
2222

2323
**1.0 gating — the quiet period is RETIRED (2026-09-06).** `docs/1.0-readiness.md` §G3 no
2424
longer asks for "one coordinated release with no metamodel-breaking change." It measured a
@@ -35,14 +35,13 @@ because a conformance corpus gates the ports against each other and never agains
3535
in ADR-0035 **Amendment 3**. Do not reintroduce a waiting gate in any form.
3636

3737

38-
**Where the versions are.** `latest` on every registry is **`1.0.1`** (npm / PyPI / NuGet) ·
39-
**`8.0.1`** (Maven Central, aligned `minor.patch` on its historical major `7` — the Maven
40-
major is always **npm major + 7**, so 1.0.1 is 8.0.1). All four moved together at 1.0.1
41-
because all four had a changed product file. **1.0 is CUT**: the `1.0.0-rc.5` through `rc.8`
38+
**Where the versions are.** `latest` is **`1.0.2`** on npm and **`8.0.2`** on Maven Central
39+
(the Maven major is always **npm major + 7**, so 1.0.2 is 8.0.2). PyPI and NuGet are at
40+
**`1.0.1`**: neither had a changed product file at 1.0.2, so both sat that cut out. **1.0 is CUT**: the `1.0.0-rc.5` through `rc.8`
4241
candidates are superseded, and npm's `next` tag was REPOINTED onto the release — not deleted,
4342
because `dist-tag rm` 403s for every token we hold (`docs/RELEASING.md` §4).
44-
`metamodelVersion` reads **`1.0`**, frozen — C4 landed and G4 shipped it, and 1.0.1 did not
45-
move it. Per-release detail lives in **`CHANGELOG.md`** — it is the log, and this file does
43+
`metamodelVersion` reads **`1.0`**, frozen — C4 landed and G4 shipped it, and neither 1.0.1 nor
44+
1.0.2 moved it. Per-release detail lives in **`CHANGELOG.md`** — it is the log, and this file does
4645
not duplicate it.
4746

4847
The npm surface is **14 `@metaobjectsdev/*` packages in full lockstep**; the two `angular`
@@ -75,7 +74,7 @@ PyPI has had no product change since `0.25.0` — nothing is broken.
7574

7675
**Key cross-language features shipped:** FR5 family (a/b/c/d/e + WARN envelope-shape — actionable loader errors per ADR-0009); FR-003 (Java RDB runtime persistence + projections; schema migrations are TS-only — the Java migration engine was removed); FR-006 (template.output parser-on-receipt codegen per ADR-0010 in all 5 ports); FR-008 + FR-009 (cross-port REST API contract + the nine filter operators); FR-018 (M:N relationship codegen in all 5 ports — entity navigation + idiomatic ORM wiring [Drizzle m2m / EF Core `UsingEntity` / Spring repo+JPA / Exposed / Pydantic+route as the SQLAlchemy-secondary equivalent] + REST traversal `GET /<source-plural>/{id}/<relation>` + Tier-2 docs, gated by the shared api-contract m2m corpus in both lanes + persistence-conformance; the TanStack M:N client hook is a deferred client-ergonomics follow-up); SP-H (field-subtype end-to-end hardening: every concrete `field.*` subtype write+read round-trips cross-port via the persistence `op: roundtrip` gate; cut `field.byte`/`field.short`/`field.class` non-functional stubs; cross-port filter-op reconciliation for uuid/currency); source v2 paradigm (ADR-0007); metadata-ktx Kotlin facade; per-target output directories (TS codegen).
7776

78-
**Latest release: 1.0.1** (2026-09-10) — npm / PyPI / NuGet `1.0.1`, Maven Central `8.0.1`. It completes 1.0 rather than extending it: `field.map` codegen finished on Java and C#, the nested-value-object validation hole that opened with it (#362) is closed on every write path, and `--prompts` converged the prompt-directory flag across the ports, closing the last open gate (D2) in `docs/1.0-readiness.md`.
77+
**Latest release: 1.0.2** (2026-09-11) — npm `1.0.2`, Maven Central `8.0.2`; PyPI and NuGet stay `1.0.1`. `meta migrate` now emits a column type change Postgres can apply (jsonb ↔ array, scalar ↔ array, cross-kind casts, a DEFAULT in the way), and generated JVM types (Kotlin entities and value objects, `codegen-spring`'s Java records) carry a builder, so a Java caller can set a subset of members.
7978

8079
See `spec/roadmap.md` for the active + planned work picture.
8180

‎README.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,9 @@ first-week wedge plan — and `meta init` picks up from there.
9393

9494
| Language | Status | Quickstart | Source |
9595
|---|---|---|---|
96-
| TypeScript | **npm `1.0.1`** — the `@metaobjectsdev/*` packages | [`docs/ports/typescript.md`](docs/ports/typescript.md) | [`server/typescript/`](server/typescript/) · [`client/web/`](client/web/) |
97-
| Java | **Maven Central `8.0.1`** (`com.metaobjects:*` — the JVM major is npm major + 7) — loader + OMDB + render + Maven plugin all shipped; full conformance green | [`docs/ports/java.md`](docs/ports/java.md) | [`server/java/`](server/java/) |
98-
| Kotlin | **Maven Central `8.0.1`** — codegen tier on top of Java: 14 generators (entity, Exposed table, relations, repository, payload, output-parser, output-prompt, render-helper, extractor, filter-allowlist, validator, Spring config, storedProc, Spring controller); 24 / 24 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/) |
96+
| TypeScript | **npm `1.0.2`** — the `@metaobjectsdev/*` packages | [`docs/ports/typescript.md`](docs/ports/typescript.md) | [`server/typescript/`](server/typescript/) · [`client/web/`](client/web/) |
97+
| Java | **Maven Central `8.0.2`** (`com.metaobjects:*` — the JVM major is npm major + 7) — loader + OMDB + render + Maven plugin all shipped; full conformance green | [`docs/ports/java.md`](docs/ports/java.md) | [`server/java/`](server/java/) |
98+
| Kotlin | **Maven Central `8.0.2`** — codegen tier on top of Java: 14 generators (entity, Exposed table, relations, repository, payload, output-parser, output-prompt, render-helper, extractor, filter-allowlist, validator, Spring config, storedProc, Spring controller); 24 / 24 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/) |
9999
| C# | **NuGet `1.0.1`** — loader + conformance + EF Core codegen + render engine + `dotnet meta` CLI all shipped | [`docs/ports/csharp.md`](docs/ports/csharp.md) | [`server/csharp/`](server/csharp/) |
100100
| Python | **PyPI `1.0.1`** — loader + conformance + render + entity-model codegen + ObjectManager runtime shipped; schema migrations are TS-owned (ADR-0015) | [`docs/ports/python.md`](docs/ports/python.md) | [`server/python/`](server/python/) |
101101

‎docs/RELEASING.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -535,7 +535,7 @@ How to publish the `MetaObjects*` C# packages to nuget.org. We use **Trusted Pub
535535

536536
## What gets published
537537

538-
Four packages, version-locked at the C# port version (currently `1.0.0`):
538+
Four packages, version-locked at the C# port version (currently `1.0.1`):
539539

540540
| Package | Contents |
541541
|---|---|
@@ -627,7 +627,7 @@ How to publish the **`metaobjects`** Python package to PyPI via **Trusted Publis
627627
## What gets published
628628

629629
One package, `metaobjects` (version in [`server/python/pyproject.toml`](../server/python/pyproject.toml),
630-
currently `1.0.0`), as an **sdist + a universal `py3-none-any` wheel** (pure Python).
630+
currently `1.0.1`), as an **sdist + a universal `py3-none-any` wheel** (pure Python).
631631

632632
## How we publish: Trusted Publishing (OIDC)
633633

@@ -684,7 +684,7 @@ subsequent releases keyless.)
684684

685685
The 14 `com.metaobjects:*` modules (15 artifacts, counting the parent POM) ship to **Maven Central via the Sonatype Central Portal**,
686686
versioned on its own major line — npm major + 7, so `7.x` while npm was `0.x` and `8.x` from the
687-
1.0 cut (currently `8.0.0`) — in the parent + module poms. Signed with the maintainer's GPG key.
687+
1.0 cut (currently `8.0.2`) — in the parent + module poms. Signed with the maintainer's GPG key.
688688

689689
## Procedure
690690

‎docs/llms/llms-full.txt‎

Lines changed: 2 additions & 2 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, prompt construction, and capability requirements across TypeScript, Java, Kotlin, C#, and Python. Apache 2.0. Shipping at `1.0.1` on npm and `8.0.2` on Maven Central.
3+
> A cross-language metadata standard for declaring typed entity models that drive code generation, runtime metadata access, drift detection, prompt construction, and capability requirements across TypeScript, Java, Kotlin, C#, and Python. Apache 2.0. Shipping at `1.0.2` on npm and `8.0.2` 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

@@ -106,7 +106,7 @@ What MetaObjects does not do is write the assertion. A generated stub is a place
106106

107107
| Language | Status | Notes |
108108
|---|---|---|
109-
| TypeScript | Reference implementation, npm `1.0.1` | All five pillars. 2500+ tests passing. Owns the canonical schema-migration toolchain used by every port (ADR-0015). Bun-first dev. |
109+
| TypeScript | Reference implementation, npm `1.0.2` | All five pillars. 2500+ tests passing. Owns the canonical schema-migration toolchain used by every port (ADR-0015). Bun-first dev. |
110110
| Java | Maven Central `8.0.2` | Spring REST + DTO + repository-interface codegen, OMDB runtime persistence (pure data-access) with Spring-tx. Fully green across all conformance corpora. |
111111
| Kotlin | Maven Central `8.0.2` | KotlinPoet codegen + Exposed runtime + `metadata-ktx` facade. Ships via the Java reactor. |
112112
| C# | NuGet `1.0.1` (.NET tool) | Loader + canonical serializer + EF Core + ASP.NET codegen + render/verify. `dotnet meta` tool. |

‎docs/llms/llms.txt‎

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

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

55
The metamodel is the durable spine; generated code is the disposable artifact. Substrate is local-first: typed metadata lives in your repo, and the generated code is idiomatic per-language output with **no proprietary runtime** — the entity/model tier is dependency-free, and the optional client, prompt-render, and runtime tiers are ordinary Apache-2.0 packages you could vendor or fork. If `@metaobjectsdev/*` (npm) or `com.metaobjects:*` (Maven) disappears tomorrow, you keep working code in every language.
66

@@ -44,9 +44,9 @@ MetaObjects pillars are capabilities of the same metadata spine, not separate pr
4444
- **Prompt construction** — treat LLM prompts as governed metadata instead of strings scattered across services. A typed payload declared as a projection (so payload bloat and token cost are a diff, not a mystery), external provider-resolved prompt text, and a logic-less Mustache engine that renders deterministically: snapshot-testable in CI, byte-stable so an exact-prefix prompt-cache hit doesn't break on a stray whitespace, and drift-checked at build time so a renamed field can't silently degrade a prompt. Conformance-gated, so the guarantee holds in every language port. Render + payload-VO codegen + `verify` + `template.output` parser-on-receipt (FR-006) + the output-format prompt fragment & tolerant `extract` parser (FR-010/FR-011) ship in all five ports today.
4545
- **Requirements and testing** — declare what the software is supposed to *do* in the same model as the entities, so a capability claim is checkable instead of prose. `requirement.functional` / `requirement.architectural` are registered vocabulary in all five ports, with the loader enforcing the closed `@status` enum, and `@implementedBy` is **resolved, not trusted**: it names a real member of the real model, so a claim whose implementation was renamed or deleted fails the build rather than going quietly stale. `meta verify` reports the ledger on every run — unresolved links, entities no claim covers, gaps recorded versus gaps nobody has ruled on — and lints the authoring; `meta docs` renders it for humans and for agents. **`requirementTests()`, which scaffolds a test stub per claim carrying the statement and counterexample in, is TypeScript-only** — the vocabulary and the `verify` checks are cross-port, the test scaffolding is not. Newest of the five; a project that declares no `requirement.*` nodes sees no change at all.
4646

47-
## Implementations (npm `1.0.1` / Maven Central `8.0.2`)
47+
## Implementations (npm `1.0.2` / Maven Central `8.0.2`)
4848

49-
- [TypeScript](https://github.com/metaobjectsdev/metaobjects/tree/main/server/typescript): the reference implementation. Published to npm at `1.0.1` across 14 `@metaobjectsdev/*` packages on the `latest` tag. 2500+ tests passing across the workspace. Bun-first dev workflow. Owns the canonical schema-migration toolchain used by every port (ADR-0015).
49+
- [TypeScript](https://github.com/metaobjectsdev/metaobjects/tree/main/server/typescript): the reference implementation. Published to npm at `1.0.2` across 14 `@metaobjectsdev/*` packages on the `latest` tag. 2500+ tests passing across the workspace. Bun-first dev workflow. Owns the canonical schema-migration toolchain used by every port (ADR-0015).
5050
- [Java](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java): 14 publishable Maven modules under `com.metaobjects:*` at `8.0.2` on Maven Central (15 artifacts with the parent POM). Spring REST + DTO + repository-interface codegen, OMDB runtime persistence (pure data-access) with Spring-tx, full FR-003 + FR-006 + FR-010/011 + FR-018 + FR5 family. Fully green across all conformance corpora.
5151
- [Kotlin](https://github.com/metaobjectsdev/metaobjects/tree/main/server/java/codegen-kotlin): a Kotlin codegen pipeline on KotlinPoet plus `metadata-ktx` — a Kotlin facade over the Java MetaObjects core. Ships via the Java reactor (`metaobjects-metadata-ktx`, `metaobjects-codegen-kotlin`). Persistence-conformance runs against Testcontainers Postgres through Exposed.
5252
- [C#](https://github.com/metaobjectsdev/metaobjects/tree/main/server/csharp): loader + canonical serializer + EF Core + ASP.NET codegen + render/verify. The `dotnet meta` tool ships `gen` and the codegen-side `verify` subverbs (`--codegen`, `--templates`); schema migration is Node `meta` only (ADR-0015).

‎docs/ports/java.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@ Prompt / template drift is still checked via the `metaobjects-render` `Verify` A
1212

1313
## Install
1414

15-
Set `${metaobjects.version}` to the current Maven Central release (`8.0.1`) — both
15+
Set `${metaobjects.version}` to the current Maven Central release (`8.0.2`) — both
1616
the dependency and plugin blocks below resolve it from one `<properties>` entry:
1717

1818
```xml
1919
<!-- pom.xml -->
2020
<properties>
21-
<metaobjects.version>8.0.1</metaobjects.version>
21+
<metaobjects.version>8.0.2</metaobjects.version>
2222
</properties>
2323

2424
<dependencies>

‎docs/ports/typescript.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# TypeScript port
22

3-
The reference implementation. Published to npm at `1.0.1` as 14
3+
The reference implementation. Published to npm at `1.0.2` as 14
44
`@metaobjectsdev/*` packages on the `latest` tag. Targets Node-compatible
55
runtimes; Bun-first dev workflow.
66

0 commit comments

Comments
 (0)