Repository navigation
Commit cdbf08d
docs(adr): ADR-0146 — Studio designs, Setup administers; one editor per metadata item; paired
<!-- claude-projects-attribution: {"github_login":"os-bill"} -->
_Requested by **Bill** · [project
thread](https://claude.ai/code/project/chan_016iMXWSZDzqWRWvWzdNo8wg?thread=cmsg_016iMXWSZDzqWRWvWzdNo8wgHk7ekKESwMTSQFaCgEU8bn)_
Part of #27356 (rows 12, 14, 19 — the decision record behind their
rulings). Fixes nothing.
## 维护者速读
- 改了什么:新增 ADR-0146(Proposed)+ 重新生成 `docs/adr/README.md` 索引。只有文档,不改代码、不改
schema、不带 changeset。
- 为什么改:你在决策线程 2026-10-30 10:04–10:28Z 的裁定——Studio 管全部元数据(设计 + 目录 + 源码 /
分层 / 历史 / 诊断),Setup 只做管理;每一项只有一个编辑处;只读包上就地做覆盖;开关与克隆放在 Studio 的流上;只读包也画「在
Studio 中查看」;每个基包配一个真实的 `<base>.customize` 包,Studio 里当一个界面看。
- 风险与回滚:ADR 合并前不生效;合并后也只是声明,实施按 Rollout 四期切卡。回滚 = 改 Status 行。
- 先看:D1–D5(边界、一个编辑处、配对包、开关在项上、入口),D6(明确不做:字段表 C),D7(搬家前 Setup
要补的三张管理页),Open questions 三条等你定。
- 两分钟验证:`node scripts/adr-index.mjs --check` 与 `node
scripts/check-adr-links.mjs` 都通过(本地已跑)。
- 需要你做的:审 D1–D7 与三条 Open questions;同意则 hand-merge(Prime Directive
#14)。合并后我按 Rollout 切卡。
## What changes
-
`docs/adr/0146-studio-designs-setup-administers-one-editor-per-item-paired-customize-package.md`
— new Proposed record. D1 Studio owns all metadata, Setup owns
administration; D2 one editor per item, in-place overlay editing on a
read-only package; D3 a paired real `<base>.customize` package shown as
one surface with its base; D4 the ADR-0126 §7 toggle and clone offered
on the item in Studio, Setup keeps the overview; D5 the app → Studio
bridge draws a browse entry for read-only packages (objectui#12615's
verb changes, the entry stays); D6 not done (no fields table — row 14
letter C; no Setup designer; no global customization scope); D7 the
Setup administration pages the move owes. Rollout in four phases; three
open questions for the maintainer.
- `docs/adr/README.md` — regenerated by `scripts/adr-index.mjs` (one new
row).
## Why
HotCRM's 18.2.0 browser pass (#27356 rows 12, 14, 19) found two
designers per flow or view with two save models, no Studio entry for a
code package's app, and delete / reset / toggle / clone reachable only
in Setup. The maintainer ruled the boundary in the project decision
thread rather than row by row; this record writes that ruling down once
so the rows and every later type are executed by rule. The maintainer's
words are quoted verbatim at each decision.
## Verification
- `node scripts/adr-index.mjs --check` → OK (index current, every record
parsed).
- `node scripts/check-adr-links.mjs` → 942 relative link destinations
resolve.
- No code, no tests, no changeset (docs-only, unpublished surface).
Clause-②: no
Metadata-protocol: none
## Human Minimum
- [x] 1. Schemas start as Zod; `packages/spec` holds no runtime logic.
(n/a — docs only)
- [x] 2. Every name I added uses the casing for its kind.
- [x] 3. No formatter ran; `pnpm lint` passes. (ADR checks run; no code
touched)
- [x] 4. One issue, one branch off an up-to-date `main`, one pull
request.
- [x] 5. A change that publishes carries a changeset, and both
declaration lines are filled in here and in the changeset. (nothing
publishes)
- [x] 6. `packages/spec` touched: its generated artifacts are
regenerated and committed. (not touched)
- [x] 7. No hand edits to `content/docs/references/`,
`packages/*/CHANGELOG.md` or `content/docs/releases/`.
- [x] 8. Title, body and comments are in English. (the 速读 block is the
project's maintainer-facing convention; the record itself is English
with the maintainer's verbatim quotes)
- [x] The *Before Submitting* list in CONTRIBUTING.md is done.
---
_Generated by [Claude
Code](https://claude.ai/code/session_01Utp6CaRN6wdrRyLKJSCMYH)_
---------
Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com><base>.customize package (#28045)1 parent 75b0c8b commit cdbf08d
2 files changed
Lines changed: 307 additions & 3 deletions
0 commit comments