Support durable host-to-isolated workspace migration

This commit is contained in:
ms2k 2026-07-26 00:43:30 +09:00
commit 0dda65fc2e
2 changed files with 1176 additions and 32 deletions

View file

@ -6,6 +6,16 @@
"isolated"
],
"transition_contracts": [
{
"id": "qualified-host-to-isolated-rename",
"operations": [
"rename",
"rename-noreplace"
],
"result": "success",
"mutation": "durable-host-to-isolated-migration",
"copy": "host-to-isolated-only"
},
{
"id": "cross-route-rename",
"operations": [
@ -96,13 +106,13 @@
"operation": "rename",
"host": "supported",
"isolated": "supported",
"cross_route": "EXDEV"
"cross_route": "qualified-host-to-isolated-or-EXDEV"
},
{
"operation": "rename-noreplace",
"host": "supported",
"isolated": "supported",
"cross_route": "EXDEV"
"cross_route": "qualified-host-to-isolated-or-EXDEV"
},
{
"operation": "rename-exchange",

View file

@ -74,6 +74,14 @@
"actions": ["host-publish-ignore", "sandbox-open-after-publication"],
"expect": ["single-classification-epoch", "host-object-hidden", "no-copy"]
},
{
"id": "cargo-target-host-to-isolated-rename",
"tags": ["rename", "cross-policy-rename", "no-copy-back"],
"path_hex": "746172676574",
"setup": ["router-created-host-directory", "router-created-cachedir-tag", "ignored-destination"],
"actions": ["sandbox-rename"],
"expect": ["success", "qualified-isolated-destination", "host-source-absent", "no-isolated-to-host-copy"]
},
{
"id": "cross-route-file-rename",
"tags": ["rename", "cross-policy-rename", "no-silent-loss"],