Skip to content

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

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. 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

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions