Repository navigation
docs(skills): a list view edits in place by default; a read-only list declares editInline: false (#22605, skill half) - #22630
Conversation
…y list declares editInline: false
One paragraph under "Configuring a List View" in objectstack-ui, for the maintainer's
v18 ruling (2026-10-10): inline editing is on by default under the permission gate, and a
list whose records are read-only by nature (a log, an audit trail, a history, a report
roll-up) declares userActions: { editInline: false }. rules/list-views.md 3068 -> 3136
tokens against a 3141 ceiling, 300 -> 305 lines; no other skills/** file moves.
Claude-Session: https://claude.ai/code/session_01KNKBCRDJCu5tGy3TEbvtrF
Co-authored-by: Claude <noreply@anthropic.com>
维护者速读(终稿)
改了什么objectstack-ui 技能的「Configuring a List View」一节加了一段:列表默认可以在表格里直接改单元格,前提是用户对该对象有更新权限;天然只读的列表(日志、审计、历史、报表汇总)写 为什么改您 2026-10-10 裁定 v18 把 spec 默认值翻成 true, 风险与代价(含回滚)纯文档,不影响运行时。技能包的 token 上限是 3141,改后 3136,这个文件的余量基本用完,下次往里加内容要先删内容。回滚就是撤掉这一段。本 PR 不发版,已挂 席位意见同意合并。措辞与裁决一致:默认开、权限门不变、关闭方式是 你要做的在本 PR 上点 Approve。 Generated by Claude Code |
Contract reviewServed-tier: Read-only: the card body and its four comments (triage ① Derived judgments
② Semver level
③ Boundary flags
Implemented-by: VERDICT: PASS Generated by Claude Code |
Fixes #22605
Clause-②: no
The skill half of #22605, one paragraph in
skills/objectstack-ui/rules/list-views.md("Configuring a List View", after the column-features table): inline editing is on by default under the permission gate, and a list whose records are read-only by nature — a log, an audit trail, a history, a report roll-up — declaresuserActions: { editInline: false }. The spec half (the default flip, the ledgers, the generated references and the changeset) is PR 1 onclaude/issue-22605-edit-inline-default-on, which lands through the queue; this PR touchesskills/**and is Tier H, so it waits for the maintainer's APPROVED review.The ruling
Maintainer, 2026-10-10, verbatim: 「乙 v18 把 spec 默认翻成 true,editInline: false 变成关法。」 The paragraph teaches the author the one key that matters under the new default — the opt-out — and names the lists that want it. No other
skills/**file moves; the file is hand-written (the only generated lifts insideskills/**arereferences/_index.mdandreferences/react-blocks.md), so there is no generator to run.Two readings (the published-skills ratchet)
rules/list-views.md: 300 → 305 lines; 3068 → 3136 tokens (ceil(bytes / 4): 12269 → 12543 bytes) against a ceiling of 3141, headroom 5. Paid from existing headroom; nothing re-wrapped, nothing deleted.skills/*/SKILL.mdis 4410 → 4410 lines (noSKILL.mdmoves).node scripts/check-skills-token-ratchet.mjs:✓ 54 authored bundle file(s) within their ceilings; 10 generator-owned file(s) measured, not ratcheted, withskills/objectstack-ui/rules/list-views.md is 3136 tokens (ceiling 3141; headroom 5).Gates (local, at
e6f3eb158a, after mergingorigin/main83b8b80728)Derived with
node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstack(no paths): 23 families. Reconciled with--ran: 23 derived, 23 run, 0 NOT-MEASURED, 0 UNRUN, every one exit 0 —check:doc-formula-expressionsafter building@objectstack/formulaandlint.node scripts/pm/check-governed-merges.mjs --test skills/objectstack-ui/rules/list-views.mdanswers governed, Tier H (skills/**, the published skills catalog); the file is not in a generated lift, so no--testrecompute applies. The skill line ratchet (scripts/pm/check-skill-line-ratchet.mjs) prices.claude/**only and does not cover the published catalog; the token ratchet above is the one that applies. eslint does not cover.md(its population is**/*.{ts,tsx,mts,cts,js,jsx,mjs,cjs}; the file reports "ignored because no matching configuration"). The three PR-context guards run once this PR has a number; their readings go in the report comment on the card.Changeset
None:
skills/**ships in no package'sfiles[], so this diff releases nothing. The changeset gate's own prescription for that case is theskip-changesetlabel, which this seat does not write under this dispatch; the report names it for the seat.维护者速读(草稿)
改了什么
objectstack-ui 技能的「Configuring a List View」一节加一段:列表默认可以在表格里直接改单元格(前提是用户对该对象有更新权限);天然只读的列表——日志、审计、历史、报表汇总——写
userActions: { editInline: false }关掉。只动这一个文件,只加这一段,不改任何示例代码块。为什么改
您 2026-10-10 的裁决把 v18 的 spec 默认值翻成了 true,
editInline: false成了关法。AI 和开发者写列表视图时读的是这份技能;技能不提这个键,他们既不知道默认已经可编辑,也不知道只读列表该怎么写。PR 1 改规范和参考页,这段把同一件事告诉写元数据的人。风险与代价(含回滚)
风险很低:纯文档,不影响运行时;技能包字数红线 3141 token,改后 3136,余量 5。代价是这个文件的余量基本用完,下次再加内容要先删内容。回滚就是撤销这一段(
git revert),不牵连任何代码。注意skills/**是 Tier H,需要您的 APPROVED review 才能合并;本 PR 不发版,需要skip-changeset标签。席位意见
(留空)
你要做的
defineView容器小节之后),直接在 review 里说,席位改。Generated by Claude Code