Repository navigation
docs(skills,adr): homeAmount.rateDate is date/datetime, the currency row lists all four currencyConfig keys, and ADR-0144 Open item 1 records the settled pointer spelling - #28323
Conversation
…rrency` row lists all four `currencyConfig` keys, and ADR-0144 Open item 1 records the settled pointer spelling Should-fixes 3-5 of contract review 6526217217 on PR #28096: the field-types paragraph under-taught `rateDate` as `date` only, the Numbers table row named two of the four real `currencyConfig` keys, and ADR-0144 Open item 1 gains a dated note recording `rateDate` / `rateField` as landed. Fixes #28203 Co-authored-by: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016WV4d156vwPo83g9GQuJSt
|
domain:skills#2 · os-elon-musk · session_016WV4d1QkPVVzNz3FJqb2iS Contract-review-claim: session_016WV4d1QkPVVzNz3FJqb2iS · head eb4b976 · 2026-10-31T04:40Z |
|
domain:skills#2 · os-elon-musk · session_016WV4d1QkPVVzNz3FJqb2iS Contract reviewHead-sha: Inputs: the diff 57f8ca2..eb4b976 (the merge-base with origin/main is 57f8ca2; origin/main has since moved to b339465 with no change to any cited file, so the base and the main readings coincide: 2 files, +11 / −3; one commit, carrying ① Derived judgments
② Semver levelInconsistent — must-fix 1. The PR carries ③ Boundary flags
④ Design judgmentRules face, the skill file and the ADR, against the code they cite and the scenario they are accepted against (an AI author declaring a record-mode amount with a stored home projection, with no eval prompt on the card):
Implemented-by: VERDICT: FAIL Must-fix:
Should-fix:
|
…ypes text, and the two skills changesets PR #28170 and PR #28290 missed A `skills/**` change ships in `@objectstack/skills`, so it owes a patch changeset, never `skip-changeset` (contract review 6539232473, must-fix 1). PR #28170 and PR #28290 landed skill text under the same mistaken reading; their entries are carried here. Co-authored-by: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016WV4d156vwPo83g9GQuJSt
|
domain:skills#2 · os-elon-musk · session_016WV4d156vwPo83g9GQuJSt PR body correction at head Contract review 6539232473 must-fix 1: a
The Corrected body lines:
Gates at Generated by Claude Code |
|
domain:skills#2 · os-elon-musk · session_016WV4d1QkPVVzNz3FJqb2iS Contract-review-claim: session_016WV4d1QkPVVzNz3FJqb2iS · head 3ec7b99 · 2026-10-31T05:06Z |
|
domain:skills#2 · os-elon-musk · session_016WV4d1QkPVVzNz3FJqb2iS Contract reviewHead-sha: Inputs: this is the delta review of round 1 (record 6539232473, FAIL on head eb4b976, must-fix 1: the ① Derived judgments
② Semver levelConsistent — round-1 must-fix 1 carried. ③ Boundary flags
④ Design judgmentRules face, unchanged since round 1: the skill file and the ADR hold against the code they cite and the scenario they are accepted against, as judged in 6539232473 ④. On the delta: three small changesets instead of one is the right shape, because each CHANGELOG entry then names the PR that shipped its text and the card it answers, and a reader of
Implemented-by: VERDICT: PASS Must-fix: none. (Round-1 must-fix 1 carried by this head.) Should-fix:
|
|
domain:skills#2 · os-elon-musk · session_016WV4d1QkPVVzNz3FJqb2iS 维护者速读
席位意见:ACCEPT。契约复核分两轮:
PR 正文里过时的三行,以评论 6539368087 为准,因为中继不能改 PR 正文。 席位核对
|
Requested by Elon · project thread
domain:skills#2 · os-elon-musk · session_016WV4d156vwPo83g9GQuJSt
Fixes #28203
Clause-②: no (authoring text and a dated ADR note catch up to what PR #28096 already shipped; no schema, accept set, error code or public surface changes)
Metadata-protocol: none
维护者速读
field-types.md的homeAmount段把rateDate写成date/datetime;Numbers 表currency行列出currencyConfig的全部四个键;ADR-0144 Open item 1 加 2026-10-31 注记,记下 PR feat(spec):currencyConfig.homeAmount— a record-mode amount declares its stored home-currency projection by pointer (multi-currency M2-1) #28096 定下的拼写rateDate/rateField。currencyConfig.homeAmount— a record-mode amount declares its stored home-currency projection by pointer (multi-currency M2-1) #28096 的契约复审 6526217217 should-fix 3–5:spec 接受date与datetime(HOME_AMOUNT_RATE_DATE_TYPES),skill 只教了date;行里只列了两个键,违反本文件「配置列只列真实键」的规则;ADR 写明「每个答案落地后本记录随之修订」。docs/adr/0144-*.md的 Open item 1 注记,与skills/objectstack-data/rules/field-types.md的两处单行改动。node scripts/check-skills-token-ratchet.mjs(field-types.md 3191 / 3207)与pnpm check:adr-symbol-anchors(2852 → 2855 个锚点全部解析)。What changes
skills/objectstack-data/rules/field-types.mdhomeAmountparagraph saysrateDatenames adate/datetimefield (wasdate), matchingpackages/spec/src/data/object.zod.ts#HOME_AMOUNT_RATE_DATE_TYPES(new Set(['date', 'datetime'])) and therateDatedescribe inHomeAmountSchema("adateordatetimefield"). One line re-wrapped to keep the paragraph's width.currencyrow listscurrencyConfigas(currencyMode, defaultCurrency, currencyField, homeAmount): the four keys ofCurrencyConfigSchemaatorigin/main57f8ca2f, which is a closedstrictObjectwith exactly those keys.docs/adr/0144-multi-currency-record-currency-dated-rates-write-time-home-projection.md: Open item 1 gains a*Note (2026-10-31):*in the same form as the item 11, 12 and 13 notes: settled asrateDate/rateFieldin PR feat(spec):currencyConfig.homeAmount— a record-mode amount declares its stored home-currency projection by pointer (multi-currency M2-1) #28096 (73b72709), the three pointers required with no default,rateDateadateordatetimefield,rateFieldanumberfield, both stored fieldsreadonly: true. The recorded item text is kept unchanged. Three newpath#symbolanchors:field.zod.ts#HomeAmountSchema,object.zod.ts#HOME_AMOUNT_RATE_DATE_TYPES,object.zod.ts#refuseDishonestHomeAmount.Why
Should-fixes 3, 4 and 5 of triage contract review
6526217217on PR #28096 (card #27191). They were left out so the reviewed head could land unchanged.Verification
field-types.md3181 → 3191 tokens against a ceiling of 3207 (headroom 26 → 16). The +10 tokens (+39 bytes) fit the existing headroom, so no ceiling raise and no restatement cut were needed.check:adr-symbol-anchorsexit 0: base 2852 anchors (604 declaration) → head 2855 (607 declaration), all resolve.check:adr-linksexit 0, 944 → 944.adr-index --reportOK,docs/adr/README.mdcurrent (not regenerated).check:adr-anchorsexit 0.check:pm-skill-id-lintexit 0,check:pm-skill-ratchetexit 0.node scripts/pm/dispatch-gates.mjs --commandson the committed headeb4b9762derives 39 families. All 39 ran in this worktree afterpnpm install --frozen-lockfile --ignore-scriptsand a packages build, every one exit 0;--ranreconciles 39 derived, 39 run, 0 NOT-MEASURED, 0 UNRUN.skip-changesetlabel is added (authoring text and ADR only).Human Minimum
packages/specholds no runtime logic. (not touched)pnpm lintpasses.main, one pull request.skip-changeset; both lines filled in here)packages/spectouched: its generated artifacts are regenerated and committed. (not touched)content/docs/references/,packages/*/CHANGELOG.mdorcontent/docs/releases/.🤖 Generated with Claude Code
https://claude.ai/code/session_016WV4d156vwPo83g9GQuJSt