@paradigma-inc/flywheel 0.2.32 → 0.2.44
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skills/flywheel/SKILL.md +2 -0
- package/skills/flywheel/references/flywheel-cli-tool-map.md +7 -6
- package/skills/flywheel-auto/references/flywheel-cli-tool-map.md +6 -5
- package/skills/flywheel-llm-proof-paper/scripts/check_paper.py +1 -1
- package/skills/flywheel-lookahead/references/flywheel-cli-tool-map.md +6 -5
- package/skills/flywheel-prove/assets/pipeline_template/src/tproof/cli.py +11 -6
- package/skills/flywheel-prove/scripts/scaffold_pipeline.py +0 -1
- package/skills/flywheel-repo/SKILL.md +47 -0
- package/skills/flywheel-repo/references/repository-commands.md +104 -0
- package/skills/flywheel-reproduce/references/flywheel-cli-tool-map.md +6 -5
- package/skills/flywheel-to-graph/references/flywheel-cli-tool-map.md +6 -5
- package/skills/flywheel-tree/scripts/render_tree.py +23 -24
- package/skills/flywheel-tree/scripts/render_tree_via_mcp.py +29 -28
- package/src/runtime/required-runtime-commands.json +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/commands/graph-operation.js +4 -0
- package/src/runtime/vendor/flywheel-cli-dist/commands/graph-operation.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-repository-snapshot.js +10 -4
- package/src/runtime/vendor/flywheel-cli-dist/commands/hosted-repository-snapshot.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry/hosted.js +65 -10
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry/hosted.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry/repository.js +69 -26
- package/src/runtime/vendor/flywheel-cli-dist/commands/registry/repository.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-operation.js +10 -0
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-operation.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-refusal-hints.js +20 -0
- package/src/runtime/vendor/flywheel-cli-dist/commands/repository-refusal-hints.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/commands/types.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/adapter.js +40 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/adapter.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/errors.js +10 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/errors.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/invariants.js +3 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/invariants.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/commits.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/constants.js +6 -4
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/constants.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/operation-identity.js +28 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/operation-identity.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/operations.js +61 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/models/operations.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/conflicts.js +22 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/conflicts.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/context.js +5 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/context.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/pull.js +40 -5
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/pull.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/replay.js +17 -9
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/rebase/replay.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/commit.js +3 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/commit.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/projection.js +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/projection.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/revert.js +3 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/service/revert.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/sync/local-pull.js +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/domain/sync/local-pull.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/projection.js +11 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/projection.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/recover-departed.js +371 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/recover-departed.js.map +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/pull.js +4 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/pull.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/push.js +13 -3
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/push.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/transport.js +15 -8
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/remote/transport.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/snapshot-diff.js +19 -4
- package/src/runtime/vendor/flywheel-cli-dist/local/runtime/snapshot-diff.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/apply.js +3 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/store/apply.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/contract.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/diagnostics.js +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/diagnostics.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/steps.js +29 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/steps.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/versions.js +2 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migration/versions.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations/008_boundaries_departures_and_author.sql +59 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations.js +1 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/store/migrations.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/pending.js +3 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/pending.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/nodes.js +7 -4
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/nodes.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/relations.js +8 -4
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/relations.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/rules.js +15 -6
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/rules.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/tags.js +36 -17
- package/src/runtime/vendor/flywheel-cli-dist/local/store/projection/tags.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/hosted.js +20 -6
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/hosted.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/replace.js +20 -3
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/replace.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/schema.js +2 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/store/snapshot/schema.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/schema.js +5 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/schema.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/store.js +41 -0
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sqlite/store.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sync.js +35 -2
- package/src/runtime/vendor/flywheel-cli-dist/local/store/sync.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/main.js +2 -0
- package/src/runtime/vendor/flywheel-cli-dist/main.js.map +1 -1
- package/src/runtime/vendor/flywheel-cli-dist/prebuilds/darwin-arm64/node.napi.node +0 -0
- package/src/runtime/vendor/flywheel-cli-dist/prebuilds/darwin-x64/node.napi.node +0 -0
- package/src/runtime/vendor/manifest.json +4 -7
|
@@ -13,17 +13,18 @@ from __future__ import annotations
|
|
|
13
13
|
import argparse
|
|
14
14
|
import asyncio
|
|
15
15
|
import builtins
|
|
16
|
+
import io
|
|
16
17
|
import json
|
|
17
18
|
import os
|
|
18
19
|
import re
|
|
19
20
|
import sys
|
|
20
21
|
import tomllib
|
|
22
|
+
from collections.abc import Iterable
|
|
21
23
|
from pathlib import Path
|
|
22
|
-
from typing import Any
|
|
24
|
+
from typing import Any
|
|
23
25
|
|
|
24
26
|
from mcp import ClientSession
|
|
25
27
|
from mcp.client.streamable_http import streamablehttp_client
|
|
26
|
-
|
|
27
28
|
from render_tree import render_tree_text
|
|
28
29
|
|
|
29
30
|
UUID_PATTERN = re.compile(
|
|
@@ -176,7 +177,7 @@ def _load_mcp_servers_from_config(config_path: Path) -> dict[str, Any]:
|
|
|
176
177
|
# Fallback for unusual file extensions.
|
|
177
178
|
try:
|
|
178
179
|
return _load_mcp_servers_from_toml(config_path)
|
|
179
|
-
except
|
|
180
|
+
except (tomllib.TOMLDecodeError, UnicodeDecodeError, TypeError, RuntimeError):
|
|
180
181
|
return _load_mcp_servers_from_json(config_path)
|
|
181
182
|
|
|
182
183
|
|
|
@@ -219,7 +220,7 @@ def _resolve_server_alias(
|
|
|
219
220
|
return requested_server_name
|
|
220
221
|
|
|
221
222
|
if requested_server_name != DEFAULT_CODEX_MCP_SERVER:
|
|
222
|
-
available = ", ".join(sorted(str(key) for key in mcp_servers
|
|
223
|
+
available = ", ".join(sorted(str(key) for key in mcp_servers))
|
|
223
224
|
raise RuntimeError(
|
|
224
225
|
f"MCP server '{requested_server_name}' not found in Codex config. "
|
|
225
226
|
f"Available: {available or 'none'}"
|
|
@@ -235,7 +236,7 @@ def _resolve_server_alias(
|
|
|
235
236
|
if alias.startswith(DEFAULT_CODEX_MCP_SERVER)
|
|
236
237
|
]
|
|
237
238
|
if not compatible_aliases:
|
|
238
|
-
available = ", ".join(sorted(str(key) for key in mcp_servers
|
|
239
|
+
available = ", ".join(sorted(str(key) for key in mcp_servers))
|
|
239
240
|
raise RuntimeError(
|
|
240
241
|
f"MCP server '{requested_server_name}' not found in Codex config. "
|
|
241
242
|
f"Available: {available or 'none'}"
|
|
@@ -526,25 +527,27 @@ async def _run(args: argparse.Namespace) -> str:
|
|
|
526
527
|
if args.access_token:
|
|
527
528
|
headers["Authorization"] = _normalize_auth_header_value(args.access_token)
|
|
528
529
|
|
|
529
|
-
async with
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
530
|
+
async with (
|
|
531
|
+
streamablehttp_client(
|
|
532
|
+
mcp_url,
|
|
533
|
+
headers=headers or None,
|
|
534
|
+
timeout=float(args.timeout_seconds),
|
|
535
|
+
sse_read_timeout=float(args.timeout_seconds),
|
|
536
|
+
) as (read_stream, write_stream, _get_session_id),
|
|
537
|
+
ClientSession(read_stream, write_stream) as session,
|
|
538
|
+
):
|
|
539
|
+
await session.initialize()
|
|
540
|
+
node_id = await _resolve_selector_to_node_id(
|
|
541
|
+
session=session,
|
|
542
|
+
selector=args.selector,
|
|
543
|
+
context_node_id=args.context_node_id,
|
|
544
|
+
)
|
|
545
|
+
tree_payload = await _fetch_tree_payload(
|
|
546
|
+
session=session,
|
|
547
|
+
node_id=node_id,
|
|
548
|
+
max_nodes=args.max_nodes,
|
|
549
|
+
projection=args.projection,
|
|
550
|
+
)
|
|
548
551
|
|
|
549
552
|
palette_path = Path(args.palette).resolve()
|
|
550
553
|
return render_tree_text(
|
|
@@ -679,10 +682,8 @@ def main() -> int:
|
|
|
679
682
|
print(f"render_tree_via_mcp.py error: {detail}", file=sys.stderr)
|
|
680
683
|
return 1
|
|
681
684
|
|
|
682
|
-
|
|
683
|
-
sys.stdout.reconfigure(encoding="utf-8")
|
|
684
|
-
except Exception: # noqa: BLE001
|
|
685
|
-
pass
|
|
685
|
+
if isinstance(sys.stdout, io.TextIOWrapper):
|
|
686
|
+
sys.stdout.reconfigure(encoding="utf-8")
|
|
686
687
|
|
|
687
688
|
sys.stdout.write(rendered)
|
|
688
689
|
if not rendered.endswith("\n"):
|
|
@@ -192,11 +192,15 @@ async function buildOperation(verb, params, context, identity) {
|
|
|
192
192
|
}
|
|
193
193
|
if (verb.startsWith('lineage:')) {
|
|
194
194
|
const adding = verb === 'lineage:add';
|
|
195
|
+
const parentRepositoryId = optionalString(params['parent-repository-id']);
|
|
195
196
|
return {
|
|
196
197
|
...identity,
|
|
197
198
|
type: adding ? 'lineage.add.v1' : 'lineage.remove.v1',
|
|
198
199
|
parent_node_id: requiredString(params, 'parent_node_id'),
|
|
199
200
|
child_node_id: requiredString(params, 'child_node_id'),
|
|
201
|
+
...(parentRepositoryId === null
|
|
202
|
+
? {}
|
|
203
|
+
: { parent_repository_id: parentRepositoryId }),
|
|
200
204
|
expected_relation_state: adding ? 'absent' : 'present',
|
|
201
205
|
};
|
|
202
206
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"graph-operation.js","sourceRoot":"","sources":["../../src/commands/graph-operation.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"graph-operation.js","sourceRoot":"","sources":["../../src/commands/graph-operation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { createHash, randomUUID } from 'node:crypto';
|
|
2
2
|
import { NODE_FIELDS } from './node-create-schema.js';
|
|
3
3
|
import { canonicalJson, digest, record } from './graph-operation-support.js';
|
|
4
|
+
import { SUPPORTED_SNAPSHOT_FORMATS } from '../local/runtime/remote/transport.js';
|
|
4
5
|
const SNAPSHOT_FIELDS = [
|
|
5
6
|
'artifact_references',
|
|
6
7
|
'artifacts',
|
|
@@ -15,7 +16,7 @@ const SNAPSHOT_FIELDS = [
|
|
|
15
16
|
'tag_definitions',
|
|
16
17
|
'tag_history',
|
|
17
18
|
];
|
|
18
|
-
const
|
|
19
|
+
const NODE_SOURCE_METADATA_KEYS = [
|
|
19
20
|
'source_created_at',
|
|
20
21
|
'source_updated_at',
|
|
21
22
|
'source_timestamps_recovered_by_commit_id',
|
|
@@ -31,6 +32,9 @@ export async function loadHostedRepositorySnapshot(context, repositoryId) {
|
|
|
31
32
|
object_mode: 'lazy',
|
|
32
33
|
},
|
|
33
34
|
idempotencyKey: sessionId,
|
|
35
|
+
extraHeaders: {
|
|
36
|
+
'x-flywheel-supported-snapshot-formats': SUPPORTED_SNAPSHOT_FORMATS,
|
|
37
|
+
},
|
|
34
38
|
}));
|
|
35
39
|
const totalChunks = session.total_chunks;
|
|
36
40
|
if (session.session_id !== sessionId ||
|
|
@@ -214,7 +218,8 @@ function parseSnapshot(bytes, repositoryId) {
|
|
|
214
218
|
[...SNAPSHOT_FIELDS].sort().join(',') ||
|
|
215
219
|
(payload.format !== 'flywheel.repository.projection.v1' &&
|
|
216
220
|
payload.format !== 'flywheel.repository.projection.v2' &&
|
|
217
|
-
payload.format !== 'flywheel.repository.projection.v3'
|
|
221
|
+
payload.format !== 'flywheel.repository.projection.v3' &&
|
|
222
|
+
payload.format !== 'flywheel.repository.projection.v4') ||
|
|
218
223
|
payload.repository_id !== repositoryId) {
|
|
219
224
|
throw new Error('repository transfer snapshot is invalid');
|
|
220
225
|
}
|
|
@@ -225,8 +230,9 @@ function parseSnapshot(bytes, repositoryId) {
|
|
|
225
230
|
if (!Array.isArray(rows) ||
|
|
226
231
|
rows.some((row) => row === null || typeof row !== 'object' || Array.isArray(row)) ||
|
|
227
232
|
(field === 'nodes' &&
|
|
228
|
-
payload.format === 'flywheel.repository.projection.v3'
|
|
229
|
-
|
|
233
|
+
(payload.format === 'flywheel.repository.projection.v3' ||
|
|
234
|
+
payload.format === 'flywheel.repository.projection.v4') &&
|
|
235
|
+
rows.some((row) => NODE_SOURCE_METADATA_KEYS.some((key) => !(key in row))))) {
|
|
230
236
|
throw new Error('repository transfer snapshot rows are invalid');
|
|
231
237
|
}
|
|
232
238
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hosted-repository-snapshot.js","sourceRoot":"","sources":["../../src/commands/hosted-repository-snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"hosted-repository-snapshot.js","sourceRoot":"","sources":["../../src/commands/hosted-repository-snapshot.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,40 @@ const EXPECTED_HEAD = {
|
|
|
16
16
|
type: 'string',
|
|
17
17
|
description: 'Expected hosted head; skips the automatic head read.',
|
|
18
18
|
};
|
|
19
|
+
const PARENT_REPOSITORY_ID = {
|
|
20
|
+
name: 'parent-repository-id',
|
|
21
|
+
type: 'string',
|
|
22
|
+
description: 'Repository UUID holding the lineage parent; omit it when the parent is in --repository-id.',
|
|
23
|
+
};
|
|
24
|
+
const DEPARTED_NODE_ERROR = {
|
|
25
|
+
code: 'repository_node_departed',
|
|
26
|
+
remediation: 'The node now belongs to current_repository_id. This repository-bound write is never redirected; retry it explicitly against the current repository.',
|
|
27
|
+
};
|
|
28
|
+
export const CLIENT_VERSION_UNSUPPORTED_ERROR = {
|
|
29
|
+
code: 'client_version_unsupported',
|
|
30
|
+
remediation: 'This client is below the server minimum. Run `flywheel update --yes`, then retry; the refused request changed nothing.',
|
|
31
|
+
};
|
|
32
|
+
const DEPARTED_NODE_VERBS = {
|
|
33
|
+
'node:create': true,
|
|
34
|
+
'node:set': true,
|
|
35
|
+
'node:tombstone': true,
|
|
36
|
+
'node:restore': true,
|
|
37
|
+
'node:branch': true,
|
|
38
|
+
'node:merge': true,
|
|
39
|
+
'tag:define': true,
|
|
40
|
+
'tag:update': true,
|
|
41
|
+
'tag:retire': true,
|
|
42
|
+
'node-tag:assign': true,
|
|
43
|
+
'node-tag:remove': true,
|
|
44
|
+
'lineage:add': true,
|
|
45
|
+
'lineage:remove': true,
|
|
46
|
+
'containment:assign': true,
|
|
47
|
+
'containment:remove': true,
|
|
48
|
+
'edge:add': true,
|
|
49
|
+
'artifact:attach': true,
|
|
50
|
+
'artifact:detach': true,
|
|
51
|
+
'artifact:set-metadata': true,
|
|
52
|
+
};
|
|
19
53
|
function outputFor(verb) {
|
|
20
54
|
const resourceField = verb.startsWith('node:')
|
|
21
55
|
? 'node_id'
|
|
@@ -45,14 +79,35 @@ function hostedDefinition(verb) {
|
|
|
45
79
|
const local = REPOSITORY_COMMANDS.find((command) => command.name === localName);
|
|
46
80
|
if (!local)
|
|
47
81
|
throw new Error(`missing local graph command: ${localName}`);
|
|
48
|
-
const optional = local.optional.filter((parameter) => parameter.name !==
|
|
49
|
-
parameter.name !==
|
|
50
|
-
parameter.name !==
|
|
82
|
+
const optional = local.optional.filter((parameter) => parameter.name !== 'schema' &&
|
|
83
|
+
parameter.name !== 'repo' &&
|
|
84
|
+
parameter.name !== 'personal');
|
|
85
|
+
if (verb === 'lineage:add' || verb === 'lineage:remove') {
|
|
86
|
+
optional.push(PARENT_REPOSITORY_ID);
|
|
87
|
+
}
|
|
88
|
+
const examples = local.examples.slice(0, 1).map((example) => ({
|
|
89
|
+
description: example.description
|
|
90
|
+
.replace(/^Stage /, 'Commit ')
|
|
91
|
+
.replace('selected local repository', 'this hosted repository'),
|
|
92
|
+
invocation: example.invocation
|
|
93
|
+
.replace(/ --repo(?:=| )<[^>]+>/, '')
|
|
94
|
+
.replace(localName, `${name} --repository-id=<uuid>`),
|
|
95
|
+
}));
|
|
96
|
+
if (verb === 'lineage:add' || verb === 'lineage:remove') {
|
|
97
|
+
examples.push({
|
|
98
|
+
description: verb === 'lineage:add'
|
|
99
|
+
? 'Commit a lineage boundary whose parent remains in another repository.'
|
|
100
|
+
: 'Remove a lineage boundary whose parent remains in another repository.',
|
|
101
|
+
invocation: `flywheel ${name} --repository-id=<child_repository_id> <parent_node_id> <child_node_id> --parent-repository-id=<parent_repository_id> --format=json`,
|
|
102
|
+
});
|
|
103
|
+
}
|
|
51
104
|
return {
|
|
52
105
|
...local,
|
|
53
106
|
name,
|
|
54
107
|
group: 'hosted-graph',
|
|
55
|
-
summary: local.summary
|
|
108
|
+
summary: local.summary
|
|
109
|
+
.replace(/^Stage /, 'Commit ')
|
|
110
|
+
.replace('selected local repository', 'this hosted repository'),
|
|
56
111
|
endpoints: [
|
|
57
112
|
'GET /repositories/{repository_id}/head',
|
|
58
113
|
'POST /repositories/{repository_id}/commits',
|
|
@@ -62,14 +117,14 @@ function hostedDefinition(verb) {
|
|
|
62
117
|
...local.required.filter((parameter) => parameter.name !== 'repo'),
|
|
63
118
|
],
|
|
64
119
|
optional: [...optional, MESSAGE, EXPECTED_HEAD],
|
|
65
|
-
examples
|
|
66
|
-
description: example.description.replace(/^Stage /, 'Commit '),
|
|
67
|
-
invocation: example.invocation
|
|
68
|
-
.replace(/ --repo(?:=| )<[^>]+>/, '')
|
|
69
|
-
.replace(localName, `${name} --repository-id=<uuid>`),
|
|
70
|
-
})),
|
|
120
|
+
examples,
|
|
71
121
|
related: local.related.map((related) => related.startsWith('repo:') ? `hosted:${related.slice('repo:'.length)}` : related),
|
|
72
122
|
output: outputFor(verb),
|
|
123
|
+
errors: [
|
|
124
|
+
...(local.errors ?? []),
|
|
125
|
+
...(DEPARTED_NODE_VERBS[verb] ? [DEPARTED_NODE_ERROR] : []),
|
|
126
|
+
CLIENT_VERSION_UNSUPPORTED_ERROR,
|
|
127
|
+
],
|
|
73
128
|
schema: undefined,
|
|
74
129
|
};
|
|
75
130
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hosted.js","sourceRoot":"","sources":["../../../src/commands/registry/hosted.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gCAAgC,EAChC,kCAAkC,GACnC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAO7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAEtD,MAAM,aAAa,GAAiB;IAClC,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,yBAAyB;CACvC,CAAC;AACF,MAAM,OAAO,GAAiB;IAC5B,IAAI,EAAE,SAAS;IACf,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,wBAAwB;CACtC,CAAC;AACF,MAAM,aAAa,GAAiB;IAClC,IAAI,EAAE,eAAe;IACrB,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,sDAAsD;CACpE,CAAC;
|
|
1
|
+
{"version":3,"file":"hosted.js","sourceRoot":"","sources":["../../../src/commands/registry/hosted.ts"],"names":[],"mappings":"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"}
|
|
@@ -21,6 +21,18 @@ const PERSONAL = booleanParam("personal", "Use the configured personal repositor
|
|
|
21
21
|
const AT_HEAD = param("at_head", "Real committed-head consistency guard, not a historical selector. Required with committed --after; optional with --staged, whose cursor also supports a null base.");
|
|
22
22
|
const AFTER = param("after", "Use next_cursor from the same collection: committed numeric offsets require --at_head; opaque --staged cursors do not. Restart without --after if the base, saved batch, repository, or query changes.");
|
|
23
23
|
const LOG_AFTER = param("after", "Continuation cursor.");
|
|
24
|
+
const CLIENT_VERSION_UNSUPPORTED_ERROR = {
|
|
25
|
+
code: "client_version_unsupported",
|
|
26
|
+
remediation: "This client is below the server's minimum repository-sync version. Run `flywheel update --yes`, then retry; no local repository state was changed.",
|
|
27
|
+
};
|
|
28
|
+
const SNAPSHOT_FORMAT_UNSUPPORTED_ERROR = {
|
|
29
|
+
code: "repository_snapshot_format_unsupported",
|
|
30
|
+
remediation: "The server cannot produce a snapshot format this client declared. Run `flywheel update --yes`, then retry; no local repository state was changed.",
|
|
31
|
+
};
|
|
32
|
+
const DEPARTED_NODE_ERROR = {
|
|
33
|
+
code: "repository_node_departed",
|
|
34
|
+
remediation: "The error names current_repository_id. This repository-bound write is never redirected. Run flywheel repo:recover-departed <current_repository_id> <directory> --repo <source-checkout>; the refusal leaves local state unchanged.",
|
|
35
|
+
};
|
|
24
36
|
const projectionSpecs = [
|
|
25
37
|
[
|
|
26
38
|
"repo:node:get",
|
|
@@ -37,7 +49,7 @@ const projectionSpecs = [
|
|
|
37
49
|
[
|
|
38
50
|
"repo:lineage:list",
|
|
39
51
|
"node_id",
|
|
40
|
-
"List lineage relations.",
|
|
52
|
+
"List lineage relations with parent_repository_id and boundary status.",
|
|
41
53
|
"GET /v1/repositories/{repository_id}/lineage",
|
|
42
54
|
],
|
|
43
55
|
[
|
|
@@ -172,9 +184,11 @@ const ARTIFACT_DOWNLOAD_COMMAND = {
|
|
|
172
184
|
},
|
|
173
185
|
],
|
|
174
186
|
related: ["repo:artifact:get"],
|
|
187
|
+
errors: [CLIENT_VERSION_UNSUPPORTED_ERROR],
|
|
175
188
|
};
|
|
176
189
|
const directory = param("directory", "Target repository directory.");
|
|
177
190
|
const repositoryId = param("repository_id", "Hosted repository UUID.");
|
|
191
|
+
const currentRepositoryId = param("current_repository_id", "Repository UUID that now holds the departed node.");
|
|
178
192
|
const archive = param("archive", "Verified Flywheel backup archive.");
|
|
179
193
|
const emptyDirectory = param("empty_directory", "Absent or empty restore target.");
|
|
180
194
|
const commitId = param("commit_id", "Canonical commit ID.");
|
|
@@ -183,7 +197,7 @@ const conflictId = param("conflict_id", "Conflict UUID.");
|
|
|
183
197
|
const rebaseId = param("rebase_id", "Rebase UUID returned by pull or conflict reads.");
|
|
184
198
|
const OPERATION_COMMANDS = [
|
|
185
199
|
{
|
|
186
|
-
...operation("repo:init", "
|
|
200
|
+
...operation("repo:init", "Initialize or adopt the selected local repository at a directory; this command does not choose a hosted default workspace or fork.", "stdio bootstrap", {
|
|
187
201
|
repo: false,
|
|
188
202
|
optional: [directory, PERSONAL],
|
|
189
203
|
positionals: [directory],
|
|
@@ -208,16 +222,22 @@ const OPERATION_COMMANDS = [
|
|
|
208
222
|
],
|
|
209
223
|
related: ["repo:node:create", "repo:status"],
|
|
210
224
|
},
|
|
211
|
-
|
|
212
|
-
repo:
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
225
|
+
{
|
|
226
|
+
...operation("repo:clone", "Clone a projection v4 hosted repository, including boundary-parent and cross-repository tag-scope identities, into a new local directory.", "stdio bootstrap", {
|
|
227
|
+
repo: false,
|
|
228
|
+
group: "repo-sync",
|
|
229
|
+
required: [repositoryId],
|
|
230
|
+
optional: [
|
|
231
|
+
directory,
|
|
232
|
+
param("objects", "Object transfer mode: lazy defers artifact bytes for repo:artifact:download; all downloads every reachable object.", ["lazy", "all"]),
|
|
233
|
+
],
|
|
234
|
+
positionals: [repositoryId, directory],
|
|
235
|
+
}),
|
|
236
|
+
errors: [
|
|
237
|
+
CLIENT_VERSION_UNSUPPORTED_ERROR,
|
|
238
|
+
SNAPSHOT_FORMAT_UNSUPPORTED_ERROR,
|
|
218
239
|
],
|
|
219
|
-
|
|
220
|
-
}),
|
|
240
|
+
},
|
|
221
241
|
operation("repo:restore", "Restore a verified backup archive into an empty directory.", "stdio bootstrap", {
|
|
222
242
|
repo: false,
|
|
223
243
|
group: "repo-sync",
|
|
@@ -243,7 +263,7 @@ const OPERATION_COMMANDS = [
|
|
|
243
263
|
}),
|
|
244
264
|
endpoints: ["GET /v1/repositories/{repository_id}/doctor", "POST /v1/repositories/{repository_id}/doctor"],
|
|
245
265
|
},
|
|
246
|
-
operation("repo:commit", "Commit the exact current staging digest.", "POST /v1/repositories/{repository_id}/commits", {
|
|
266
|
+
operation("repo:commit", "Commit the exact current staging digest with its immutable author principal.", "POST /v1/repositories/{repository_id}/commits", {
|
|
247
267
|
optional: [param("message", "Commit message.")],
|
|
248
268
|
}),
|
|
249
269
|
operation("repo:log", "List commits reachable from the local head, newest first.", "GET /v1/repositories/{repository_id}/commits", {
|
|
@@ -279,12 +299,18 @@ const OPERATION_COMMANDS = [
|
|
|
279
299
|
},
|
|
280
300
|
],
|
|
281
301
|
},
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
302
|
+
{
|
|
303
|
+
...operation("repo:pull", "Pull and atomically apply hosted history, preserving boundary references and removing departed nodes while reporting each target_repository_id.", "POST /v1/repositories/{repository_id}/sync/pulls", {
|
|
304
|
+
group: "repo-sync",
|
|
305
|
+
optional: [
|
|
306
|
+
param("objects", "Object transfer mode: lazy defers artifact bytes for repo:artifact:download; all downloads every reachable object.", ["lazy", "all"]),
|
|
307
|
+
],
|
|
308
|
+
}),
|
|
309
|
+
errors: [
|
|
310
|
+
CLIENT_VERSION_UNSUPPORTED_ERROR,
|
|
311
|
+
SNAPSHOT_FORMAT_UNSUPPORTED_ERROR,
|
|
286
312
|
],
|
|
287
|
-
}
|
|
313
|
+
},
|
|
288
314
|
{
|
|
289
315
|
...operation("repo:push", "Publish local commits to the hosted repository (use --create-remote for the first publication).", "POST /v1/repositories/{repository_id}/sync/pushes", {
|
|
290
316
|
group: "repo-sync",
|
|
@@ -307,6 +333,8 @@ const OPERATION_COMMANDS = [
|
|
|
307
333
|
},
|
|
308
334
|
],
|
|
309
335
|
errors: [
|
|
336
|
+
DEPARTED_NODE_ERROR,
|
|
337
|
+
CLIENT_VERSION_UNSUPPORTED_ERROR,
|
|
310
338
|
{
|
|
311
339
|
code: "repository_not_found",
|
|
312
340
|
remediation: "No hosted repository exists for this local one. First publication: add --create-remote. If the hosted repository was retired, create a new local repository with repo:init and re-import.",
|
|
@@ -333,11 +361,26 @@ const OPERATION_COMMANDS = [
|
|
|
333
361
|
},
|
|
334
362
|
],
|
|
335
363
|
},
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
364
|
+
{
|
|
365
|
+
...operation("repo:recover-departed", "Clone the repository that now holds a departed node and replay the selected source checkout's unpublished commits there. If interrupted, delete the destination clone and re-run; a partially recovered checkout must not be reused or pushed.", "stdio bootstrap", {
|
|
366
|
+
group: "repo-sync",
|
|
367
|
+
required: [currentRepositoryId, directory],
|
|
368
|
+
positionals: [currentRepositoryId, directory],
|
|
369
|
+
}),
|
|
370
|
+
examples: [{
|
|
371
|
+
description: "Recover a refused departed-node write in one client-side follow-up; the original hosted write is never redirected.",
|
|
372
|
+
invocation: "flywheel repo:recover-departed <current_repository_id> <directory> --repo <source-checkout>",
|
|
373
|
+
}],
|
|
374
|
+
errors: [CLIENT_VERSION_UNSUPPORTED_ERROR, SNAPSHOT_FORMAT_UNSUPPORTED_ERROR],
|
|
375
|
+
},
|
|
376
|
+
{
|
|
377
|
+
...operation("repo:purge", "Permanently remove one node from the hosted repository and local history (irreversible; requires --confirm).", "POST /v1/repositories/{repository_id}/sync/purges", {
|
|
378
|
+
group: "repo-sync",
|
|
379
|
+
required: [nodeId, param("confirm", "Exact node UUID confirmation.")],
|
|
380
|
+
positionals: [nodeId],
|
|
381
|
+
}),
|
|
382
|
+
errors: [DEPARTED_NODE_ERROR, CLIENT_VERSION_UNSUPPORTED_ERROR],
|
|
383
|
+
},
|
|
341
384
|
operation("repo:backup", "Create and verify a local repository backup.", "POST /v1/repositories/{repository_id}/backups", {
|
|
342
385
|
group: "repo-sync",
|
|
343
386
|
required: [param("destination", "Backup destination path.")],
|
|
@@ -387,7 +430,7 @@ const ownerId = param("owner_id", "Artifact owner UUID.");
|
|
|
387
430
|
const artifactId = param("artifact_id", "Artifact UUID.");
|
|
388
431
|
const EDIT_COMMANDS = [
|
|
389
432
|
{
|
|
390
|
-
...edit("repo:node:create", "Stage a
|
|
433
|
+
...edit("repo:node:create", "Stage a root node in the selected local repository from --title or the full six-field JSON values file; this command never creates or selects another repository.", [], [], [
|
|
391
434
|
param("title", "Minimal node title."),
|
|
392
435
|
booleanParam("schema", "Print the six-field node-create schema and example."),
|
|
393
436
|
param("values-file", "JSON file containing exactly six node fields."),
|
|
@@ -421,9 +464,9 @@ const EDIT_COMMANDS = [
|
|
|
421
464
|
edit("repo:node:set", "Stage a new value for one field of a node.", [nodeId], [param("field", "D02 node field."), param("value-file", "New value file.")]),
|
|
422
465
|
edit("repo:node:tombstone", "Stage the removal of a node; its history stays in the repository.", [nodeId]),
|
|
423
466
|
edit("repo:node:restore", "Stage the restoration of a tombstoned node.", [nodeId]),
|
|
424
|
-
edit("repo:node:branch", "Stage one branched node and one lineage relation copying the source's title.", [nodeId]),
|
|
467
|
+
edit("repo:node:branch", "Stage one branched node in the selected local repository and one lineage relation copying the source's title.", [nodeId]),
|
|
425
468
|
{
|
|
426
|
-
...edit("repo:node:merge", "Stage one merged node and one lineage relation from each supplied source, in argument order.", [], [
|
|
469
|
+
...edit("repo:node:merge", "Stage one merged node in the selected local repository and one lineage relation from each supplied source, in argument order.", [], [
|
|
427
470
|
param("source", "Source node UUID; repeat --source for each source node."),
|
|
428
471
|
]),
|
|
429
472
|
examples: [
|
|
@@ -438,7 +481,7 @@ const EDIT_COMMANDS = [
|
|
|
438
481
|
edit("repo:tag:retire", "Stage the retirement of a tag definition.", [scopeNode, tagId]),
|
|
439
482
|
edit("repo:node-tag:assign", "Stage assigning a tag to a node.", [scopeNode, nodeId, tagId]),
|
|
440
483
|
edit("repo:node-tag:remove", "Stage removing a tag from a node.", [scopeNode, nodeId, tagId]),
|
|
441
|
-
edit("repo:lineage:add", "Stage a parent-child lineage relation
|
|
484
|
+
edit("repo:lineage:add", "Stage a parent-child lineage relation.", [
|
|
442
485
|
param("parent_node_id", "Parent node UUID."),
|
|
443
486
|
param("child_node_id", "Child node UUID."),
|
|
444
487
|
]),
|