Commit d2b6fa0
fix(metadata-protocol): stop persisting derived provenance keys, and restate tenant authorship at hydration for every type (#16796)
* fix(metadata-protocol): stop persisting and re-reading derived provenance keys
wip
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ADLdAs2pVcH17h9tZKWMBg
* test(objectql): pin both #16702 doors against a real ObjectQL engine
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ADLdAs2pVcH17h9tZKWMBg
* chore: changeset for the derived-provenance write door and hydration restatement
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ADLdAs2pVcH17h9tZKWMBg
* test(objectql): existing hydration pins now state tenant authorship
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ADLdAs2pVcH17h9tZKWMBg
* test(objectql): the new stub driver honours the caller's limit bound
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ADLdAs2pVcH17h9tZKWMBg
* chore(changeset): raise @objectstack/metadata-protocol to minor
`check-changeset-no-major`'s level axis refuses a PR that declares
`Clause-②: yes` while grading a package whose `packages/*/src/**` it
moves as `patch`. Route 1 of the two the gate names: the declaration is
right and the level is wrong.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ADLdAs2pVcH17h9tZKWMBg
* test(objectql): pin door 1's type-agnostic scope on the stored `object` row
F5 of the contract review on PR #16796. `stripDerivedProvenance` runs
before `saveMetaItem`'s type branch, so an `object` body loses the same
three keys at rest — the criterion-4 case wrote `_packageId` /
`_provenance` into the request but read back only the hydrated entry,
which door 2's restatement would answer `org` on its own even if the
strip had skipped `object`. `_packageVersion` is now sent too, so all
three keys the strip names are exercised rather than two.
F2 of the same review, as a disclosure in the changeset: door 2 corrects
the authorization verdict, not the served document, and the cloud#2069
backfill stays load-bearing for rows already poisoned at rest.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ADLdAs2pVcH17h9tZKWMBg
---------
Co-authored-by: Claude <noreply@anthropic.com>1 parent ec5db7b commit d2b6fa0
6 files changed
Lines changed: 622 additions & 8 deletions
File tree
- .changeset
- packages
- metadata-protocol/src
- objectql/src
Lines changed: 16 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1172 | 1172 | | |
1173 | 1173 | | |
1174 | 1174 | | |
| 1175 | + | |
| 1176 | + | |
| 1177 | + | |
| 1178 | + | |
| 1179 | + | |
| 1180 | + | |
| 1181 | + | |
| 1182 | + | |
| 1183 | + | |
| 1184 | + | |
| 1185 | + | |
| 1186 | + | |
| 1187 | + | |
| 1188 | + | |
| 1189 | + | |
| 1190 | + | |
| 1191 | + | |
| 1192 | + | |
| 1193 | + | |
| 1194 | + | |
| 1195 | + | |
| 1196 | + | |
| 1197 | + | |
| 1198 | + | |
| 1199 | + | |
| 1200 | + | |
| 1201 | + | |
| 1202 | + | |
| 1203 | + | |
| 1204 | + | |
| 1205 | + | |
| 1206 | + | |
| 1207 | + | |
| 1208 | + | |
| 1209 | + | |
| 1210 | + | |
| 1211 | + | |
| 1212 | + | |
| 1213 | + | |
| 1214 | + | |
| 1215 | + | |
| 1216 | + | |
| 1217 | + | |
| 1218 | + | |
| 1219 | + | |
| 1220 | + | |
| 1221 | + | |
| 1222 | + | |
| 1223 | + | |
| 1224 | + | |
| 1225 | + | |
| 1226 | + | |
| 1227 | + | |
| 1228 | + | |
| 1229 | + | |
| 1230 | + | |
| 1231 | + | |
| 1232 | + | |
| 1233 | + | |
| 1234 | + | |
| 1235 | + | |
| 1236 | + | |
| 1237 | + | |
| 1238 | + | |
| 1239 | + | |
| 1240 | + | |
| 1241 | + | |
| 1242 | + | |
| 1243 | + | |
| 1244 | + | |
| 1245 | + | |
| 1246 | + | |
| 1247 | + | |
| 1248 | + | |
| 1249 | + | |
| 1250 | + | |
| 1251 | + | |
| 1252 | + | |
1175 | 1253 | | |
1176 | 1254 | | |
1177 | 1255 | | |
| |||
14050 | 14128 | | |
14051 | 14129 | | |
14052 | 14130 | | |
14053 | | - | |
| 14131 | + | |
| 14132 | + | |
| 14133 | + | |
| 14134 | + | |
| 14135 | + | |
| 14136 | + | |
| 14137 | + | |
| 14138 | + | |
| 14139 | + | |
| 14140 | + | |
| 14141 | + | |
| 14142 | + | |
| 14143 | + | |
14054 | 14144 | | |
14055 | 14145 | | |
14056 | 14146 | | |
| |||
14911 | 15001 | | |
14912 | 15002 | | |
14913 | 15003 | | |
| 15004 | + | |
| 15005 | + | |
| 15006 | + | |
| 15007 | + | |
| 15008 | + | |
| 15009 | + | |
| 15010 | + | |
| 15011 | + | |
| 15012 | + | |
| 15013 | + | |
| 15014 | + | |
| 15015 | + | |
| 15016 | + | |
| 15017 | + | |
| 15018 | + | |
14914 | 15019 | | |
14915 | 15020 | | |
14916 | 15021 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1035 | 1035 | | |
1036 | 1036 | | |
1037 | 1037 | | |
| 1038 | + | |
| 1039 | + | |
| 1040 | + | |
| 1041 | + | |
1038 | 1042 | | |
1039 | 1043 | | |
1040 | 1044 | | |
| 1045 | + | |
1041 | 1046 | | |
1042 | 1047 | | |
1043 | 1048 | | |
| |||
Lines changed: 10 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
135 | 135 | | |
136 | 136 | | |
137 | 137 | | |
138 | | - | |
| 138 | + | |
139 | 139 | | |
140 | 140 | | |
141 | 141 | | |
142 | 142 | | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
143 | 150 | | |
144 | 151 | | |
145 | 152 | | |
| |||
159 | 166 | | |
160 | 167 | | |
161 | 168 | | |
162 | | - | |
| 169 | + | |
| 170 | + | |
163 | 171 | | |
164 | 172 | | |
165 | 173 | | |
| |||
0 commit comments