|
40 | 40 | from agentnet.security.signatures import canonical_digest, canonical_json |
41 | 41 | from agentnet.storage.backend import StoreBackend |
42 | 42 | from agentnet.storage.communication_scope_schema import COMMUNICATION_SCOPE_TABLE_DDL |
| 43 | +from agentnet.storage.release_v7_schema import materialize_v6_communication_scope |
43 | 44 | from pydantic import BaseModel, ConfigDict, Field, field_validator, model_validator |
44 | 45 |
|
45 | 46 |
|
@@ -937,6 +938,10 @@ def complete( |
937 | 938 | self._require_committed_current( |
938 | 939 | connection, row=row, actor=actor, now=now |
939 | 940 | ) |
| 941 | + materialize_v6_communication_scope( |
| 942 | + connection, |
| 943 | + scope_id=str(row["scope_id"]), |
| 944 | + ) |
940 | 945 | return self._stored_complete(row, reservation_digest) |
941 | 946 | self._require_row_actor(row, actor) |
942 | 947 | if row["state"] in { |
@@ -1019,6 +1024,10 @@ def complete( |
1019 | 1024 | self._require_committed_current( |
1020 | 1025 | connection, row=row, actor=actor, now=int(self.clock()) |
1021 | 1026 | ) |
| 1027 | + materialize_v6_communication_scope( |
| 1028 | + connection, |
| 1029 | + scope_id=str(row["scope_id"]), |
| 1030 | + ) |
1022 | 1031 | return self._stored_complete(row, reservation_digest) |
1023 | 1032 | if ( |
1024 | 1033 | row["state"] != "completion_reserved" |
@@ -1159,6 +1168,10 @@ def complete( |
1159 | 1168 | scope_id, |
1160 | 1169 | ), |
1161 | 1170 | ) |
| 1171 | + materialize_v6_communication_scope( |
| 1172 | + connection, |
| 1173 | + scope_id=scope_id, |
| 1174 | + ) |
1162 | 1175 | return self._stored_complete( |
1163 | 1176 | self._row_for_begin(connection, begin_hash), |
1164 | 1177 | reservation_digest, |
|
0 commit comments