@tinyrack/dotweave 0.45.0 → 0.46.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../src/cli/autocomplete.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EACL,KAAK,WAAW,EAIjB,MAAM,eAAe,CAAC;AAWvB,eAAO,MAAM,cAAc,GAAI,KAAK,WAAW,CAAC,kBAAkB,CAAC,SAElE,CAAC;AAqEF,eAAO,MAAM,sBAAsB;;;CAgBlC,CAAC"}
1
+ {"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../src/cli/autocomplete.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EACL,KAAK,WAAW,EAIjB,MAAM,eAAe,CAAC;AAYvB,eAAO,MAAM,cAAc,GAAI,KAAK,WAAW,CAAC,kBAAkB,CAAC,SAElE,CAAC;AAyEF,eAAO,MAAM,sBAAsB;;;CAiBlC,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { buildCommand, buildRouteMap, proposeCompletions, } from "@stricli/core";
2
- import { BASH_AUTOCOMPLETE_SCRIPT, POWERSHELL_AUTOCOMPLETE_SCRIPT, resolveCompletionInputs, ZSH_AUTOCOMPLETE_SCRIPT, } from "#app/services/autocomplete.ts";
2
+ import { BASH_AUTOCOMPLETE_SCRIPT, FISH_AUTOCOMPLETE_SCRIPT, POWERSHELL_AUTOCOMPLETE_SCRIPT, resolveCompletionInputs, ZSH_AUTOCOMPLETE_SCRIPT, } from "#app/services/autocomplete.ts";
3
3
  let _application;
4
4
  export const setApplication = (app) => {
5
5
  _application = app;
@@ -18,6 +18,7 @@ const buildAutocompleteScriptCommand = (shell, script) => {
18
18
  };
19
19
  const bashAutocompleteCommand = buildAutocompleteScriptCommand("bash", BASH_AUTOCOMPLETE_SCRIPT);
20
20
  const zshAutocompleteCommand = buildAutocompleteScriptCommand("zsh", ZSH_AUTOCOMPLETE_SCRIPT);
21
+ const fishAutocompleteCommand = buildAutocompleteScriptCommand("fish", FISH_AUTOCOMPLETE_SCRIPT);
21
22
  const powershellAutocompleteCommand = buildAutocompleteScriptCommand("powershell", POWERSHELL_AUTOCOMPLETE_SCRIPT);
22
23
  const completeCommand = buildCommand({
23
24
  docs: {
@@ -57,6 +58,7 @@ export const buildAutocompleteRoute = () => {
57
58
  },
58
59
  routes: {
59
60
  bash: bashAutocompleteCommand,
61
+ fish: fishAutocompleteCommand,
60
62
  powershell: powershellAutocompleteCommand,
61
63
  zsh: zshAutocompleteCommand,
62
64
  },
@@ -1 +1 @@
1
- {"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../src/cli/autocomplete.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EACZ,aAAa,EACb,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,+BAA+B,CAAC;AAGvC,IAAI,YAAyD,CAAC;AAE9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAoC,EAAE,EAAE;IACrE,YAAY,GAAG,GAAG,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,8BAA8B,GAAG,CACrC,KAAoC,EACpC,MAAc,EACd,EAAE;IACF,OAAO,YAAY,CAAkC;QACnD,IAAI,EAAE;YACJ,KAAK,EAAE,SAAS,KAAK,sBAAsB;YAC3C,eAAe,EAAE,UAAU,KAAK,qEAAqE,KAAK,OAAO;SAClH;QACD,IAAI,EAAE,GAAG,EAAE;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,UAAU,EAAE,EAAE;KACf,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,8BAA8B,CAC5D,MAAM,EACN,wBAAwB,CACzB,CAAC;AACF,MAAM,sBAAsB,GAAG,8BAA8B,CAC3D,KAAK,EACL,uBAAuB,CACxB,CAAC;AACF,MAAM,6BAA6B,GAAG,8BAA8B,CAClE,YAAY,EACZ,8BAA8B,CAC/B,CAAC;AAEF,MAAM,eAAe,GAAG,YAAY,CAAwC;IAC1E,IAAI,EAAE;QACJ,KAAK,EAAE,6BAA6B;KACrC;IACD,IAAI,EAAE,KAAK,WAAW,MAAM,EAAE,GAAG,MAAM;QACrC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAC1C,YAAY,EACZ,uBAAuB,CAAC,MAAM,CAAC,EAC/B,IAAI,CACL,CAAC;QAEF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,WAAW;aACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;aACpE,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,UAAU,EAAE;QACV,UAAU,EAAE;YACV,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,CAAC;YACV,SAAS,EAAE;gBACT,KAAK,EAAE,wBAAwB;gBAC/B,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,OAAO;aACrB;SACF;KACF;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,EAAE;IACzC,OAAO;QACL,iBAAiB,EAAE,aAAa,CAAC;YAC/B,IAAI,EAAE;gBACJ,KAAK,EAAE,kCAAkC;gBACzC,eAAe,EACb,+EAA+E;aAClF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,uBAAuB;gBAC7B,UAAU,EAAE,6BAA6B;gBACzC,GAAG,EAAE,sBAAsB;aAC5B;SACF,CAAC;QACF,eAAe;KAChB,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../src/cli/autocomplete.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EACZ,aAAa,EACb,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,wBAAwB,EACxB,wBAAwB,EACxB,8BAA8B,EAC9B,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,+BAA+B,CAAC;AAGvC,IAAI,YAAyD,CAAC;AAE9D,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,GAAoC,EAAE,EAAE;IACrE,YAAY,GAAG,GAAG,CAAC;AACrB,CAAC,CAAC;AAEF,MAAM,8BAA8B,GAAG,CACrC,KAA6C,EAC7C,MAAc,EACd,EAAE;IACF,OAAO,YAAY,CAAkC;QACnD,IAAI,EAAE;YACJ,KAAK,EAAE,SAAS,KAAK,sBAAsB;YAC3C,eAAe,EAAE,UAAU,KAAK,qEAAqE,KAAK,OAAO;SAClH;QACD,IAAI,EAAE,GAAG,EAAE;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,UAAU,EAAE,EAAE;KACf,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,uBAAuB,GAAG,8BAA8B,CAC5D,MAAM,EACN,wBAAwB,CACzB,CAAC;AACF,MAAM,sBAAsB,GAAG,8BAA8B,CAC3D,KAAK,EACL,uBAAuB,CACxB,CAAC;AACF,MAAM,uBAAuB,GAAG,8BAA8B,CAC5D,MAAM,EACN,wBAAwB,CACzB,CAAC;AACF,MAAM,6BAA6B,GAAG,8BAA8B,CAClE,YAAY,EACZ,8BAA8B,CAC/B,CAAC;AAEF,MAAM,eAAe,GAAG,YAAY,CAAwC;IAC1E,IAAI,EAAE;QACJ,KAAK,EAAE,6BAA6B;KACrC;IACD,IAAI,EAAE,KAAK,WAAW,MAAM,EAAE,GAAG,MAAM;QACrC,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAC1C,YAAY,EACZ,uBAAuB,CAAC,MAAM,CAAC,EAC/B,IAAI,CACL,CAAC;QAEF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,WAAW;aACtB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;aACpE,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,UAAU,EAAE;QACV,UAAU,EAAE;YACV,IAAI,EAAE,OAAO;YACb,OAAO,EAAE,CAAC;YACV,SAAS,EAAE;gBACT,KAAK,EAAE,wBAAwB;gBAC/B,KAAK,EAAE,MAAM;gBACb,WAAW,EAAE,OAAO;aACrB;SACF;KACF;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,EAAE;IACzC,OAAO;QACL,iBAAiB,EAAE,aAAa,CAAC;YAC/B,IAAI,EAAE;gBACJ,KAAK,EAAE,kCAAkC;gBACzC,eAAe,EACb,+EAA+E;aAClF;YACD,MAAM,EAAE;gBACN,IAAI,EAAE,uBAAuB;gBAC7B,IAAI,EAAE,uBAAuB;gBAC7B,UAAU,EAAE,6BAA6B;gBACzC,GAAG,EAAE,sBAAsB;aAC5B;SACF,CAAC;QACF,eAAe;KAChB,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { PlatformStringValue } from "#app/config/platform.ts";
2
+ import type { PlatformPermission, PlatformSyncMode } from "#app/config/sync-schema.ts";
3
+ export type PlatformFlagKey = "default" | "win" | "mac" | "linux" | "wsl";
4
+ export declare const parsePlatformStringFlags: (flagName: string, values: readonly string[] | undefined) => PlatformStringValue | undefined;
5
+ export declare const parsePlatformStringOverrideFlags: (flagName: string, values: readonly string[] | undefined) => Partial<PlatformStringValue> | undefined;
6
+ export declare const parsePlatformModeFlags: (flagName: string, values: readonly string[] | undefined) => PlatformSyncMode | undefined;
7
+ export declare const parsePlatformPermissionFlags: (flagName: string, values: readonly string[] | undefined) => PlatformPermission | undefined;
8
+ //# sourceMappingURL=platform-flags.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-flags.d.ts","sourceRoot":"","sources":["../../src/cli/platform-flags.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAEjB,MAAM,4BAA4B,CAAC;AAIpC,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,OAAO,GAAG,KAAK,CAAC;AA8E1E,eAAO,MAAM,wBAAwB,GACnC,UAAU,MAAM,EAChB,QAAQ,SAAS,MAAM,EAAE,GAAG,SAAS,KACpC,mBAAmB,GAAG,SAIxB,CAAC;AAEF,eAAO,MAAM,gCAAgC,GAC3C,UAAU,MAAM,EAChB,QAAQ,SAAS,MAAM,EAAE,GAAG,SAAS,KACpC,OAAO,CAAC,mBAAmB,CAAC,GAAG,SAIjC,CAAC;AAEF,eAAO,MAAM,sBAAsB,GACjC,UAAU,MAAM,EAChB,QAAQ,SAAS,MAAM,EAAE,GAAG,SAAS,KACpC,gBAAgB,GAAG,SAcrB,CAAC;AAEF,eAAO,MAAM,4BAA4B,GACvC,UAAU,MAAM,EAChB,QAAQ,SAAS,MAAM,EAAE,GAAG,SAAS,KACpC,kBAAkB,GAAG,SAiBvB,CAAC"}
@@ -0,0 +1,85 @@
1
+ import { AppConstants } from "#app/config/constants.ts";
2
+ import { DotweaveError } from "#app/lib/error.ts";
3
+ import { isPermissionOctal } from "#app/lib/file-mode.ts";
4
+ const platformFlagKeys = new Set([
5
+ "default",
6
+ "win",
7
+ "mac",
8
+ "linux",
9
+ "wsl",
10
+ ]);
11
+ const syncModes = new Set(AppConstants.SYNC.MODES);
12
+ const parsePlatformFlagValues = (flagName, values, options) => {
13
+ if (values === undefined || values.length === 0) {
14
+ return undefined;
15
+ }
16
+ const parsed = {};
17
+ for (const rawValue of values) {
18
+ const separatorIndex = rawValue.indexOf("=");
19
+ const key = separatorIndex === -1 ? "default" : rawValue.slice(0, separatorIndex);
20
+ const value = separatorIndex === -1 ? rawValue : rawValue.slice(separatorIndex + 1);
21
+ if (key.length === 0 ||
22
+ value.length === 0 ||
23
+ !platformFlagKeys.has(key) ||
24
+ (!options.allowDefault && key === "default")) {
25
+ throw new DotweaveError(`Invalid --${flagName} platform value.`, {
26
+ code: "INVALID_PLATFORM_FLAG",
27
+ hint: options.allowDefault
28
+ ? `Use --${flagName} value or --${flagName} platform=value.`
29
+ : `Use --${flagName} platform=value with win, mac, linux, or wsl.`,
30
+ });
31
+ }
32
+ const platformKey = key;
33
+ if (parsed[platformKey] !== undefined) {
34
+ throw new DotweaveError(`Duplicate --${flagName} platform value.`, {
35
+ code: "DUPLICATE_PLATFORM_FLAG",
36
+ details: [`Platform '${platformKey}' was specified more than once.`],
37
+ });
38
+ }
39
+ parsed[platformKey] = value;
40
+ }
41
+ return parsed;
42
+ };
43
+ const mapPlatformValues = (parsed, validate) => {
44
+ if (parsed === undefined) {
45
+ return undefined;
46
+ }
47
+ const mapped = {};
48
+ for (const [key, value] of Object.entries(parsed)) {
49
+ mapped[key] = validate(value);
50
+ }
51
+ return mapped;
52
+ };
53
+ export const parsePlatformStringFlags = (flagName, values) => {
54
+ return parsePlatformFlagValues(flagName, values, {
55
+ allowDefault: true,
56
+ });
57
+ };
58
+ export const parsePlatformStringOverrideFlags = (flagName, values) => {
59
+ return parsePlatformFlagValues(flagName, values, {
60
+ allowDefault: false,
61
+ });
62
+ };
63
+ export const parsePlatformModeFlags = (flagName, values) => {
64
+ return mapPlatformValues(parsePlatformFlagValues(flagName, values, { allowDefault: true }), (value) => {
65
+ if (!syncModes.has(value)) {
66
+ throw new DotweaveError(`Invalid --${flagName} mode '${value}'.`, {
67
+ code: "INVALID_SYNC_MODE",
68
+ hint: `Use one of: ${AppConstants.SYNC.MODES.join(", ")}.`,
69
+ });
70
+ }
71
+ return value;
72
+ });
73
+ };
74
+ export const parsePlatformPermissionFlags = (flagName, values) => {
75
+ return mapPlatformValues(parsePlatformFlagValues(flagName, values, { allowDefault: true }), (value) => {
76
+ if (!isPermissionOctal(value)) {
77
+ throw new DotweaveError(`Invalid --${flagName} permission '${value}'.`, {
78
+ code: "INVALID_PERMISSION",
79
+ hint: "Use a 4-character octal permission like '0600' or '0755'.",
80
+ });
81
+ }
82
+ return value;
83
+ });
84
+ };
85
+ //# sourceMappingURL=platform-flags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform-flags.js","sourceRoot":"","sources":["../../src/cli/platform-flags.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/cli/track.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAmBxD,QAAA,MAAM,YAAY,qDAmIhB,CAAC;AAEH,eAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/cli/track.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAsCxD,QAAA,MAAM,YAAY,qDAuLhB,CAAC;AAEH,eAAe,YAAY,CAAC"}
package/dist/cli/track.js CHANGED
@@ -6,29 +6,42 @@ import { setTargetMode } from "#app/services/sync-mode.ts";
6
6
  import { createCliLogger } from "#app/services/terminal/logger.ts";
7
7
  import { proposePathCompletions } from "#app/services/terminal/path-completion.ts";
8
8
  import { trackTarget } from "#app/services/track.ts";
9
+ import { parsePlatformModeFlags, parsePlatformPermissionFlags, parsePlatformStringFlags, parsePlatformStringOverrideFlags, } from "./platform-flags.js";
10
+ const normalizeFlagValues = (values) => {
11
+ if (values === undefined) {
12
+ return undefined;
13
+ }
14
+ return typeof values === "string" ? [values] : values;
15
+ };
9
16
  const trackCommand = buildCommand({
10
17
  docs: {
11
18
  brief: "Track local files or directories for syncing",
12
- fullDescription: "Register one or more files or directories inside your home directory so dotweave can mirror them into the sync directory. If a target is already tracked, its mode is updated. Targets may also be repository paths inside a tracked directory to create child entries with a specific mode.",
19
+ fullDescription: "Register a file or directory inside your home directory so dotweave can mirror it into the sync directory. If a target is already tracked, specified manifest fields are updated and unspecified fields are preserved.",
13
20
  },
14
21
  async func(flags, ...targets) {
15
22
  const logger = createCliLogger();
16
23
  const profiles = [...(flags.profile ?? [])];
17
24
  const cwd = process.cwd();
18
- if (flags.repoPath !== undefined && targets.length !== 1) {
19
- throw new DotweaveError("The --repo-path flag can only be used with a single sync target.", {
25
+ if (flags.repo !== undefined && targets.length !== 1) {
26
+ throw new DotweaveError("The --repo flag can only be used with a single sync target.", {
20
27
  code: "REPO_PATH_TARGET_COUNT",
21
28
  hint: "Track one target at a time when overriding its repository path.",
22
29
  });
23
30
  }
31
+ const mode = parsePlatformModeFlags("mode", normalizeFlagValues(flags.mode));
32
+ const fallbackMode = mode?.default ?? AppConstants.SYNC.MODES[0];
33
+ const repoPath = parsePlatformStringFlags("repo", normalizeFlagValues(flags.repo));
34
+ const localPathOverrides = parsePlatformStringOverrideFlags("local", normalizeFlagValues(flags.local));
35
+ const permission = parsePlatformPermissionFlags("permission", normalizeFlagValues(flags.permission));
24
36
  for (const target of targets) {
25
37
  try {
26
38
  const result = await trackTarget({
27
- mode: flags.mode,
39
+ ...(flags.kind === undefined ? {} : { kind: flags.kind }),
40
+ ...(localPathOverrides === undefined ? {} : { localPathOverrides }),
41
+ ...(mode === undefined ? {} : { mode }),
42
+ ...(permission === undefined ? {} : { permission }),
28
43
  profiles: profiles.length > 0 ? profiles : undefined,
29
- ...(flags.repoPath === undefined
30
- ? {}
31
- : { repoPath: flags.repoPath }),
44
+ ...(repoPath === undefined ? {} : { repoPath }),
32
45
  target,
33
46
  }, cwd);
34
47
  if (!result.alreadyTracked) {
@@ -41,23 +54,31 @@ const trackCommand = buildCommand({
41
54
  logger.info(`${result.repoPath} already tracked`);
42
55
  }
43
56
  const details = [
57
+ { key: "kind", value: result.kind },
44
58
  { key: "path", value: result.localPath },
59
+ { key: "repo", value: result.repoPath },
45
60
  { key: "mode", value: result.mode },
46
61
  ];
62
+ if (result.configuredPermission !== undefined) {
63
+ details.push({
64
+ key: "permission",
65
+ value: result.configuredPermission.default,
66
+ });
67
+ }
47
68
  if (result.profiles.length > 0) {
48
69
  details.push({ key: "profiles", value: result.profiles.join(", ") });
49
70
  }
50
71
  logger.listKeyValue(details);
51
72
  }
52
73
  catch (error) {
53
- if (flags.repoPath === undefined &&
74
+ if (repoPath === undefined &&
54
75
  error instanceof DotweaveError &&
55
76
  error.code === "TARGET_NOT_FOUND") {
56
77
  const isProfileClear = profiles.length === 1 && profiles[0] === "";
57
78
  if (profiles.length > 0 && !isProfileClear) {
58
79
  await validateProfilesExist(profiles);
59
80
  }
60
- const setResult = await setTargetMode({ mode: flags.mode, target }, cwd);
81
+ const setResult = await setTargetMode({ mode: fallbackMode, target }, cwd);
61
82
  if (profiles.length > 0) {
62
83
  await assignProfiles({ profiles: isProfileClear ? [] : profiles, target }, cwd);
63
84
  }
@@ -79,11 +100,27 @@ const trackCommand = buildCommand({
79
100
  },
80
101
  parameters: {
81
102
  flags: {
103
+ kind: {
104
+ brief: "Target kind to use when the path does not exist yet",
105
+ kind: "enum",
106
+ optional: true,
107
+ values: ["file", "directory"],
108
+ },
82
109
  mode: {
83
110
  brief: "Sync mode for the tracked targets",
84
- default: AppConstants.SYNC.MODES[0],
85
- kind: "enum",
86
- values: AppConstants.SYNC.MODES,
111
+ kind: "parsed",
112
+ optional: true,
113
+ parse: String,
114
+ placeholder: "mode|platform=mode",
115
+ variadic: true,
116
+ },
117
+ permission: {
118
+ brief: "File permission to restore, as a 4-character octal value",
119
+ kind: "parsed",
120
+ optional: true,
121
+ parse: String,
122
+ placeholder: "octal|platform=octal",
123
+ variadic: true,
87
124
  },
88
125
  profile: {
89
126
  brief: "Restrict syncing to registered profiles (add non-default profiles with 'dotweave profile add')",
@@ -93,12 +130,21 @@ const trackCommand = buildCommand({
93
130
  placeholder: "profile",
94
131
  variadic: true,
95
132
  },
96
- repoPath: {
133
+ local: {
134
+ brief: "Platform-specific local path override",
135
+ kind: "parsed",
136
+ optional: true,
137
+ parse: String,
138
+ placeholder: "platform=path",
139
+ variadic: true,
140
+ },
141
+ repo: {
97
142
  brief: "Repository-relative path under the profile namespace",
98
143
  kind: "parsed",
99
144
  optional: true,
100
145
  parse: String,
101
- placeholder: "path",
146
+ placeholder: "path|platform=path",
147
+ variadic: true,
102
148
  },
103
149
  },
104
150
  positional: {
@@ -1 +1 @@
1
- {"version":3,"file":"track.js","sourceRoot":"","sources":["../../src/cli/track.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"track.js","sourceRoot":"","sources":["../../src/cli/track.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  export declare const BASH_AUTOCOMPLETE_SCRIPT: string;
2
2
  export declare const POWERSHELL_AUTOCOMPLETE_SCRIPT: string;
3
+ export declare const FISH_AUTOCOMPLETE_SCRIPT: string;
3
4
  export declare const ZSH_AUTOCOMPLETE_SCRIPT: string;
4
5
  export declare const resolveCompletionInputs: (inputs: readonly string[]) => string[];
5
6
  //# sourceMappingURL=autocomplete.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../src/services/autocomplete.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,wBAAwB,QA8DpC,CAAC;AAEF,eAAO,MAAM,8BAA8B,QAqB1C,CAAC;AAEF,eAAO,MAAM,uBAAuB,QAsEnC,CAAC;AAqBF,eAAO,MAAM,uBAAuB,GAAI,QAAQ,SAAS,MAAM,EAAE,aAiBhE,CAAC"}
1
+ {"version":3,"file":"autocomplete.d.ts","sourceRoot":"","sources":["../../src/services/autocomplete.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,wBAAwB,QA8DpC,CAAC;AAEF,eAAO,MAAM,8BAA8B,QAsB1C,CAAC;AAEF,eAAO,MAAM,wBAAwB,QAqBpC,CAAC;AAEF,eAAO,MAAM,uBAAuB,QAsEnC,CAAC;AAqBF,eAAO,MAAM,uBAAuB,GAAI,QAAQ,SAAS,MAAM,EAAE,aAiBhE,CAAC"}
@@ -67,8 +67,9 @@ complete -o default -o nospace -F ${COMPLETION_FUNCTION_NAME} ${AppConstants.AUT
67
67
  export const POWERSHELL_AUTOCOMPLETE_SCRIPT = `\
68
68
  Register-ArgumentCompleter -Native -CommandName ${AppConstants.AUTOCOMPLETE.CLI_COMMAND_NAME} -ScriptBlock {
69
69
  param($wordToComplete, $commandAst, $cursorPosition)
70
- $inputs = $commandAst.ToString().Split(' ', [System.StringSplitOptions]::RemoveEmptyEntries)
71
- if ($cursorPosition -gt $commandAst.ToString().Length) {
70
+ $commandLine = $commandAst.ToString()
71
+ $inputs = $commandLine.Split(' ', [System.StringSplitOptions]::RemoveEmptyEntries)
72
+ if ($cursorPosition -gt $commandLine.Length -or ($cursorPosition -ge $commandLine.Length -and $commandLine.EndsWith(' '))) {
72
73
  $inputs += ''
73
74
  }
74
75
  $rawCompletions = & ${AppConstants.AUTOCOMPLETE.COMMAND.replace(" ", " ")} $inputs 2>$null
@@ -86,10 +87,32 @@ Register-ArgumentCompleter -Native -CommandName ${AppConstants.AUTOCOMPLETE.CLI_
86
87
  }
87
88
  }
88
89
  `;
90
+ export const FISH_AUTOCOMPLETE_SCRIPT = `\
91
+ function ${COMPLETION_FUNCTION_NAME}
92
+ set -l tokens (commandline -opc)
93
+ set -l current (commandline -ct)
94
+
95
+ if test -z "$current"
96
+ set tokens $tokens ""
97
+ else if test (count $tokens) -eq 0; or test "$tokens[-1]" != "$current"
98
+ set tokens $tokens $current
99
+ end
100
+
101
+ command ${AppConstants.AUTOCOMPLETE.COMMAND} $tokens 2>/dev/null | while read -l line
102
+ set -l parts (string split -m 1 \\t -- $line)
103
+ if test (count $parts) -gt 1
104
+ printf '%s\\t%s\\n' $parts[1] $parts[2]
105
+ else
106
+ printf '%s\\n' $parts[1]
107
+ end
108
+ end
109
+ end
110
+ complete -c ${AppConstants.AUTOCOMPLETE.CLI_COMMAND_NAME} -f -a '(${COMPLETION_FUNCTION_NAME})'
111
+ `;
89
112
  export const ZSH_AUTOCOMPLETE_SCRIPT = `\
90
113
  if ! (( $+functions[compdef] )); then
91
114
  autoload -Uz compinit
92
- compinit
115
+ compinit -u
93
116
  fi
94
117
 
95
118
  ${COMPLETION_FUNCTION_NAME}() {
@@ -1 +1 @@
1
- {"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../src/services/autocomplete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AACvD,MAAM,oBAAoB,GAAG,8BAA8B,CAAC;AAE5D,MAAM,CAAC,MAAM,wBAAwB,GAAG;EACtC,wBAAwB;;;;iFAIuD,YAAY,CAAC,YAAY,CAAC,gBAAgB;;;;;4CAK/E,YAAY,CAAC,YAAY,CAAC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAmDzC,wBAAwB,IAAI,YAAY,CAAC,YAAY,CAAC,gBAAgB;CACzG,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG;kDACI,YAAY,CAAC,YAAY,CAAC,gBAAgB;;;;;;wBAMpE,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;;;;;;;;;;;;;;CAc1E,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;EAMrC,wBAAwB;;;;;2EAKiD,YAAY,CAAC,YAAY,CAAC,gBAAgB;;;;;4CAKzE,YAAY,CAAC,YAAY,CAAC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA6CnE,wBAAwB,IAAI,YAAY,CAAC,YAAY,CAAC,gBAAgB;;EAE9E,oBAAoB;mDAC6B,YAAY,CAAC,YAAY,CAAC,gBAAgB,UAAU,wBAAwB;cACjH,wBAAwB,IAAI,YAAY,CAAC,YAAY,CAAC,gBAAgB;;;;sBAI9D,oBAAoB;CACzC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAE,EAAE;IAC1C,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,CAAC;IAE7E,OAAO,CACL,eAAe,KAAK,YAAY,CAAC,YAAY,CAAC,gBAAgB;QAC9D,eAAe,KAAK,GAAG,YAAY,CAAC,YAAY,CAAC,gBAAgB,MAAM,CACxE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,MAAyB,EAAE,EAAE;IAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAE7B,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/D,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,MAAyB,EAAE,EAAE;IACnE,MAAM,WAAW,GAA+C,OAAO,CAAC,GAAG,CAAC;IAC5E,MAAM,cAAc,GAAG,WAAW,CAAC,SAAS,CAAC;IAE7C,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,YAAY,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC;IAEhD,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,gBAAgB,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpD,OAAO,yBAAyB,CAAC,gBAAgB,CAAC,CAAC;AACrD,CAAC,CAAC"}
1
+ {"version":3,"file":"autocomplete.js","sourceRoot":"","sources":["../../src/services/autocomplete.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AACvD,MAAM,oBAAoB,GAAG,8BAA8B,CAAC;AAE5D,MAAM,CAAC,MAAM,wBAAwB,GAAG;EACtC,wBAAwB;;;;iFAIuD,YAAY,CAAC,YAAY,CAAC,gBAAgB;;;;;4CAK/E,YAAY,CAAC,YAAY,CAAC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAmDzC,wBAAwB,IAAI,YAAY,CAAC,YAAY,CAAC,gBAAgB;CACzG,CAAC;AAEF,MAAM,CAAC,MAAM,8BAA8B,GAAG;kDACI,YAAY,CAAC,YAAY,CAAC,gBAAgB;;;;;;;wBAOpE,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC;;;;;;;;;;;;;;CAc1E,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG;WAC7B,wBAAwB;;;;;;;;;;cAUrB,YAAY,CAAC,YAAY,CAAC,OAAO;;;;;;;;;cASjC,YAAY,CAAC,YAAY,CAAC,gBAAgB,YAAY,wBAAwB;CAC3F,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG;;;;;;EAMrC,wBAAwB;;;;;2EAKiD,YAAY,CAAC,YAAY,CAAC,gBAAgB;;;;;4CAKzE,YAAY,CAAC,YAAY,CAAC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;UA6CnE,wBAAwB,IAAI,YAAY,CAAC,YAAY,CAAC,gBAAgB;;EAE9E,oBAAoB;mDAC6B,YAAY,CAAC,YAAY,CAAC,gBAAgB,UAAU,wBAAwB;cACjH,wBAAwB,IAAI,YAAY,CAAC,YAAY,CAAC,gBAAgB;;;;sBAI9D,oBAAoB;CACzC,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,KAAa,EAAE,EAAE;IAC1C,MAAM,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,KAAK,CAAC;IAE7E,OAAO,CACL,eAAe,KAAK,YAAY,CAAC,YAAY,CAAC,gBAAgB;QAC9D,eAAe,KAAK,GAAG,YAAY,CAAC,YAAY,CAAC,gBAAgB,MAAM,CACxE,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,MAAyB,EAAE,EAAE;IAC9D,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAE7B,IAAI,UAAU,KAAK,SAAS,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/D,OAAO,CAAC,GAAG,MAAM,CAAC,CAAC;IACrB,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACzB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,MAAyB,EAAE,EAAE;IACnE,MAAM,WAAW,GAA+C,OAAO,CAAC,GAAG,CAAC;IAC5E,MAAM,cAAc,GAAG,WAAW,CAAC,SAAS,CAAC;IAE7C,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,YAAY,GAAG,cAAc,CAAC,SAAS,EAAE,CAAC;IAEhD,IAAI,YAAY,KAAK,EAAE,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,gBAAgB,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpD,OAAO,yBAAyB,CAAC,gBAAgB,CAAC,CAAC;AACrD,CAAC,CAAC"}
@@ -4,7 +4,10 @@ import type { EffectiveSyncConfig } from "./sync-context.ts";
4
4
  type ArtifactConfig = EffectiveSyncConfig;
5
5
  export declare const collectArtifactProfiles: (configOrEntries: readonly Pick<ResolvedSyncConfigEntry, "profiles">[] | Pick<ResolvedSyncConfig, "entries" | "profiles">) => Set<string>;
6
6
  export declare const readCommittedProfileRegistry: (syncDirectory: string) => Promise<Set<string> | undefined>;
7
+ export declare const findNearestArtifactOwningEntry: <Entry extends Pick<ResolvedSyncConfigEntry, "configuredRepoPath" | "kind" | "profiles" | "repoPath">>(entries: readonly Entry[], artifact: ReturnType<typeof parseArtifactRelativePath>, artifactKind: "directory" | "file") => Entry | undefined;
7
8
  export declare const nearestEntryOwnsArtifact: (entries: readonly Pick<ResolvedSyncConfigEntry, "configuredRepoPath" | "kind" | "profiles" | "repoPath">[], artifact: ReturnType<typeof parseArtifactRelativePath>, artifactKind: "directory" | "file") => boolean;
9
+ export type ArtifactOwnershipDisposition = "active" | "platform-protected" | "ignored-prunable" | "unowned";
10
+ export declare const classifyArtifactOwnership: (config: ArtifactConfig, ownershipConfig: Pick<ResolvedSyncConfig, "entries" | "profiles">, artifact: ReturnType<typeof parseArtifactRelativePath>, artifactKind: "directory" | "file") => ArtifactOwnershipDisposition;
8
11
  export declare const entryOwnsArtifact: (entry: Pick<ResolvedSyncConfigEntry, "configuredRepoPath" | "kind" | "profiles" | "repoPath">, artifact: ReturnType<typeof parseArtifactRelativePath>) => boolean;
9
12
  export type RepoArtifact = Readonly<{
10
13
  category: "plain";
@@ -1 +1 @@
1
- {"version":3,"file":"repo-artifacts.d.ts","sourceRoot":"","sources":["../../src/services/repo-artifacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repo-artifacts.d.ts","sourceRoot":"","sources":["../../src/services/repo-artifacts.ts"],"names":[],"mappings":"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"}
@@ -125,6 +125,25 @@ const collectEntryRepoPathVariants = (entry) => {
125
125
  repoPath,
126
126
  }));
127
127
  };
128
+ const platformKeys = ["win", "mac", "linux", "wsl"];
129
+ const resolveConfiguredModeForPlatform = (configuredMode, platformKey) => {
130
+ if (platformKey === "wsl") {
131
+ return configuredMode.wsl ?? configuredMode.linux ?? configuredMode.default;
132
+ }
133
+ return configuredMode[platformKey] ?? configuredMode.default;
134
+ };
135
+ const resolveConfiguredRepoPathForPlatform = (entry, platformKey) => {
136
+ if (entry.configuredRepoPath === undefined) {
137
+ return entry.repoPath;
138
+ }
139
+ const rawRepoPath = platformKey === "wsl"
140
+ ? (entry.configuredRepoPath.wsl ??
141
+ entry.configuredRepoPath.linux ??
142
+ entry.configuredRepoPath.default)
143
+ : (entry.configuredRepoPath[platformKey] ??
144
+ entry.configuredRepoPath.default);
145
+ return normalizeSyncRepoPath(rawRepoPath);
146
+ };
128
147
  const entryCompatibleWithArtifact = (entry, artifact, artifactKind) => {
129
148
  return collectConfiguredRepoPathVariants(entry).some((candidate) => {
130
149
  if (entry.kind === "directory") {
@@ -133,7 +152,7 @@ const entryCompatibleWithArtifact = (entry, artifact, artifactKind) => {
133
152
  return artifactKind === "file" && artifact.repoPath === candidate;
134
153
  });
135
154
  };
136
- export const nearestEntryOwnsArtifact = (entries, artifact, artifactKind) => {
155
+ export const findNearestArtifactOwningEntry = (entries, artifact, artifactKind) => {
137
156
  let nearestEntry;
138
157
  let nearestDepth = -1;
139
158
  for (const entry of entries) {
@@ -150,9 +169,14 @@ export const nearestEntryOwnsArtifact = (entries, artifact, artifactKind) => {
150
169
  }
151
170
  }
152
171
  }
153
- return nearestEntry === undefined
154
- ? false
155
- : entryCompatibleWithArtifact(nearestEntry, artifact, artifactKind);
172
+ return nearestEntry !== undefined &&
173
+ entryCompatibleWithArtifact(nearestEntry, artifact, artifactKind)
174
+ ? nearestEntry
175
+ : undefined;
176
+ };
177
+ export const nearestEntryOwnsArtifact = (entries, artifact, artifactKind) => {
178
+ return (findNearestArtifactOwningEntry(entries, artifact, artifactKind) !==
179
+ undefined);
156
180
  };
157
181
  const activeDirectoryEntryOwnsArtifact = (entries, artifact) => {
158
182
  return entries.some((entry) => {
@@ -162,6 +186,43 @@ const activeDirectoryEntryOwnsArtifact = (entries, artifact) => {
162
186
  entryOwnsArtifactPath(entry, artifact.repoPath));
163
187
  });
164
188
  };
189
+ const entryOwnsArtifactForPlatform = (entry, artifact, artifactKind, platformKey) => {
190
+ const repoPath = resolveConfiguredRepoPathForPlatform(entry, platformKey);
191
+ if (entry.kind === "directory") {
192
+ return isPathEqualOrNested(artifact.repoPath, repoPath);
193
+ }
194
+ return artifactKind === "file" && artifact.repoPath === repoPath;
195
+ };
196
+ const artifactHasAlternatePlatformOwner = (entry, artifact, artifactKind) => {
197
+ return platformKeys.some((platformKey) => {
198
+ const mode = resolveConfiguredModeForPlatform(entry.configuredMode, platformKey);
199
+ return (mode !== "ignore" &&
200
+ entryOwnsArtifactForPlatform(entry, artifact, artifactKind, platformKey));
201
+ });
202
+ };
203
+ export const classifyArtifactOwnership = (config, ownershipConfig, artifact, artifactKind) => {
204
+ const rule = resolveSyncRule(config, artifact.repoPath, config.activeProfile);
205
+ const active = artifactKind === "directory"
206
+ ? activeDirectoryEntryOwnsArtifact(config.entries, artifact)
207
+ : isActiveArtifactRule(rule, artifact.profile);
208
+ if (active) {
209
+ return "active";
210
+ }
211
+ const nearestEntry = findNearestArtifactOwningEntry(ownershipConfig.entries, artifact, artifactKind);
212
+ if (nearestEntry === undefined) {
213
+ return "unowned";
214
+ }
215
+ const effectiveActiveProfile = config.activeProfile ?? AppConstants.SYNC.DEFAULT_PROFILE;
216
+ if (artifact.profile !== effectiveActiveProfile) {
217
+ return "platform-protected";
218
+ }
219
+ if (nearestEntry.mode === "ignore") {
220
+ return artifactHasAlternatePlatformOwner(nearestEntry, artifact, artifactKind)
221
+ ? "platform-protected"
222
+ : "ignored-prunable";
223
+ }
224
+ return "platform-protected";
225
+ };
165
226
  export const entryOwnsArtifact = (entry, artifact) => {
166
227
  return (entryOwnsArtifactProfile(entry, artifact.profile) &&
167
228
  entryOwnsArtifactPath(entry, artifact.repoPath));
@@ -371,18 +432,8 @@ export const collectExistingArtifactKeys = async (syncDirectory, config, ownersh
371
432
  }
372
433
  const isDirectoryKey = key.endsWith("/");
373
434
  const artifact = parseArtifactLogicalPath(isDirectoryKey ? key.slice(0, -1) : key);
374
- if (isDirectoryKey &&
375
- nearestEntryOwnsArtifact(ownershipConfig.entries, artifact, "directory") &&
376
- !activeDirectoryEntryOwnsArtifact(config.entries, artifact)) {
377
- keys.delete(key);
378
- continue;
379
- }
380
- const rule = resolveSyncRule(config, artifact.repoPath, config.activeProfile);
381
- if (isActiveArtifactRule(rule, artifact.profile)) {
382
- continue;
383
- }
384
- if (!isDirectoryKey &&
385
- nearestEntryOwnsArtifact(ownershipConfig.entries, artifact, "file")) {
435
+ const ownership = classifyArtifactOwnership(config, ownershipConfig, artifact, isDirectoryKey ? "directory" : "file");
436
+ if (ownership === "platform-protected") {
386
437
  keys.delete(key);
387
438
  }
388
439
  }
@@ -1 +1 @@
1
- {"version":3,"file":"repo-artifacts.js","sourceRoot":"","sources":["../../src/services/repo-artifacts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"repo-artifacts.js","sourceRoot":"","sources":["../../src/services/repo-artifacts.ts"],"names":[],"mappings":"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"}
@@ -1,17 +1,26 @@
1
- import { type SyncConfigEntryKind, type SyncMode } from "#app/config/sync-schema.ts";
1
+ import { type PlatformStringValue } from "#app/config/platform.ts";
2
+ import { type PlatformPermission, type PlatformSyncMode, type SyncConfigEntryKind, type SyncMode } from "#app/config/sync-schema.ts";
2
3
  export type TrackRequest = Readonly<{
4
+ kind?: SyncConfigEntryKind;
5
+ localPathOverrides?: Partial<PlatformStringValue>;
3
6
  profiles?: readonly string[];
4
- mode: SyncMode;
5
- repoPath?: string;
7
+ mode?: SyncMode | Partial<PlatformSyncMode>;
8
+ permission?: PlatformPermission;
9
+ repoPath?: Partial<PlatformStringValue>;
6
10
  target: string;
7
11
  }>;
8
12
  export type TrackResult = Readonly<{
9
13
  alreadyTracked: boolean;
10
14
  changed: boolean;
15
+ configuredLocalPath: PlatformStringValue;
16
+ configuredMode: PlatformSyncMode;
11
17
  kind: SyncConfigEntryKind;
12
18
  localPath: string;
13
19
  profiles: readonly string[];
14
20
  mode: SyncMode;
21
+ permission?: number;
22
+ configuredPermission?: PlatformPermission;
23
+ configuredRepoPath?: PlatformStringValue;
15
24
  repoPath: string;
16
25
  }>;
17
26
  export declare const trackTarget: (request: TrackRequest, cwd: string) => Promise<TrackResult>;
@@ -1 +1 @@
1
- {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/services/track.ts"],"names":[],"mappings":"AAUA,OAAO,EAIL,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACd,MAAM,4BAA4B,CAAC;AAepC,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IAClC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;IACjC,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CAAC;AA6HH,eAAO,MAAM,WAAW,GACtB,SAAS,YAAY,EACrB,KAAK,MAAM,KACV,OAAO,CAAC,WAAW,CA0KrB,CAAC"}
1
+ {"version":3,"file":"track.d.ts","sourceRoot":"","sources":["../../src/services/track.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,mBAAmB,EAEzB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EAErB,KAAK,mBAAmB,EACxB,KAAK,QAAQ,EACd,MAAM,4BAA4B,CAAC;AAgBpC,MAAM,MAAM,YAAY,GAAG,QAAQ,CAAC;IAClC,IAAI,CAAC,EAAE,mBAAmB,CAAC;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClD,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC5C,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACxC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,QAAQ,CAAC;IACjC,cAAc,EAAE,OAAO,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,cAAc,EAAE,gBAAgB,CAAC;IACjC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,QAAQ,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oBAAoB,CAAC,EAAE,kBAAkB,CAAC;IAC1C,kBAAkB,CAAC,EAAE,mBAAmB,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC,CAAC;AAuNH,eAAO,MAAM,WAAW,GACtB,SAAS,YAAY,EACrB,KAAK,MAAM,KACV,OAAO,CAAC,WAAW,CA0PrB,CAAC"}
@@ -1,29 +1,58 @@
1
1
  import { resolve } from "node:path";
2
2
  import { AppConstants } from "#app/config/constants.ts";
3
3
  import { resolveDefaultIdentityFile } from "#app/config/identity-file.ts";
4
+ import { resolvePlatformValue, } from "#app/config/platform.ts";
4
5
  import { resolveDotweaveHomeDirectoryFromEnv } from "#app/config/runtime-env.ts";
5
- import { buildDefaultPlatformMode, hasPlatformSpecificModeOverride, } from "#app/config/sync-queries.ts";
6
+ import { buildDefaultPlatformMode } from "#app/config/sync-queries.ts";
6
7
  import { normalizeSyncProfileName, normalizeSyncRepoPath, } from "#app/config/sync-schema.ts";
7
8
  import { expandHomePath } from "#app/config/xdg.ts";
8
9
  import { DotweaveError } from "#app/lib/error.ts";
10
+ import { parsePermissionOctal } from "#app/lib/file-mode.ts";
9
11
  import { getPathStats } from "#app/lib/filesystem.ts";
10
12
  import { doPathsOverlap } from "#app/lib/path.ts";
11
13
  import { buildSyncConfigDocument, writeValidatedSyncConfig, } from "./config-file.js";
12
14
  import { loadWritableSyncConfig } from "./sync-context.js";
13
15
  import { buildConfiguredHomeLocalPath, buildRepoPathWithinRoot, } from "./sync-paths.js";
14
- const buildDefaultPlatformRepoPath = (repoPath) => ({
15
- default: normalizeSyncRepoPath(repoPath),
16
- });
17
- const buildTrackEntryCandidate = async (targetPath, syncDirectory, homeDirectory, input) => {
18
- const targetStats = await getPathStats(targetPath);
16
+ const platformKeys = ["default", "win", "mac", "linux", "wsl"];
17
+ const normalizePlatformRepoPath = (repoPath) => {
18
+ const normalized = {};
19
+ for (const key of platformKeys) {
20
+ if (repoPath[key] !== undefined) {
21
+ normalized[key] = normalizeSyncRepoPath(repoPath[key]);
22
+ }
23
+ }
24
+ return normalized;
25
+ };
26
+ const resolvePlatformMode = (configuredMode, platformKey) => {
27
+ if (platformKey === "wsl") {
28
+ return configuredMode.wsl ?? configuredMode.linux ?? configuredMode.default;
29
+ }
30
+ return configuredMode[platformKey] ?? configuredMode.default;
31
+ };
32
+ const buildConfiguredMode = (requestedMode, existingMode) => {
33
+ const base = existingMode ?? buildDefaultPlatformMode(AppConstants.SYNC.MODES[0]);
34
+ const patch = requestedMode === undefined
35
+ ? {}
36
+ : typeof requestedMode === "string"
37
+ ? buildDefaultPlatformMode(requestedMode)
38
+ : requestedMode;
39
+ return { ...base, ...patch };
40
+ };
41
+ const mergePlatformStringValue = (base, patch) => {
42
+ return { ...base, ...patch };
43
+ };
44
+ const resolveTargetKind = (targetPath, targetStats, requestedKind) => {
19
45
  if (targetStats === undefined) {
20
- throw new DotweaveError("Sync target does not exist.", {
21
- code: "TARGET_NOT_FOUND",
46
+ if (requestedKind !== undefined) {
47
+ return requestedKind;
48
+ }
49
+ throw new DotweaveError("Sync target kind is required.", {
50
+ code: "TARGET_KIND_REQUIRED",
22
51
  details: [`Target: ${targetPath}`],
23
- hint: "Create the file or directory first, then run the command again.",
52
+ hint: "Pass --kind file or --kind directory when tracking a path that does not exist yet.",
24
53
  });
25
54
  }
26
- const kind = (() => {
55
+ const actualKind = (() => {
27
56
  if (targetStats.isDirectory()) {
28
57
  return "directory";
29
58
  }
@@ -36,6 +65,22 @@ const buildTrackEntryCandidate = async (targetPath, syncDirectory, homeDirectory
36
65
  hint: "Track a regular file, symlink, or directory.",
37
66
  });
38
67
  })();
68
+ if (requestedKind !== undefined && requestedKind !== actualKind) {
69
+ throw new DotweaveError("Sync target kind does not match the path.", {
70
+ code: "TARGET_KIND_MISMATCH",
71
+ details: [
72
+ `Target: ${targetPath}`,
73
+ `Requested kind: ${requestedKind}`,
74
+ `Actual kind: ${actualKind}`,
75
+ ],
76
+ hint: `Use --kind ${actualKind} for this target, or choose a matching path.`,
77
+ });
78
+ }
79
+ return actualKind;
80
+ };
81
+ const buildTrackEntryCandidate = async (targetPath, syncDirectory, homeDirectory, input) => {
82
+ const targetStats = await getPathStats(targetPath);
83
+ const kind = resolveTargetKind(targetPath, targetStats, input.kind);
39
84
  if (doPathsOverlap(targetPath, syncDirectory)) {
40
85
  throw new DotweaveError("Sync target overlaps the dotweave sync directory.", {
41
86
  code: "TARGET_OVERLAPS_SYNC_DIR",
@@ -55,22 +100,35 @@ const buildTrackEntryCandidate = async (targetPath, syncDirectory, homeDirectory
55
100
  });
56
101
  }
57
102
  const localRepoPath = buildRepoPathWithinRoot(targetPath, homeDirectory, "Sync target");
58
- const configuredLocalPath = buildConfiguredHomeLocalPath(localRepoPath);
103
+ const configuredLocalPath = mergePlatformStringValue(buildConfiguredHomeLocalPath(localRepoPath), input.localPathOverrides ?? {});
59
104
  const configuredRepoPath = input.repoPath === undefined
60
105
  ? undefined
61
- : buildDefaultPlatformRepoPath(input.repoPath);
62
- const repoPath = configuredRepoPath?.default ?? localRepoPath;
106
+ : normalizePlatformRepoPath({
107
+ default: localRepoPath,
108
+ ...input.repoPath,
109
+ });
110
+ const repoPath = configuredRepoPath === undefined
111
+ ? localRepoPath
112
+ : resolvePlatformValue(configuredRepoPath, input.platformKey);
113
+ const configuredPermission = input.permission;
114
+ const configuredMode = buildConfiguredMode(input.mode);
63
115
  return {
64
116
  configuredLocalPath,
65
117
  ...(configuredRepoPath === undefined ? {} : { configuredRepoPath }),
118
+ ...(configuredPermission === undefined
119
+ ? {}
120
+ : {
121
+ configuredPermission,
122
+ permission: parsePermissionOctal(configuredPermission.default),
123
+ }),
66
124
  kind,
67
125
  localPath: targetPath,
68
126
  profiles: input.profiles?.map((m) => normalizeSyncProfileName(m)) ?? [],
69
127
  profilesExplicit: input.profiles !== undefined,
70
- mode: input.mode,
128
+ mode: resolvePlatformMode(configuredMode, input.platformKey),
71
129
  modeExplicit: true,
72
- configuredMode: buildDefaultPlatformMode(input.mode),
73
- permissionExplicit: false,
130
+ configuredMode,
131
+ permissionExplicit: configuredPermission !== undefined,
74
132
  repoPath,
75
133
  };
76
134
  };
@@ -111,8 +169,12 @@ export const trackTarget = async (request, cwd) => {
111
169
  validateRequestedProfiles(effectiveProfiles, config.profiles);
112
170
  const candidate = await buildTrackEntryCandidate(resolve(cwd, expandHomePath(target, context.homeDirectory)), syncDirectory, context.homeDirectory, {
113
171
  identityFile,
172
+ kind: request.kind,
173
+ localPathOverrides: request.localPathOverrides,
114
174
  profiles: effectiveProfiles,
115
175
  mode: request.mode,
176
+ permission: request.permission,
177
+ platformKey: context.platformKey,
116
178
  repoPath: request.repoPath,
117
179
  });
118
180
  const existingEntry = config.entries.find((entry) => entry.localPath === candidate.localPath);
@@ -128,13 +190,34 @@ export const trackTarget = async (request, cwd) => {
128
190
  hint: "Untrack or rename the existing entry before adding this root.",
129
191
  });
130
192
  }
131
- const nextEntry = existingEntry !== undefined && request.repoPath === undefined
132
- ? {
133
- ...candidate,
134
- configuredRepoPath: existingEntry.configuredRepoPath,
135
- repoPath: existingEntry.repoPath,
193
+ const nextEntry = (() => {
194
+ if (existingEntry === undefined) {
195
+ return candidate;
136
196
  }
137
- : candidate;
197
+ const configuredRepoPath = request.repoPath === undefined
198
+ ? existingEntry.configuredRepoPath
199
+ : mergePlatformStringValue(existingEntry.configuredRepoPath ?? {
200
+ default: existingEntry.repoPath,
201
+ }, normalizePlatformRepoPath(request.repoPath));
202
+ const configuredMode = buildConfiguredMode(request.mode, existingEntry.configuredMode);
203
+ const configuredLocalPath = request.localPathOverrides === undefined
204
+ ? existingEntry.configuredLocalPath
205
+ : {
206
+ ...existingEntry.configuredLocalPath,
207
+ ...request.localPathOverrides,
208
+ default: candidate.configuredLocalPath.default,
209
+ };
210
+ return {
211
+ ...candidate,
212
+ configuredLocalPath,
213
+ configuredMode,
214
+ ...(configuredRepoPath === undefined ? {} : { configuredRepoPath }),
215
+ mode: resolvePlatformMode(configuredMode, context.platformKey),
216
+ repoPath: configuredRepoPath === undefined
217
+ ? existingEntry.repoPath
218
+ : resolvePlatformValue(configuredRepoPath, context.platformKey),
219
+ };
220
+ })();
138
221
  const repoPathConflict = config.entries.find((entry) => {
139
222
  return (entry.repoPath === nextEntry.repoPath &&
140
223
  entry.localPath !== nextEntry.localPath);
@@ -147,7 +230,7 @@ export const trackTarget = async (request, cwd) => {
147
230
  `Requested repo path: ${nextEntry.repoPath}`,
148
231
  `Existing entry: ${repoPathConflict.localPath} -> ${repoPathConflict.repoPath}`,
149
232
  ],
150
- hint: "Change --repo-path or untrack the conflicting entry first.",
233
+ hint: "Change --repo or untrack the conflicting entry first.",
151
234
  });
152
235
  }
153
236
  if (!alreadyTracked) {
@@ -159,18 +242,25 @@ export const trackTarget = async (request, cwd) => {
159
242
  return {
160
243
  alreadyTracked,
161
244
  changed: true,
245
+ configuredLocalPath: nextEntry.configuredLocalPath,
246
+ configuredMode: nextEntry.configuredMode,
162
247
  kind: nextEntry.kind,
163
248
  localPath: nextEntry.localPath,
164
249
  profiles: nextEntry.profiles,
165
250
  mode: nextEntry.mode,
251
+ permission: nextEntry.permission,
252
+ configuredPermission: nextEntry.configuredPermission,
253
+ configuredRepoPath: nextEntry.configuredRepoPath,
166
254
  repoPath: nextEntry.repoPath,
167
255
  };
168
256
  }
169
- const requestedConfiguredMode = buildDefaultPlatformMode(request.mode);
170
- const modeChanged = existingEntry?.mode !== request.mode ||
171
- existingEntry?.configuredMode.default !== requestedConfiguredMode.default ||
172
- (existingEntry !== undefined &&
173
- hasPlatformSpecificModeOverride(existingEntry.configuredMode));
257
+ const modeChanged = request.mode !== undefined &&
258
+ (existingEntry?.mode !== nextEntry.mode ||
259
+ JSON.stringify(existingEntry?.configuredMode) !==
260
+ JSON.stringify(nextEntry.configuredMode));
261
+ const localPathChanged = request.localPathOverrides !== undefined &&
262
+ JSON.stringify(existingEntry?.configuredLocalPath) !==
263
+ JSON.stringify(nextEntry.configuredLocalPath);
174
264
  const profilesChanged = effectiveProfiles !== undefined &&
175
265
  (existingEntry?.profiles.length !== candidate.profiles.length ||
176
266
  !candidate.profiles.every((m) => existingEntry?.profiles.includes(m)));
@@ -178,7 +268,14 @@ export const trackTarget = async (request, cwd) => {
178
268
  (existingEntry?.repoPath !== nextEntry.repoPath ||
179
269
  JSON.stringify(existingEntry?.configuredRepoPath) !==
180
270
  JSON.stringify(nextEntry.configuredRepoPath));
181
- const changed = modeChanged || profilesChanged || repoPathChanged;
271
+ const permissionChanged = request.permission !== undefined &&
272
+ JSON.stringify(existingEntry?.configuredPermission) !==
273
+ JSON.stringify(request.permission);
274
+ const changed = localPathChanged ||
275
+ modeChanged ||
276
+ profilesChanged ||
277
+ repoPathChanged ||
278
+ permissionChanged;
182
279
  if (changed) {
183
280
  const nextConfig = buildSyncConfigDocument({
184
281
  ...config,
@@ -188,6 +285,9 @@ export const trackTarget = async (request, cwd) => {
188
285
  }
189
286
  return {
190
287
  ...entry,
288
+ ...(localPathChanged
289
+ ? { configuredLocalPath: nextEntry.configuredLocalPath }
290
+ : {}),
191
291
  ...(repoPathChanged
192
292
  ? {
193
293
  configuredRepoPath: nextEntry.configuredRepoPath,
@@ -196,8 +296,15 @@ export const trackTarget = async (request, cwd) => {
196
296
  : {}),
197
297
  ...(modeChanged
198
298
  ? {
199
- configuredMode: requestedConfiguredMode,
200
- mode: request.mode,
299
+ configuredMode: nextEntry.configuredMode,
300
+ mode: nextEntry.mode,
301
+ }
302
+ : {}),
303
+ ...(permissionChanged
304
+ ? {
305
+ configuredPermission: request.permission,
306
+ permission: parsePermissionOctal(request.permission.default),
307
+ permissionExplicit: true,
201
308
  }
202
309
  : {}),
203
310
  ...(profilesChanged
@@ -214,12 +321,29 @@ export const trackTarget = async (request, cwd) => {
214
321
  return {
215
322
  alreadyTracked,
216
323
  changed,
324
+ configuredLocalPath: localPathChanged
325
+ ? nextEntry.configuredLocalPath
326
+ : (existingEntry?.configuredLocalPath ?? nextEntry.configuredLocalPath),
327
+ configuredMode: modeChanged
328
+ ? nextEntry.configuredMode
329
+ : (existingEntry?.configuredMode ?? nextEntry.configuredMode),
217
330
  kind: nextEntry.kind,
218
331
  localPath: nextEntry.localPath,
219
332
  profiles: profilesChanged
220
333
  ? nextEntry.profiles
221
334
  : (existingEntry?.profiles ?? []),
222
- mode: modeChanged ? request.mode : (existingEntry?.mode ?? request.mode),
335
+ mode: modeChanged
336
+ ? nextEntry.mode
337
+ : (existingEntry?.mode ?? nextEntry.mode),
338
+ permission: permissionChanged
339
+ ? parsePermissionOctal(request.permission.default)
340
+ : existingEntry?.permission,
341
+ configuredPermission: permissionChanged
342
+ ? request.permission
343
+ : existingEntry?.configuredPermission,
344
+ configuredRepoPath: repoPathChanged || !alreadyTracked
345
+ ? nextEntry.configuredRepoPath
346
+ : existingEntry?.configuredRepoPath,
223
347
  repoPath: repoPathChanged || !alreadyTracked
224
348
  ? nextEntry.repoPath
225
349
  : (existingEntry?.repoPath ?? nextEntry.repoPath),
@@ -1 +1 @@
1
- {"version":3,"file":"track.js","sourceRoot":"","sources":["../../src/services/track.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"track.js","sourceRoot":"","sources":["../../src/services/track.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tinyrack/dotweave",
3
- "version": "0.45.0",
3
+ "version": "0.46.1",
4
4
  "description": "A personal CLI tool for git-backed configuration sync.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -71,6 +71,7 @@
71
71
  "pretest": "pnpm run build",
72
72
  "typecheck": "tsc -p tsconfig.json",
73
73
  "test": "vitest run",
74
+ "test:autocomplete": "vitest run src/services/autocomplete.test.ts tests/autocomplete.e2e.test.ts tests/autocomplete.pty.e2e.test.ts",
74
75
  "test:watch": "vitest",
75
76
  "precoverage": "pnpm run build",
76
77
  "coverage": "vitest run --coverage",