Skip to content

Commit ddeccc6

Browse files
committed
chore(spec): register accept/maxSize in the field liveness ledger
The spec-property liveness gate (ADR-0049, declared != enforced) flagged both new properties as UNCLASSIFIED — which is the gate doing exactly its job, since the whole reason these two are being added is that they were read by widgets while nothing in the contract declared or enforced them. Both are registered live, with the server-side enforcement site as evidence rather than the widget that merely offers them to the file picker: a client-side check is bypassed by any caller talking to the API directly, so it is not what makes the property live. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SHpGw3GBA9aFpfwVArRWfd
1 parent 19378c3 commit ddeccc6

1 file changed

Lines changed: 10 additions & 0 deletions

File tree

packages/spec/liveness/field.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,16 @@
251251
"status": "live",
252252
"evidence": "packages/plugins/plugin-audit/src/audit-writers.ts",
253253
"note": "ADR-0052 §5b — the audit-writer renders tracked-field diffs as human-readable activity summaries (renderTrackedChangeSummary + getFieldDefs read field.trackHistory). Reintroduces the pruned auditTrail concept WITH a runtime consumer, satisfying enforce-or-remove (ADR-0049)."
254+
},
255+
"accept": {
256+
"status": "live",
257+
"evidence": "packages/services/service-storage/src/file-reference-lifecycle.ts (assertFileConstraints)",
258+
"note": "ADR-0104 D3 wave 2. Offered to the file picker AND enforced server-side on record write: once a media field references a sys_file, the stored mime_type/name is re-checked against the declared list, because a client-side check is bypassed by any caller talking to the API directly. Entries are only judged against metadata the file actually reports — an unrecorded MIME type cannot fail the test."
259+
},
260+
"maxSize": {
261+
"status": "live",
262+
"evidence": "packages/services/service-storage/src/file-reference-lifecycle.ts (assertFileConstraints)",
263+
"note": "ADR-0104 D3 wave 2. Enforced server-side on record write against sys_file.size, not merely checked in the browser. A file with no recorded size cannot fail it."
254264
}
255265
}
256266
}

0 commit comments

Comments
 (0)