Skip to content

Commit eeb2311

Browse files
SisyphusZhengDevBot
andcommitted
docs(v0.44): write beta.1 prerelease release-truth copy and dist-tag-aware anchor generator (#1150) (#1283)
The v0.44.0-beta.1 prepare (e5cd55c) composed bumped registry anchors with stable-era prose, claiming the beta published under dist-tag latest; npm latest stays on stable 0.43.3. Head anchor zones still named v0.43.3, the www roadmap current-line entry still carried the superseded Alpha.10 theme, and NEXT_PUBLIC_PRERELEASE equalled the published line, tripping the #813 in-flight binding once publish evidence completes. - docs: state the prerelease truth everywhere governed: v0.44.0-beta.1 under dist-tag beta, latest = 0.43.3 stable; Alpha.10 closed (verifier PASS, #1150); next stage Beta.2 per ADR-0151. - www roadmap: current-line entry (en+zh) names the Beta.1 theme 'framework qualification + governance freeze'; getting-started no longer calls the beta the stable latest line. - generator: buildVersionAnchorReplacements rewrites the registry-line dist-tag annotation on prerelease bumps (annotation-aware rules precede the generic ones), so future prepares emit prerelease-correct copy. - constants: NEXT_PUBLIC_PRERELEASE=v0.44.0-beta.2; ACTIVE_INTERNAL_CHECKPOINT records the Alpha checkpoint train closure. Unblocks PR #1282. Co-authored-by: DevBot <devbot@openelement.dev>
1 parent aefc7f9 commit eeb2311

12 files changed

Lines changed: 163 additions & 66 deletions

File tree

README.md

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,10 @@ Standard Custom Elements are the durable component contract; JSX is the
77
authoring syntax; Declarative Shadow DOM is the default server representation;
88
and interactive regions activate selectively.
99

10-
The published stable line is `v0.43.3`. Work on `dev` is at Alpha.10, the
11-
internal Truth Closure checkpoint (unpublished; umbrella issue #1155) that
12-
hard-blocks Beta.1. Alpha checkpoints are internal work identifiers, not
13-
package releases. The first intended public v0.44 prerelease is Beta.1
14-
(`v0.44.0-beta.1`).
10+
The published stable line remains the 0.43 series on npm `latest`.
11+
`v0.44.0-beta.1` is the first public v0.44 prerelease — Beta.1, Framework
12+
Qualification + Governance Freeze (ADR-0151) — published under dist-tag
13+
`beta`. The next stage is Beta.2 (`v0.44.0-beta.2`).
1514
The `1.0.0` target remains unscheduled and requires separate evidence and approval.
1615

1716
```text
@@ -20,7 +19,7 @@ current proven scope = static-first applications with fullstack output paths
2019
```
2120

2221
Source package line: `0.44.0-beta.1` (`v0.44.0-beta.1`).
23-
npm registry line: `v0.44.0-beta.1` (dist-tag `latest`), published as stable `0.43.3`.
22+
npm registry line: `v0.44.0-beta.1` (prerelease, dist-tag `beta`); npm `latest` remains the stable `0.43.3` line.
2423

2524
## Why
2625

README.zh.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
长期保存的应用组件模型;JSX 与 Basic Element 是作者层;Declarative Shadow
88
DOM 是默认服务端表示;交互区域按需升级。
99

10-
源码包行为 `0.44.0-beta.1``v0.44.0-beta.1`)——ADR-0119 范围化接口冻结下的
11-
在途五包源码行;已放弃的 beta 命名不再是当前版本线
12-
npm registry 行为 `v0.44.0-beta.1`——已发布的五包版本(dist-tag `latest`);registry 行可与
13-
源码行存在 patch 级滞后
10+
源码包行为 `0.44.0-beta.1``v0.44.0-beta.1`)——首个公开 v0.44 预发布线
11+
(Beta.1:框架资格验证 + 治理冻结,ADR-0151)
12+
npm registry 行为 `v0.44.0-beta.1`——预发布版本(dist-tag `beta`);npm `latest` 仍为
13+
已发布的稳定 0.43 线
1414

1515
## 当前产品
1616

docs/current/VERSION_PLAN.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,26 @@
22

33
OpenElement = Web Components-native fullstack application framework.
44

5-
The published stable line remains `v0.43.3`. The active target is the internal,
6-
unpublished Alpha.10 Truth Closure checkpoint tracked by umbrella issue #1155.
5+
The published stable line remains the 0.43 series on npm `latest`.
6+
`v0.44.0-beta.1` is published as the first public v0.44 prerelease (Beta.1 —
7+
Framework Qualification + Governance Freeze) under dist-tag `beta`. The next
8+
stage is Beta.2 (`v0.44.0-beta.2`) per ADR-0151.
79

810
ADR-0147 defines the Alpha workspace train, which is complete through Alpha.9.
911
ADR-0151 retopologizes the release train and supersedes the ADR-0149 five-Beta
1012
mapping; the remainder of ADR-0149 and ADR-0150 that is not about Beta topology
1113
is unaffected. ADR-0146 remains the release-role authority and activates at
1214
Beta.1.
1315

14-
- Repository package line: `v0.43.3`
15-
- npm registry line: `v0.43.3`
16+
- Repository package line: `v0.44.0-beta.1`
17+
- npm registry line: `v0.44.0-beta.1` (prerelease, dist-tag `beta`; npm `latest` remains the stable 0.43 line)
1618
- Current source package line: `v0.44.0-beta.1`
1719
- Current npm registry line: `v0.44.0-beta.1`
1820
- Latest landed train: `v0.44.0-beta.1`
19-
- Active internal target: Alpha.10 Truth Closure (internal, unpublished; umbrella #1155)
21+
- Active internal target: none — internal Alpha checkpoints closed at Alpha.10 (verifier PASS, #1150); the active line is the public Beta train (ADR-0151)
2022
- Active release target: `v0.44.0-beta.1`
21-
- Next planned public train: `v0.44.0-beta.1`
22-
- Next public prerelease: `v0.44.0-beta.1`
23+
- Next planned public train: `v0.44.0-beta.2`
24+
- Next public prerelease: `v0.44.0-beta.2`
2325

2426
The coherent five-package distribution contract follows
2527
[PACKAGE_SURFACE.md](./PACKAGE_SURFACE.md) and ADR-0114. The supported server

docs/governance/PROJECT_WORKFLOW.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,16 @@ the implementation, and the gates that prove the claim.
1414
Current execution anchor:
1515

1616
- source package line `v0.44.0-beta.1`;
17-
- npm registry line `v0.44.0-beta.1` (published);
17+
- npm registry line `v0.44.0-beta.1` (prerelease, dist-tag `beta`; npm `latest`
18+
remains the stable 0.43 line);
1819
- active target `v0.44.0-beta.1`;
19-
- current internal checkpoint: Alpha.10 (Truth Closure, unpublished; umbrella
20-
issue #1155);
21-
- next public prerelease: `v0.44.0-beta.1`.
20+
- current internal checkpoint: none — the internal Alpha checkpoint train closed
21+
at Alpha.10 (Truth Closure; verifier PASS, #1150);
22+
- next public prerelease: `v0.44.0-beta.2`.
2223

2324
ADR-0143 explicitly reopens the minor train after the 0.43 maintenance freeze.
2425
The compiled OpenElement execution order — internal Alpha workspaces (complete
25-
through Alpha.9) → Alpha.10 truth closure → Beta.1 framework qualification and
26+
through Alpha.10) → Beta.1 framework qualification and
2627
governance freeze → Beta.2 productization and governance offload → Beta.3 final
2728
hardening, formal benchmark and real SaaS qualification → RC1 frozen candidate
2829
and soak → Stable/1.0 decision on Beta.3 evidence — lives in

docs/roadmap/ROADMAP.md

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,41 +3,41 @@
33
OpenElement = Web Components-native fullstack application framework.
44

55
Source package line: `v0.44.0-beta.1`.
6-
npm registry line: `v0.44.0-beta.1` (dist-tag `latest`).
7-
`0.43.3` is both the current source package line and the npm `latest` line.
6+
npm registry line: `v0.44.0-beta.1` (prerelease, dist-tag `beta`).
7+
The npm `latest` dist-tag remains on the published stable 0.43 line.
88
Active execution target: `v0.44.0-beta.1`.
99
Latest landed train: `v0.44.0-beta.1`.
1010
Next planned train: `v0.44.0-beta.2`.
11-
Next public prerelease: `v0.44.0-beta.1`.
11+
Next public prerelease: `v0.44.0-beta.2`.
1212
Long-term stable product target: `1.0.0` (unscheduled).
1313

1414
Execution follows
1515
[PROJECT_WORKFLOW.md](../governance/PROJECT_WORKFLOW.md).
1616

17-
## Current: internal Alpha.10 truth closure
17+
## Current: Beta.1 framework qualification + governance freeze
1818

19-
The internal Alpha workspace train is complete through Alpha.9. Alpha.0 supplied
19+
The internal Alpha workspace train is complete through Alpha.10. Alpha.0 supplied
2020
the accepted compiler proof, exact-SHA CI foundation and minimum history safety;
2121
alpha.1 through alpha.7 ran as independent parallel workspaces; Alpha.8 was the
2222
sole aggregation workspace; Alpha.9 closed semantic convergence before Beta.1
23-
admission.
23+
admission; Alpha.10 (Truth Closure, umbrella issue #1155, work issues #1209
24+
through #1220) closed with verifier PASS at #1150 and admitted Beta.1.
2425

25-
The current internal checkpoint is Alpha.10 (Truth Closure), tracked by umbrella
26-
issue #1155 with work issues #1209 through #1220. Alpha.10 is a hard blocker for
27-
Beta.1 and publishes nothing: no tag, npm publication, GitHub Release, dist-tag
28-
change or `main` promotion.
26+
Alpha identifiers were internal work identifiers, not package releases, and the
27+
three-role loop was off for all Alpha work.
2928

30-
Alpha identifiers are internal work identifiers, not package releases. The
31-
three-role loop is off for all Alpha work.
29+
Beta.1 (`v0.44.0-beta.1`) is published as the first public v0.44 prerelease
30+
under dist-tag `beta`; npm `latest` stays on the stable 0.43 line. The next
31+
stage is Beta.2 (`v0.44.0-beta.2`).
3232

3333
## Release train
3434

3535
ADR-0151 defines the canonical train and supersedes the ADR-0149 five-Beta
3636
mapping. Each phase answers one question:
3737

3838
1. Beta.1 — Framework Qualification + Governance Freeze: is the framework itself
39-
trustworthy? First intended public v0.44 prerelease (`v0.44.0-beta.1`); the
40-
three-role release loop activates here.
39+
trustworthy? First public v0.44 prerelease (`v0.44.0-beta.1`), published
40+
under dist-tag `beta`; the three-role release loop activated here.
4141
2. Beta.2 — Productization + Governance Offload: can external users really use
4242
and maintain it?
4343
3. Beta.3 — Final Hardening + Formal Benchmark + Real SaaS Qualification: can

docs/status/STATUS.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,14 @@
33
Updated: 2026-09-02
44

55
- Repository package line: `v0.44.0-beta.1`
6-
- npm registry line: `v0.44.0-beta.1` (dist-tag `latest`)
6+
- npm registry line: `v0.44.0-beta.1` (prerelease, dist-tag `beta`)
77
- Latest landed train: `v0.44.0-beta.1`
88
- Active release target: `v0.44.0-beta.1`
99
- Next planned train: `v0.44.0-beta.2`
10-
- Next public prerelease: `v0.44.0-beta.1`
10+
- Next public prerelease: `v0.44.0-beta.2`
1111
- Published stable package line: `v0.43.3` on npm `latest`
12-
- Current development mode: internal Alpha.10 Truth Closure checkpoint
13-
(unpublished; umbrella issue #1155)
12+
- Current development mode: public Beta train — Beta.1 published as a
13+
prerelease under dist-tag `beta`; next stage Beta.2 (ADR-0151)
1414
- Minimum branch rules: active on `dev` and `main` through ruleset `21775463`
1515
- Deferred hardening: #1192 Beta.3 with #1156 #1187 #1188 #1189
1616
- Long-term `1.0.0` target: unscheduled
@@ -30,15 +30,15 @@ PR #1195 landed the corrected workspace train at exact SHA
3030
collaboration contract and executable ownership map and is the alpha.1-alpha.7 common
3131
base.
3232

33-
Alpha.1 through Alpha.9 are complete: the parallel workspaces, the Alpha.8
34-
integration and the ADR-0150 Alpha.9 semantic convergence all closed with their
35-
recorded evidence. The current internal checkpoint is Alpha.10 (Truth Closure),
36-
governed by ADR-0151 through umbrella issue #1155 and its issue tree #1209
37-
through #1220. Alpha.10 is a hard blocker for Beta.1 and is internal-only: no
38-
tag, npm publication, GitHub Release, dist-tag change, `main` promotion or
39-
external release claim.
33+
Alpha.1 through Alpha.10 are complete: the parallel workspaces, the Alpha.8
34+
integration, the ADR-0150 Alpha.9 semantic convergence and the Alpha.10 Truth
35+
Closure checkpoint (umbrella issue #1155, issue tree #1209 through #1220,
36+
verifier PASS at #1150) all closed with their recorded evidence. Alpha
37+
checkpoints were internal-only: no tag, npm publication, GitHub Release,
38+
dist-tag change, `main` promotion or external release claim.
4039

41-
Beta.1 is the first intended public v0.44 prerelease and the first phase that
42-
activates the thinker/implementer/fresh-verifier release loop. The npm `latest`
40+
Beta.1 (`v0.44.0-beta.1`) is published as the first public v0.44 prerelease
41+
under dist-tag `beta` — the first phase of the
42+
thinker/implementer/fresh-verifier release loop. The npm `latest`
4343
dist-tag stays stable at
4444
`0.43.3` until an explicitly approved 0.44 Stable release.

tools/autoflow/__tests__/release.test.ts

Lines changed: 64 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,67 @@ Deno.test('buildVersionAnchorReplacements: registry anchors cover current and la
180180
}
181181
});
182182

183+
Deno.test('buildVersionAnchorReplacements: prerelease bumps rewrite the registry dist-tag annotation (#1282)', () => {
184+
// The v0.43.3 → v0.44.0-beta.1 prepare composed the bumped registry anchor
185+
// with the stale "(dist-tag `latest`)" suffix, claiming the beta published
186+
// under latest. Prereleases publish under --tag alpha|beta|rc only
187+
// (npmPublishTag in tools/publish-npm.ts) and `latest` stays on the stable
188+
// line, so the bump must rewrite the annotation together with the version.
189+
const version = '9.9.9-beta.1';
190+
const tag = `v${version}`;
191+
const reps = buildVersionAnchorReplacements(version);
192+
193+
for (const path of ['README.md', 'docs/roadmap/ROADMAP.md', 'docs/status/STATUS.md']) {
194+
for (const fromTag of [PACKAGE_VERSION_TAG, PREVIOUS_PACKAGE_VERSION_TAG]) {
195+
const from = `npm registry line: \`${fromTag}\` (dist-tag \`latest\`)`;
196+
const to = `npm registry line: \`${tag}\` (prerelease, dist-tag \`beta\`)`;
197+
assert(
198+
reps.some(([p, f, t]) => p === path && f === from && t === to),
199+
`missing prerelease dist-tag replacement ${path}: ${from} -> ${to}`,
200+
);
201+
}
202+
}
203+
// README.zh.md carries the same annotation in its own prose shape.
204+
for (const fromTag of [PACKAGE_VERSION_TAG, PREVIOUS_PACKAGE_VERSION_TAG]) {
205+
const from = `npm registry 行为 \`${fromTag}\`——已发布的五包版本(dist-tag \`latest\`)`;
206+
const to = `npm registry 行为 \`${tag}\`——预发布版本(dist-tag \`beta\`)`;
207+
assert(
208+
reps.some(([p, f, t]) => p === 'README.zh.md' && f === from && t === to),
209+
`missing prerelease dist-tag replacement README.zh.md: ${from} -> ${to}`,
210+
);
211+
}
212+
213+
// The annotation-aware rules must precede the generic registry-line rules:
214+
// updateCurrentVersionAnchors applies rules in order, and the generic rule
215+
// would otherwise consume the anchor first and strand the stale suffix.
216+
const specificIndex = reps.findIndex(([p, f]) =>
217+
p === 'README.md' && f === `npm registry line: \`${PACKAGE_VERSION_TAG}\` (dist-tag \`latest\`)`
218+
);
219+
const genericIndex = reps.findIndex(([p, f]) =>
220+
p === 'README.md' && f === `npm registry line: \`${PACKAGE_VERSION_TAG}\``
221+
);
222+
assert(specificIndex !== -1 && genericIndex !== -1 && specificIndex < genericIndex);
223+
224+
// The dist-tag name follows the prerelease channel (alpha|beta|rc).
225+
assert(
226+
buildVersionAnchorReplacements('9.9.9-alpha.2').some(([, , t]) =>
227+
t.includes('(prerelease, dist-tag `alpha`)')
228+
),
229+
);
230+
assert(
231+
buildVersionAnchorReplacements('9.9.9-rc.1').some(([, , t]) =>
232+
t.includes('(prerelease, dist-tag `rc`)')
233+
),
234+
);
235+
236+
// Stable targets never touch the dist-tag annotation: a stable cut IS the
237+
// latest line, and the rule surface stays at the exact 40 entries.
238+
assertFalse(
239+
buildVersionAnchorReplacements('9.9.9').some(([, f]) => f.includes('dist-tag')),
240+
);
241+
assertEquals(buildVersionAnchorReplacements('9.9.9').length, 40);
242+
});
243+
183244
Deno.test('buildVersionAnchorReplacements: every target carries the previous or current line', () => {
184245
// Coverage gate: every file that is a replacement target must still carry
185246
// the previous package line (or its tag), so the bump has something to
@@ -197,9 +258,10 @@ Deno.test('buildVersionAnchorReplacements: every target carries the previous or
197258
}
198259
// README carries one head package-line anchor, the currency claim the
199260
// strategic-docs gate enforces ("convergence is published as"), and the
200-
// registry line in both accepted states (#754).
261+
// registry line in both accepted states (#754). A prerelease source line
262+
// adds the two dist-tag-correcting registry forms (#1282).
201263
const readmeReps = reps.filter(([p]) => p === 'README.md');
202-
assertEquals(readmeReps.length, 4);
264+
assertEquals(readmeReps.length, PACKAGE_VERSION.includes('-') ? 6 : 4);
203265
});
204266

205267
Deno.test('createReleasePlan: rejects shell metacharacters in approval ids', () => {

tools/autoflow/version-anchors.ts

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -418,7 +418,37 @@ export function buildVersionAnchorReplacements(
418418
.replaceAll('$PV', pv)
419419
.replaceAll('$TAG', tag)
420420
.replaceAll('$VER', version);
421-
return raw.map(([path, from, to]) => [path, resolve(from), resolve(to)]);
421+
// Prerelease bumps (#1282): the generic registry-line rules advance the
422+
// anchor version but leave the stable-era "(dist-tag `latest`)" annotation
423+
// untouched, composing a false claim — prereleases publish under
424+
// --tag alpha|beta|rc only (npmPublishTag in tools/publish-npm.ts) and
425+
// `latest` stays on the stable line. Rewrite the annotation together with
426+
// the version. These forms must precede the generic registry-line rules:
427+
// updateCurrentVersionAnchors applies rules in order and the generic rule
428+
// would otherwise consume the anchor first, stranding the stale suffix.
429+
// Docs whose registry line carries no annotation (VERSION_PLAN,
430+
// PROJECT_WORKFLOW) need no rule — the generic replacement is correct.
431+
const prereleaseDistTag = version.match(/-(alpha|beta|rc)\.\d+$/u)?.[1];
432+
const prereleaseRules: Array<[string, string, string]> = [];
433+
if (prereleaseDistTag !== undefined) {
434+
for (const path of ['README.md', 'docs/roadmap/ROADMAP.md', 'docs/status/STATUS.md']) {
435+
for (const fromTag of ['$PVT', '$PREV_PVT']) {
436+
prereleaseRules.push([
437+
path,
438+
`npm registry line: \`${fromTag}\` (dist-tag \`latest\`)`,
439+
`npm registry line: \`$TAG\` (prerelease, dist-tag \`${prereleaseDistTag}\`)`,
440+
]);
441+
}
442+
}
443+
for (const fromTag of ['$PVT', '$PREV_PVT']) {
444+
prereleaseRules.push([
445+
'README.zh.md',
446+
`npm registry 行为 \`${fromTag}\`——已发布的五包版本(dist-tag \`latest\`)`,
447+
`npm registry 行为 \`$TAG\`——预发布版本(dist-tag \`${prereleaseDistTag}\`)`,
448+
]);
449+
}
450+
}
451+
return [...prereleaseRules, ...raw].map(([path, from, to]) => [path, resolve(from), resolve(to)]);
422452
}
423453

424454
export async function updateCurrentVersionAnchors(version: string): Promise<void> {

tools/project-constants.ts

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,13 @@ export const PACKAGE_VERSION_TAG = `v${PACKAGE_VERSION}`;
99
export const LATEST_LANDED_TRAIN = 'v0.44.0-beta.1';
1010
export const ACTIVE_EXECUTION_VERSION = 'v0.44.0-beta.1';
1111
export const NEXT_EXECUTION_VERSION = 'v0.44.0-beta.2';
12-
// Internal v0.44 admission checkpoints are not package versions. Keep them
13-
// separate from release-bump constants so Alpha.10 cannot be interpreted as a
14-
// publishable npm/tag target.
12+
// Internal v0.44 admission checkpoints are not package versions. The Alpha
13+
// checkpoint train closed at Alpha.10 (verifier PASS, #1150); with Beta.1
14+
// published as a public prerelease there is no active internal checkpoint —
15+
// the value records that closure so the VERSION_PLAN anchor stays honest.
1516
export const ACTIVE_INTERNAL_CHECKPOINT =
16-
'Alpha.10 Truth Closure (internal, unpublished; umbrella #1155)';
17-
export const NEXT_PUBLIC_PRERELEASE = 'v0.44.0-beta.1';
17+
'none — internal Alpha checkpoints closed at Alpha.10 (verifier PASS, #1150); the active line is the public Beta train (ADR-0151)';
18+
export const NEXT_PUBLIC_PRERELEASE = 'v0.44.0-beta.2';
1819
export const RETAINED_PACKAGE_NAMES = Object.freeze([
1920
'@openelement/adapter-vite',
2021
'@openelement/app',

www/app/routes/roadmap.tsx

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,12 @@ const entries: Record<'en' | 'zh', TimelineEntry[]> = {
3535
en: [
3636
{
3737
version: 'v0.44.0-beta.1',
38-
theme: 'renderer-owned light DOM hydration — robustness audit closure',
38+
theme: 'framework qualification + governance freeze',
3939
copy:
40-
'The published stable line remains available while 0.44 is prerelease. It proves Universal WC SSR, in-place light-DOM activation and the application delivery baseline that the compiled architecture must preserve.',
41-
state: 'stable',
40+
'The first public prerelease of the compiled line, published under dist-tag beta while the stable 0.43 line keeps npm latest. It qualifies the framework itself — compiler, page-route SSR bound to the Part Program, delivery gates — under a frozen governance envelope (ADR-0151).',
41+
state: 'next',
4242
stamp: 'CURRENT',
43+
status: 'prerelease',
4344
},
4445
{
4546
version: 'v0.44 alpha',
@@ -85,12 +86,13 @@ const entries: Record<'en' | 'zh', TimelineEntry[]> = {
8586
],
8687
zh: [
8788
{
88-
version: 'v0.43.3',
89-
theme: '渲染方所有的 light DOM 水合 — 鲁棒性审计闭环',
89+
version: 'v0.44.0-beta.1',
90+
theme: '框架资格验证 + 治理冻结',
9091
copy:
91-
'已发布稳定线会在 0.44 预发布期间继续可用。它证明了 Universal WC SSR、light DOM 原地激活与应用交付基线;新的编译架构必须保持这些能力。',
92-
state: 'stable',
92+
'编译型线路的首个公开预发布版本,以 dist-tag beta 发布,npm latest 仍由稳定 0.43 线保持。它在冻结的治理边界内验证框架本身——编译器、绑定到 Part Program 的页面路由 SSR 与交付门禁(ADR-0151)。',
93+
state: 'next',
9394
stamp: 'CURRENT',
95+
status: '预发布',
9496
},
9597
{
9698
version: 'v0.44 alpha',

0 commit comments

Comments
 (0)