Skip to content

[转移] 发布期护栏:多组织下「平台级 + schedule + create_record + 未显式 organization_id」拒绝——#6155 Q3=A 裁决的 lint 半边 #6285

Description

@hotlong

Part of #6155(维护者 2026-08-07 裁决 Q2=A + Q3=A;services 座位转移立单,落点在运行时发布门——域标签交分诊按落点文件定)。

裁决口径

#6155 dev 探针已量出的两个输入缺口(实现起点,勿重查)

  1. 部署形态:postureEnforcesWall(resolveTenancyPosture()) 是进程级 env 读数,AUTHORING_RULES 纯函数签名不含它——按 Q3=A 从 gate 侧注入;
  2. 写入 org:在 saveMetaItem 手里但 assertRuntimeAuthoringRules 未传给 evaluateRuntimeAuthoringGate;
  3. ⚠️ 待确认的短路:assertRuntimeAuthoringRules 现有 if (this.environmentId === undefined) return;——控制面 kernel 上整条 gate 不跑。实现前先答「这是既有设计还是遗漏」:若短路使护栏在关键部署形态不可达,STOP 上报,⛔ 不得擅自拓宽 gate 激活面(Schedule 触发器不携带任何 org 上下文——定时 runAs:'system' 清扫在多组织部署里仍会产出 organization_id=NULL 的行(#5494 的用户缺席半边) #6155 dev 原话:无把握,未擅自改动)。

依赖

Blocked-by: #6283(spec 半边 flip——Q1=B 落地后「org 归属的 flow」不复存在,本护栏的拒绝组合语义才是终态)。

Refs:#6155(裁决与探针证据)、#6153(fill-only 先例)、#2308/#5378(lint 面同族)、ADR-0118 D1。

Activity

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions