power loss

This commit is contained in:
Andras Schmelczer 2026-09-21 21:29:52 +01:00
commit d56084e4bc
6 changed files with 18667 additions and 3902 deletions

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,4 @@
{
"success": true,
"duration": 262
}

View file

@ -0,0 +1,4 @@
{
"success": true,
"duration": 273
}

View file

@ -0,0 +1,111 @@
{
"options": {
"workers": 2,
"seed": 42,
"iterations": 3,
"timeout": 180000
},
"results": [
{
"name": "build-server",
"command": "cargo",
"args": [
"build",
"--release"
],
"code": 0,
"signal": null,
"timedOut": false,
"success": true
},
{
"name": "build-clients",
"command": "npm",
"args": [
"run",
"build",
"--workspace",
"sync-client",
"--workspace",
"deterministic-tests",
"--workspace",
"test-client"
],
"code": 0,
"signal": null,
"timedOut": false,
"success": true
},
{
"name": "harness-self-tests",
"command": "npm",
"args": [
"run",
"test:harness"
],
"code": 1,
"signal": null,
"timedOut": false,
"success": false
},
{
"name": "crash-and-protocol",
"command": "npm",
"args": [
"run",
"test:protocol"
],
"code": 0,
"signal": null,
"timedOut": false,
"success": true
},
{
"name": "deterministic",
"command": "/Users/schmelczer/.nvm/versions/node/v25.2.1/bin/node",
"args": [
"/Users/schmelczer/Projects/vault-link/frontend/deterministic-tests/dist/cli.js",
"--concurrency",
"2"
],
"code": 1,
"signal": null,
"timedOut": false,
"success": false
},
{
"name": "fuzz-42",
"command": "/Users/schmelczer/.nvm/versions/node/v25.2.1/bin/node",
"args": [
"/Users/schmelczer/Projects/vault-link/frontend/test-client/dist/cli.js",
"--seed",
"42",
"--iterations",
"3",
"--artifacts",
"/Users/schmelczer/Projects/vault-link/logs/harness-review"
],
"code": 0,
"signal": null,
"timedOut": false,
"success": true
},
{
"name": "fuzz-43",
"command": "/Users/schmelczer/.nvm/versions/node/v25.2.1/bin/node",
"args": [
"/Users/schmelczer/Projects/vault-link/frontend/test-client/dist/cli.js",
"--seed",
"43",
"--iterations",
"3",
"--artifacts",
"/Users/schmelczer/Projects/vault-link/logs/harness-review"
],
"code": 0,
"signal": null,
"timedOut": false,
"success": true
}
]
}

View file

@ -0,0 +1,368 @@
{
"version": 1,
"seed": 42,
"iterations": 3,
"steps": [
{
"type": "enable-sync",
"client": 0
},
{
"type": "enable-sync",
"client": 1
},
{
"type": "barrier"
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "disable-sync",
"client": 1
},
{
"type": "delay-notifications",
"client": 0
},
{
"type": "delay-notifications",
"client": 1
},
{
"type": "create",
"client": 0,
"path": "round-0/café/a.md",
"content": "[seed-42-round-0-A]"
},
{
"type": "create",
"client": 0,
"path": "round-0/café/b.md",
"content": "[seed-42-round-0-B]"
},
{
"type": "flush-notifications",
"client": 0
},
{
"type": "flush-notifications",
"client": 1
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "sync",
"client": 0
},
{
"type": "enable-sync",
"client": 1
},
{
"type": "barrier"
},
{
"type": "remember-identity",
"path": "round-0/café/a.md",
"key": "round-0/café/a.md"
},
{
"type": "remember-identity",
"path": "round-0/café/b.md",
"key": "round-0/café/b.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-0/café/a.md",
"newPath": "round-0/café/c.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-0/café/c.md",
"newPath": "round-0/café/a.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-0/café/a.md",
"newPath": "round-0/café/c.md"
},
{
"type": "update",
"client": 0,
"path": "round-0/café/c.md",
"content": "[seed-42-round-0-A]\nrapid final edit"
},
{
"type": "barrier"
},
{
"type": "assert-identity",
"path": "round-0/café/c.md",
"key": "round-0/café/a.md"
},
{
"type": "assert-files",
"expected": {
"round-0/café/c.md": "[seed-42-round-0-A]\nrapid final edit",
"round-0/café/b.md": "[seed-42-round-0-B]"
},
"absent": [
"round-0/café/a.md"
]
},
{
"type": "assert-markers",
"markers": [
"[seed-42-round-0-A]",
"[seed-42-round-0-B]"
],
"removed": []
},
{
"type": "reset",
"client": 1
},
{
"type": "barrier"
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "disable-sync",
"client": 1
},
{
"type": "create",
"client": 0,
"path": "round-1/日本語/a.md",
"content": "[seed-42-round-1-A]"
},
{
"type": "create",
"client": 0,
"path": "round-1/日本語/b.md",
"content": "[seed-42-round-1-B]"
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "sync",
"client": 0
},
{
"type": "enable-sync",
"client": 1
},
{
"type": "barrier"
},
{
"type": "remember-identity",
"path": "round-1/日本語/a.md",
"key": "round-1/日本語/a.md"
},
{
"type": "remember-identity",
"path": "round-1/日本語/b.md",
"key": "round-1/日本語/b.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-1/日本語/a.md",
"newPath": "round-1/日本語/c.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-1/日本語/c.md",
"newPath": "round-1/日本語/a.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-1/日本語/a.md",
"newPath": "round-1/日本語/c.md"
},
{
"type": "update",
"client": 0,
"path": "round-1/日本語/c.md",
"content": "[seed-42-round-1-A]\nrapid final edit"
},
{
"type": "barrier"
},
{
"type": "assert-identity",
"path": "round-1/日本語/c.md",
"key": "round-1/日本語/a.md"
},
{
"type": "assert-files",
"expected": {
"round-1/日本語/c.md": "[seed-42-round-1-A]\nrapid final edit",
"round-1/日本語/b.md": "[seed-42-round-1-B]"
},
"absent": [
"round-1/日本語/a.md"
]
},
{
"type": "assert-markers",
"markers": [
"[seed-42-round-0-A]",
"[seed-42-round-0-B]",
"[seed-42-round-1-A]",
"[seed-42-round-1-B]"
],
"removed": []
},
{
"type": "reset",
"client": 1
},
{
"type": "barrier"
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "disable-sync",
"client": 1
},
{
"type": "delay-notifications",
"client": 0
},
{
"type": "delay-notifications",
"client": 1
},
{
"type": "create",
"client": 0,
"path": "round-2/café/a.md",
"content": "[seed-42-round-2-A]"
},
{
"type": "create",
"client": 0,
"path": "round-2/café/b.md",
"content": "[seed-42-round-2-B]"
},
{
"type": "flush-notifications",
"client": 0
},
{
"type": "flush-notifications",
"client": 1
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "sync",
"client": 0
},
{
"type": "enable-sync",
"client": 1
},
{
"type": "barrier"
},
{
"type": "remember-identity",
"path": "round-2/café/a.md",
"key": "round-2/café/a.md"
},
{
"type": "remember-identity",
"path": "round-2/café/b.md",
"key": "round-2/café/b.md"
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "rename",
"client": 0,
"oldPath": "round-2/café/a.md",
"newPath": "round-2/café/c.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-2/café/b.md",
"newPath": "round-2/café/a.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-2/café/c.md",
"newPath": "round-2/café/b.md"
},
{
"type": "update",
"client": 0,
"path": "round-2/café/b.md",
"content": "[seed-42-round-2-A]\nextra line\n"
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "barrier"
},
{
"type": "assert-identity",
"path": "round-2/café/b.md",
"key": "round-2/café/a.md"
},
{
"type": "assert-identity",
"path": "round-2/café/a.md",
"key": "round-2/café/b.md"
},
{
"type": "assert-files",
"expected": {
"round-2/café/a.md": "[seed-42-round-2-B]",
"round-2/café/b.md": "[seed-42-round-2-A]\nextra line\n"
},
"absent": [
"round-2/café/c.md"
]
},
{
"type": "assert-markers",
"markers": [
"[seed-42-round-0-A]",
"[seed-42-round-0-B]",
"[seed-42-round-1-A]",
"[seed-42-round-1-B]",
"[seed-42-round-2-A]",
"[seed-42-round-2-B]"
],
"removed": []
}
]
}

View file

@ -0,0 +1,404 @@
{
"version": 1,
"seed": 43,
"iterations": 3,
"steps": [
{
"type": "enable-sync",
"client": 0
},
{
"type": "enable-sync",
"client": 1
},
{
"type": "barrier"
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "disable-sync",
"client": 1
},
{
"type": "delay-notifications",
"client": 0
},
{
"type": "delay-notifications",
"client": 1
},
{
"type": "create",
"client": 0,
"path": "round-0/space folder/a.md",
"content": "[seed-43-round-0-A]"
},
{
"type": "create",
"client": 0,
"path": "round-0/space folder/b.md",
"content": "[seed-43-round-0-B]"
},
{
"type": "flush-notifications",
"client": 0
},
{
"type": "flush-notifications",
"client": 1
},
{
"type": "drop-response",
"client": 0,
"kind": "create",
"point": "after"
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "sync",
"client": 0
},
{
"type": "enable-sync",
"client": 1
},
{
"type": "barrier"
},
{
"type": "remember-identity",
"path": "round-0/space folder/a.md",
"key": "round-0/space folder/a.md"
},
{
"type": "remember-identity",
"path": "round-0/space folder/b.md",
"key": "round-0/space folder/b.md"
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "disable-sync",
"client": 1
},
{
"type": "rename",
"client": 0,
"oldPath": "round-0/space folder/a.md",
"newPath": "round-0/space folder/c.md"
},
{
"type": "update",
"client": 1,
"path": "round-0/space folder/a.md",
"content": "[seed-43-round-0-A]\nremote addition\n"
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "sync",
"client": 0
},
{
"type": "enable-sync",
"client": 1
},
{
"type": "barrier"
},
{
"type": "assert-identity",
"path": "round-0/space folder/c.md",
"key": "round-0/space folder/a.md"
},
{
"type": "assert-files",
"expected": {
"round-0/space folder/c.md": "[seed-43-round-0-A]\nremote addition\n",
"round-0/space folder/b.md": "[seed-43-round-0-B]"
},
"absent": [
"round-0/space folder/a.md"
]
},
{
"type": "assert-markers",
"markers": [
"[seed-43-round-0-A]",
"[seed-43-round-0-B]"
],
"removed": []
},
{
"type": "reset",
"client": 0
},
{
"type": "barrier"
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "disable-sync",
"client": 1
},
{
"type": "delay-notifications",
"client": 0
},
{
"type": "delay-notifications",
"client": 1
},
{
"type": "create",
"client": 0,
"path": "round-1/space folder/a.md",
"content": "[seed-43-round-1-A]"
},
{
"type": "create",
"client": 0,
"path": "round-1/space folder/b.md",
"content": "[seed-43-round-1-B]"
},
{
"type": "flush-notifications",
"client": 0
},
{
"type": "flush-notifications",
"client": 1
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "sync",
"client": 0
},
{
"type": "enable-sync",
"client": 1
},
{
"type": "barrier"
},
{
"type": "remember-identity",
"path": "round-1/space folder/a.md",
"key": "round-1/space folder/a.md"
},
{
"type": "remember-identity",
"path": "round-1/space folder/b.md",
"key": "round-1/space folder/b.md"
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "rename",
"client": 0,
"oldPath": "round-1/space folder/a.md",
"newPath": "round-1/space folder/c.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-1/space folder/b.md",
"newPath": "round-1/space folder/a.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-1/space folder/c.md",
"newPath": "round-1/space folder/b.md"
},
{
"type": "update",
"client": 0,
"path": "round-1/space folder/b.md",
"content": "[seed-43-round-1-A]\nextra line\n"
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "barrier"
},
{
"type": "assert-identity",
"path": "round-1/space folder/b.md",
"key": "round-1/space folder/a.md"
},
{
"type": "assert-identity",
"path": "round-1/space folder/a.md",
"key": "round-1/space folder/b.md"
},
{
"type": "assert-files",
"expected": {
"round-1/space folder/a.md": "[seed-43-round-1-B]",
"round-1/space folder/b.md": "[seed-43-round-1-A]\nextra line\n"
},
"absent": [
"round-1/space folder/c.md"
]
},
{
"type": "assert-markers",
"markers": [
"[seed-43-round-0-A]",
"[seed-43-round-0-B]",
"[seed-43-round-1-A]",
"[seed-43-round-1-B]"
],
"removed": []
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "disable-sync",
"client": 1
},
{
"type": "delay-notifications",
"client": 0
},
{
"type": "delay-notifications",
"client": 1
},
{
"type": "create",
"client": 0,
"path": "round-2/nested/a.md",
"content": "[seed-43-round-2-A]"
},
{
"type": "create",
"client": 0,
"path": "round-2/nested/b.md",
"content": "[seed-43-round-2-B]"
},
{
"type": "flush-notifications",
"client": 0
},
{
"type": "flush-notifications",
"client": 1
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "sync",
"client": 0
},
{
"type": "enable-sync",
"client": 1
},
{
"type": "barrier"
},
{
"type": "remember-identity",
"path": "round-2/nested/a.md",
"key": "round-2/nested/a.md"
},
{
"type": "remember-identity",
"path": "round-2/nested/b.md",
"key": "round-2/nested/b.md"
},
{
"type": "disable-sync",
"client": 0
},
{
"type": "rename",
"client": 0,
"oldPath": "round-2/nested/a.md",
"newPath": "round-2/nested/c.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-2/nested/b.md",
"newPath": "round-2/nested/a.md"
},
{
"type": "rename",
"client": 0,
"oldPath": "round-2/nested/c.md",
"newPath": "round-2/nested/b.md"
},
{
"type": "update",
"client": 0,
"path": "round-2/nested/b.md",
"content": "[seed-43-round-2-A]\nextra line\n"
},
{
"type": "enable-sync",
"client": 0
},
{
"type": "barrier"
},
{
"type": "assert-identity",
"path": "round-2/nested/b.md",
"key": "round-2/nested/a.md"
},
{
"type": "assert-identity",
"path": "round-2/nested/a.md",
"key": "round-2/nested/b.md"
},
{
"type": "assert-files",
"expected": {
"round-2/nested/a.md": "[seed-43-round-2-B]",
"round-2/nested/b.md": "[seed-43-round-2-A]\nextra line\n"
},
"absent": [
"round-2/nested/c.md"
]
},
{
"type": "assert-markers",
"markers": [
"[seed-43-round-0-A]",
"[seed-43-round-0-B]",
"[seed-43-round-1-A]",
"[seed-43-round-1-B]",
"[seed-43-round-2-A]",
"[seed-43-round-2-B]"
],
"removed": []
}
]
}