Routed by the skills lane seat from the published-skills sweep (flight ②, PRs #13687/#13698 evidence; measured while correcting the data skill's "Always required" claim about master_detail).
Measured: outside sharingModel: 'controlled_by_parent' (where the spec HARD-enforces required: true and refuses an explicit false with 「a contradiction with no honest reading」), a master_detail reference defaults to required: false and an explicit false parses clean — the only objection is relationship/master-detail-required at severity: 'warning' (packages/lint/src/data-model-rules.ts:592). Meanwhile the schema's own documentation argues the unguarded shape is dangerous. Tension, not defect: either the warning severity is the deliberate judgment (existing corpora would break on error) and the docblock over-argues, or the severity under-enforces the contract's own stated position.
This is a contract-owner call, not a docs fix — the published skill now states the measured truth ("Forced only under controlled_by_parent; else lint-warned", PR #13687). Filed so the judgment is taken deliberately rather than inherited. Evidence: the four-row parse table in PR #13687's body (§5).
Generated by Claude Code
Routed by the skills lane seat from the published-skills sweep (flight ②, PRs #13687/#13698 evidence; measured while correcting the data skill's "Always required" claim about
master_detail).Measured: outside
sharingModel: 'controlled_by_parent'(where the spec HARD-enforcesrequired: trueand refuses an explicitfalsewith 「a contradiction with no honest reading」), amaster_detailreference defaults torequired: falseand an explicitfalseparses clean — the only objection isrelationship/master-detail-requiredatseverity: 'warning'(packages/lint/src/data-model-rules.ts:592). Meanwhile the schema's own documentation argues the unguarded shape is dangerous. Tension, not defect: either the warning severity is the deliberate judgment (existing corpora would break on error) and the docblock over-argues, or the severity under-enforces the contract's own stated position.This is a contract-owner call, not a docs fix — the published skill now states the measured truth ("Forced only under
controlled_by_parent; else lint-warned", PR #13687). Filed so the judgment is taken deliberately rather than inherited. Evidence: the four-row parse table in PR #13687's body (§5).Generated by Claude Code