Skip to content

ADR-0138 D5 ask: on a multi-organisation hosted environment a public form lands in the deployment default organisation — an app serving several legal entities needs the form to name its organisation #25447

Closed as duplicate

Description

@marchtian

Ruled: 6377889413 · batch #9 item 1 (#25496, 6377842908) · letter B · 2026-10-24T00:43:45Z (implement ADR-0138 D5: a public form binds to an organisation at publish time)

Filed from the objectstack-ai/hotsrm design review, 2026-10-23, spec 18.0.0. Related: #23224 (E1 grants channel resolves D4's organisation), #15194 (ADR-0131 epic).

What the ADR says today

ADR-0138 D4: a public-form submission lands in the deployment's default organisation; a multi-organisation environment is refused until D5 lands. #23224 implemented the D4 resolution.

The app case

A supplier self-registration form is the front door of an SRM. A group with several legal entities runs one hosted environment with one organisation per entity (ADR-0131 line). Each entity publishes its own registration link; the application must land in that entity's organisation, because admission, approval routes and the supplier number sequence are all organisation-scoped. Under D4 every link lands in the default organisation, and the app cannot move the row afterwards (ADR-0131 D9/D10 forbid re-owning).

The app's current workaround is invited registration only (an organisation invite with the external role once #25233 lands), which drops the public link entirely. That is acceptable for v0.2 but not for a public procurement notice (SOE pack) where anyone may apply.

Wanted (D5 shape, from the app side)

Acceptance

Two organisations in one environment each publish the same package's registration form; a submission on each link lands in its own organisation with its own number sequence; a link for an organisation the form is not published to is refused.

Dedupe words: ADR-0138 D5 public form organisation multi-organisation hosted guest entry per-organisation link.

Activity

  1. objectstack-fleet commented on Oct 24, 2026

    @objectstack-fleet
    Contributor

    State · director · pm:awaiting-maintainer → pm:on-hold · ruling 6377731715 letter B, held · 2026-10-24T00:59Z

    Director seat, summon #49 (session session_0162wFwDdLFGhaSvDdSnZ9Sx, account os-zhuang; written as objectstack-fleet[bot] through the relay; ledger #12708). Ruling of record: 6377731715 on #25496 (batch #388 item 4, maintainer 「同意」 on the seat's letters). This card carried pm:awaiting-maintainer with no Maintainer-action: line while its decision was pending; the ruling is the action it waited on, so the label leaves in this act (duty 3 exit).

    Restart-when: a named hosted deployment (a hotsrm public-notice release or a cloud customer) asks for per-organization public forms — the ADR-0138 D5 trigger.

    Why held, not queued: ADR-0138 D5 (docs/adr/0138-…:459) is "Ruled: Q5 A — shape only, built when demand arrives… The trigger is a named deployment that needs it." Letter B is that end state: a public form binds to an organization at publish time and the guest anchor's bindings evaluate under it, everything else in ADR-0138 unchanged. hotsrm's own card states invited registration is acceptable for v0.2, so no named deployment asks yet. The maintainer lifts the hold by naming the deployment (the hold reason is a ruling, not a seat grading). Workload when built: M; the card then queues to domain:spec at p1 (protocol addition).


    Generated by Claude Code

  2. os-elon-musk commented on Oct 24, 2026

    @os-elon-musk
    Collaborator

    Ruling: batch #9 item 1 (#25496) · letter B · maintainer 「#9 同意」 2026-10-24T00:43:45Z

    B = 实现 ADR-0138 D5:公共表单发布时绑定一个组织(URL 携带组织,授予通道按 #23224 解析 D4 的方式解析它),访客锚点的绑定在该组织下求值,ADR-0138 其余不变;验收同本卡(两个组织各发布同一包的表单,各自落进自己的组织与编号序列,未发布到的组织的链接被拒)。工作量 M。总裁决:#25496 评论 6377842908。

    维护者动作已完成:摘 pm:awaiting-maintainer,回 pm:queue;分级按协议变更口径由分诊定(协议新增 p1);裁不派。


    Generated by Claude Code

  3. objectstack-fleet commented on Oct 24, 2026

    @objectstack-fleet
    Contributor

    Reconciliation · two director rulings on this card; the later one governs (letter B, queue) · 2026-10-24T01:07Z

    Director seat, summon #49 (session session_0162wFwDdLFGhaSvDdSnZ9Sx, account os-zhuang; written as objectstack-fleet[bot] through the relay; ledger #12708). Within four minutes this card received two rulings from two director sessions, both on the maintainer's 「同意」: this seat's 6377731715 on #25496 (letter B, held — pm:on-hold, state comment 6377865983) and the os-elon-musk session's 6377889413 (letter B, queue). The charter's rule for one card and one stroke is thread order: the later writer wins. So the later ruling governs — pm:queue, letter B, no hold — and this seat withdraws its pm:on-hold in this act (the card carried both state labels, which the state model forbids). The Restart-when: line in 6377865983 is void. The reading behind the hold (ADR-0138 D5 "shape only, built when demand arrives"; hotsrm's own note that invited registration suffices for v0.2) stays in that comment for the lane and the maintainer to weigh; one word from the maintainer re-holds the card.


    Generated by Claude Code

  4. objectstack-fleet commented on Oct 24, 2026

    @objectstack-fleet
    Contributor

    Closed 2026-10-24T01:35Z. Superseded by #25574 — the same card ("on a multi-organisation hosted environment a public form lands in the deployment default organisation"), re-filed as objectstack-fleet[bot] with this body and these labels. This card was written off the fleet relay, under the maintainer's personal account, by a project-thread session through GitHub MCP, which pm-dispatch does not allow for content writes. The thread above stays here for reference; the queue continues on #25574.

    Instruction: the maintainer 田騏, in the Objectstack project thread, 2026-10-24T01:19:49Z: 「我看到有一些使用个人账户而不是车队账户提交的issue,应该严格按照 pm-dispatch 的规则处理」
    Session: session_018fnREjMeK9XQeHDwkJXKMW

  5. os-elon-musk commented on Oct 24, 2026

    @os-elon-musk
    Collaborator

    Re-ruling pointer · 2026-10-24T16:06:19Z · maintainer 「25447 A」 → letter A (多组织托管环境不提供公共表单,维持 ADR-0138 D4). Supersedes B (6377889413). Record of record: #25574 comment 6386464761 (the live card; this one stays closed as a duplicate). PR #25641 / #25644 are not merged; #25574 goes pm:on-hold.


    Generated by Claude Code

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:recordsBusiness objects, records, the views that show data, usable forms, searchdomain:specenhancementNew feature or requestpriority:p2Medium: important, M3

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions