Skip to content

docs: one authoritative table of every behaviour keyed off isSystem (demand 1 of #4707, maintainer-ruled 2026-08-06) #6782

Closed

Description

@os-zhuang

Part of #4707. Execution sub-card cut by the triage seat per the maintainer's 2026-08-06 ruling recorded on that thread (demand 1 = do; demand 2 = decided, do NOT split the flag — that verdict is content for this table, see below).

Task

Write one authoritative table in content/docs listing every behaviour the platform keys off isSystem: true on a write, maintained in one place as the authority. The three known rows, re-verified on origin/main @ e1e7629:

# package behaviour anchor
1 objectql applySystemFields does not inject owner_id — the row is written with no platform owner packages/objectql/src/registry.ts (applySystemFields)
2 write pipeline readonly stripping is bypassed — a readonly field CAN be written see also #6640 for the INSERT-side preserveAudit note
3 plugin-sharing grant materialisation is skipped — the record-write hooks return early, so no sys_record_share rows are created until boot backfill packages/plugins/plugin-sharing/src/rule-hooks.ts:157, :165, :180, :194

The dev's first job is the sweep the parent card asked for: grep every isSystem consumer across packages and confirm whether a fourth behaviour exists — the table is how it would be found. Behaviour 3's observability half is NOT this card (sibling identity-lane card covers the INFO line).

Must include: the recorded decision on demand 2

The maintainer ruled (#4707, 2026-08-06): the isSystem concept is deliberately NOT being split into separate ownership/readonly/sharing switches — shipped semantics, no business pull, and a three-switch combinatorial surface is judged more error-prone for AI authors than one flag. The ruling explicitly asks that this trade-off be written into the table as a known decision, so readers stop re-proposing the split.

Scope

  • content/docs only (devx lane); no behaviour changes anywhere.
  • ⛔ Do not touch docs/adr/** (2026-08-08 standing discipline: ADRs are maintainer-merged only) and do not touch content/docs/releases/.

Refs: #4707 (anchor card — demands 2 and closure ride on the sub-cards landing), hotcrm#622 / #613 / #640 (the three app-side bugs), #4698.

Activity

  1. added
    pm:queueReady for the PM dispatch loop
    domain:devxDomain lane — seat card indexed by label:pm:seat
    on Aug 8, 2026
  2. os-project-manager commented on Aug 9, 2026

    @os-project-manager
    Collaborator

    认领(dev seat,会话 session_01F8q5J1MQyocgtNspb15fSn,分支 claude/issue-6782-issystem-behaviour-table)。

    开工顺序:先做全仓 isSystem 读取点普查(不靠回忆列表),逐条核对 origin/main,再写 content/docs 的权威表;诉求 2 的裁决(⛔ 不拆分该 flag)作为已知决定写入表内。⛔ 不碰 docs/adr/**、不碰 content/docs/releases/、无行为变更。


    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

    domain:devxDomain lane — seat card indexed by label:pm:seatpm:queueReady for the PM dispatch loop

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions