Skip to content

docs(data-modeling): the currency page — dynamic / fixed / record modes, the sibling code field, what refuses (multi-currency M0-5, epic #8345) #27189

Closed

Description

@objectstack-fleet

Blocked-by: #27184

Filing gate ③ (maintainer-directed). Ruling 6465431966 on #27119 (batch #421 item 2, Q1 = 乙-现在, maintainer 「同意立专题卡」 2026-10-28): the multi-currency epic resumes on #8345 in shape C′. Part of #8345. Filed by the director seat (session_01QSeKYo7qYsX6HsAneHBMP2, ledger objectstack#12708). ⛔ Not a claim. Workload row and precedents: 6464936321; design: 6464438764.

Ruling-ref: 6465431966

维护者速读

Task

  • Write the page from the ADR (M3-4) and M0-1's describe text.
  • docs-audit affected-docs green.

Lane: devx · Size: S · Review: default. Clause-②: no · Metadata-protocol: none.

Epic: #8345 (parent; the epic PM dispatches pm:epic children; domain:spec children go to the spec seat's queue). Dedupe: #8345 thread, #27119 (ruled), the workload list 6464936321; no open card carries this slice.

Activity

  1. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    epic:#8345#1 · os-bill · session_01Utp6CbTZrFqRYNgjSaSbN5

    Claim: PM loop round 1 · 2026-10-29T08:14Z
    Session: session_01Utp6CbTZrFqRYNgjSaSbN5 (epic PM, epic:#8345)
    Account: os-bill
    Branch: claude/project-thread-gktkiu (card thread session_01Utp6CYWaabH6fd31U9CyS7; the platform assigns the thread's one push branch — the recorded platform exception)
    Worktree: objectstack-issue-27189
    Domain: domain:devx
    Seat: epic:#8345
    File surface: content/docs/** (excluding content/docs/releases/**), skills/objectstack-data/rules/field-types.md, the skills dashboards guide, .changeset/* if a published package's bytes change (stop on breach; explain in the report)
    Container & model: M, mode:thread, model: opus (TIER_DEFAULT; dispatch-gates --tier: no path-derived mandate), effort: high
    Clause-②: no
    Metadata-protocol: none
    Responsibility: n/a — not a defect card
    Thread-read: none
    Premise: holds
    Serial constraints cleared: no — branched from main; documents R1 behaviour still in draft PRs #27268, #27339, #27338, #27340 by maintainer-authorised acceleration; pm:blocked → pm:dispatched in this stroke; Merge-after: #27268, #27339, #27338, #27340, with main brought in and every citation re-checked after they land.
    Release pairing: R1 — ⛔ not released alone; lands in the same window as #27268, #27339, #27338, #27340.
    Maintainer authority: Bill, project thread, 2026-10-28 「epic的卡你统一派」, 「并发可以5」, 「你自主完成后续阶段」 (audit 6467659191 on #8345).

  2. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    epic:#8345#1 · os-bill · session_01Utp6CYWaabH6fd31U9CyS7

    os-dev-report

    {
      "issue": 27189,
      "status": "rework",
      "branch": "claude/project-thread-gktkiu",
      "pr": "https://github.com/objectstack-ai/objectstack/pull/27475",
      "session": "session_01Utp6CYWaabH6fd31U9CyS7",
      "premise_still_valid": true,
      "summary": "R1 currency docs (M0-5). New page content/docs/data-modeling/currency.mdx: the three modes; the record mode's sibling ISO 4217 code field (text + valueDomain iso_4217_currency, named by currencyField; currency_code is a convention, not a contract, ADR-0144 D8 rule 2); the seven declaration refusals with fixes; ERR_CURRENCY_CODE_REQUIRED/400 on a blank code (only touched pairs on update; the platform never fills a code; an author-declared defaultValue satisfies it because applyFieldDefaults runs first); ungrouped sum/avg/min/max INVALID_FIELD/400 at the ObjectQL aggregate and the analytics cube door, count served, currencyField on a grouped column and never on a count; summary roll-up INVALID_METADATA/422; dataset measure currency over a record amount and a record/other-currency derived measure DATASET_INVALID/400; the Console per-row display (#27340 final head 3e2eb1d0); metadata never names the home currency, consolidation is a later release. Two-mode wording fixed in field-types, fields, validation-rules, formulas, protocol/objectql/types and schema; data-api checked (already done by #27338), common-patterns and metadata-driven checked and left. Skills: dashboards.md measure-currency comment (6220/6221 tokens) + @objectstack/skills patch changeset. rework, not done: the field-types.md 'by convention' wording waits for #27268 to land (the paragraph exists only on its branch), and every citation is re-checked against what lands.",
      "tests": "No code changed. packages/spec test:repo locally at 99d7b8b2: 1 failed / 1419 (currency-mode-family-closure.pin rule A, a defaultCurrency sentence without 'fixed' in protocol/objectql/types.mdx) -> fixed in 59b83abc; that file re-run 6/6 passed.",
      "gates": "dispatch-gates --commands --repo objectstack-ai/objectstack: 76 families. Run at 99d7b8b2 after pnpm build + client-react build, each exit captured before any pipe: --ran '76 derived famil(ies) accounted for — 76 run, 0 NOT-MEASURED'. Record: /mnt/project-files/epic-8345/gates-27189-ran.txt. CI fixed so far: check-section-landing-index (3a4173fd), Test Core closure pin (59b83abc). pnpm lint not run locally (CI's).",
      "dogfood_battery": "n/a — docs and one skills comment; no ! in the title, Clause-② no",
      "mcp_calls": "issue_read x3, pull_request_read x4, get_job_logs x3, subscribe_pr_activity x1; no MCP writes",
      "api_writes": "fleet-write relay pr_create (objectstack#27475, no assignee); this post-stamped report",
      "open_questions": [],
      "out_of_scope_findings": ["none"]
    }

    Report taken 2026-10-29T08:59Z.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:devpathThe road — create, dev, verify, publish/install, connect an agent, iteratedocumentationImprovements or additions to documentationdomain:devxpm:epicpriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions