@ttsc/unplugin 0.31.4 → 0.31.5

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.
@@ -120,6 +120,8 @@ const registrations = new Map();
120
120
  const DROPPED = 0x1 | 0x2 | 0x4 | 0x8 | 0x20 | 0x40 | 0x80;
121
121
  const MODIFIED = 0x400 | 0x1000 | 0x2000 | 0x4000 | 0x8000;
122
122
  const RENAMED = 0x100 | 0x200 | 0x800;
123
+ const CREATED = 0x100;
124
+ const MOVED = 0x200 | 0x800;
123
125
  const fsevents = load();
124
126
  let probeSequence = 0;
125
127
 
@@ -204,6 +206,8 @@ function stream(location, deliver, registration) {
204
206
  const root = probe === undefined ? directory : probe.root;
205
207
  const within = (parent, file) => file === parent || file.startsWith(parent.endsWith("/") ? parent : parent + "/");
206
208
  const opened = { close: undefined, location: location.directory, pending: new Map(), probe, proven: probe === undefined };
209
+ // Anything born before this instant was not created in this stream.
210
+ const openedAt = Date.now();
207
211
  const stop = fsevents.watch(root, (file, flags) => {
208
212
  // Loss authority is independent of the path, including our own probe.
209
213
  if ((flags & DROPPED) !== 0) {
@@ -233,6 +237,16 @@ function stream(location, deliver, registration) {
233
237
  }
234
238
  const filename = file.slice(directory.length + 1);
235
239
  if (location.recursive !== true && filename.includes("/")) return;
240
+ // FSEvents keeps ItemCreated on later writes to a path it saw created, so a
241
+ // plain edit of a file older than this stream arrived as a rename, a
242
+ // membership change that replaced generations for an unrelated write. An
243
+ // object born before the stream opened was not created in it; its other
244
+ // flags decide. A removal or a rename keeps the event structural.
245
+ if ((flags & CREATED) !== 0 && (flags & MOVED) === 0 && (flags & MODIFIED) !== 0) {
246
+ try {
247
+ if (fs.lstatSync(file).birthtimeMs < openedAt) flags &= ~CREATED;
248
+ } catch {}
249
+ }
236
250
  deliver((flags & MODIFIED) !== 0 && (flags & RENAMED) === 0 ? "change" : "rename", filename);
237
251
  });
238
252
  opened.close = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"watchBrokerSource.js","sources":["../../../../../src/core/transform/tracker/broker/watchBrokerSource.ts"],"sourcesContent":[null],"names":["WATCH_PROBE_TIMEOUT_MS"],"mappings":";;;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkGG;AACG,SAAU,iBAAiB,CAAC,QAAwB,EAAA;IACxD,OAAO,CAAA,qBAAA,EAAwB,QAAQ,KAAK,SAAS,GAAG,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,6BAA6BA,6CAAsB,CAAA,GAAA,EAAM,oBAAoB,CAAA,CAAE;AAC/K;AAEA;;;AAGG;AACH,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoQtC;;;;"}
1
+ {"version":3,"file":"watchBrokerSource.js","sources":["../../../../../src/core/transform/tracker/broker/watchBrokerSource.ts"],"sourcesContent":[null],"names":["WATCH_PROBE_TIMEOUT_MS"],"mappings":";;;;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkGG;AACG,SAAU,iBAAiB,CAAC,QAAwB,EAAA;IACxD,OAAO,CAAA,qBAAA,EAAwB,QAAQ,KAAK,SAAS,GAAG,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,6BAA6BA,6CAAsB,CAAA,GAAA,EAAM,oBAAoB,CAAA,CAAE;AAC/K;AAEA;;;AAGG;AACH,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkRtC;;;;"}
@@ -118,6 +118,8 @@ const registrations = new Map();
118
118
  const DROPPED = 0x1 | 0x2 | 0x4 | 0x8 | 0x20 | 0x40 | 0x80;
119
119
  const MODIFIED = 0x400 | 0x1000 | 0x2000 | 0x4000 | 0x8000;
120
120
  const RENAMED = 0x100 | 0x200 | 0x800;
121
+ const CREATED = 0x100;
122
+ const MOVED = 0x200 | 0x800;
121
123
  const fsevents = load();
122
124
  let probeSequence = 0;
123
125
 
@@ -202,6 +204,8 @@ function stream(location, deliver, registration) {
202
204
  const root = probe === undefined ? directory : probe.root;
203
205
  const within = (parent, file) => file === parent || file.startsWith(parent.endsWith("/") ? parent : parent + "/");
204
206
  const opened = { close: undefined, location: location.directory, pending: new Map(), probe, proven: probe === undefined };
207
+ // Anything born before this instant was not created in this stream.
208
+ const openedAt = Date.now();
205
209
  const stop = fsevents.watch(root, (file, flags) => {
206
210
  // Loss authority is independent of the path, including our own probe.
207
211
  if ((flags & DROPPED) !== 0) {
@@ -231,6 +235,16 @@ function stream(location, deliver, registration) {
231
235
  }
232
236
  const filename = file.slice(directory.length + 1);
233
237
  if (location.recursive !== true && filename.includes("/")) return;
238
+ // FSEvents keeps ItemCreated on later writes to a path it saw created, so a
239
+ // plain edit of a file older than this stream arrived as a rename, a
240
+ // membership change that replaced generations for an unrelated write. An
241
+ // object born before the stream opened was not created in it; its other
242
+ // flags decide. A removal or a rename keeps the event structural.
243
+ if ((flags & CREATED) !== 0 && (flags & MOVED) === 0 && (flags & MODIFIED) !== 0) {
244
+ try {
245
+ if (fs.lstatSync(file).birthtimeMs < openedAt) flags &= ~CREATED;
246
+ } catch {}
247
+ }
234
248
  deliver((flags & MODIFIED) !== 0 && (flags & RENAMED) === 0 ? "change" : "rename", filename);
235
249
  });
236
250
  opened.close = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"watchBrokerSource.mjs","sources":["../../../../../src/core/transform/tracker/broker/watchBrokerSource.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkGG;AACG,SAAU,iBAAiB,CAAC,QAAwB,EAAA;IACxD,OAAO,CAAA,qBAAA,EAAwB,QAAQ,KAAK,SAAS,GAAG,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,6BAA6B,sBAAsB,CAAA,GAAA,EAAM,oBAAoB,CAAA,CAAE;AAC/K;AAEA;;;AAGG;AACH,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoQtC;;;;"}
1
+ {"version":3,"file":"watchBrokerSource.mjs","sources":["../../../../../src/core/transform/tracker/broker/watchBrokerSource.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkGG;AACG,SAAU,iBAAiB,CAAC,QAAwB,EAAA;IACxD,OAAO,CAAA,qBAAA,EAAwB,QAAQ,KAAK,SAAS,GAAG,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,6BAA6B,sBAAsB,CAAA,GAAA,EAAM,oBAAoB,CAAA,CAAE;AAC/K;AAEA;;;AAGG;AACH,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAA,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkRtC;;;;"}
@@ -342,6 +342,18 @@ scopes) {
342
342
  * an event the backend could not attribute to a name may concern any input
343
343
  * below the watched directory, so it always counts.
344
344
  */
345
+ // Whether a path names an existing object that no other name can reach:
346
+ // not a link, and not a file with a second hard link, whose writes could
347
+ // land on a tracked input without an event on its name.
348
+ const distinctExistingObject = (location) => {
349
+ try {
350
+ const stats = filesystem.lstat(location);
351
+ return !stats.isSymbolicLink() && !(stats.isFile() && stats.nlink > 1n);
352
+ }
353
+ catch {
354
+ return false;
355
+ }
356
+ };
345
357
  const classify = (directory, filename, eventType) => {
346
358
  // An event the backend could not attribute to a name is its notice that
347
359
  // events may have been lost below the directory, as a Windows buffer
@@ -402,6 +414,14 @@ scopes) {
402
414
  return "mutation";
403
415
  }
404
416
  }
417
+ // An object that exists now resolves to its own identity under every alias,
418
+ // so one that is neither a link nor a second name of a file, and resolves
419
+ // to nothing tracked above, is a different object. A recursive backend
420
+ // (macOS, Windows) hears every write below the project root, and
421
+ // withdrawing authority for each sent every later delivery past its
422
+ // notifications.
423
+ if (distinctExistingObject(changed))
424
+ return undefined;
405
425
  // A missing native alias cannot be recovered by current realpath. Neither
406
426
  // ASCII spelling nor OS name proves this event unrelated to a tracked path.
407
427
  // Keep exact metadata validation without inventing a membership mutation.
@@ -1 +1 @@
1
- {"version":3,"file":"createHostInputMutationTracker.js","sources":["../../../../src/core/transform/tracker/createHostInputMutationTracker.ts"],"sourcesContent":[null],"names":["createHostPathIdentityContext","relativeToProject","missingPathProbe","pathTraversesSymbolicLink","hostInputRealpath","pathIdentityKey","normalizeHostInputName","trackedInputScope","watchLocationIdentity","pluginSourceCovers","usesWatchBroker","registerBrokeredMutationTracker","closeDirectoryWatches","openDirectoryWatch","recordProjectMutation","recordProjectChange","settleOpenedDirectoryWatches"],"mappings":"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"}
1
+ {"version":3,"file":"createHostInputMutationTracker.js","sources":["../../../../src/core/transform/tracker/createHostInputMutationTracker.ts"],"sourcesContent":[null],"names":["createHostPathIdentityContext","relativeToProject","missingPathProbe","pathTraversesSymbolicLink","hostInputRealpath","pathIdentityKey","normalizeHostInputName","trackedInputScope","watchLocationIdentity","pluginSourceCovers","usesWatchBroker","registerBrokeredMutationTracker","closeDirectoryWatches","openDirectoryWatch","recordProjectMutation","recordProjectChange","settleOpenedDirectoryWatches"],"mappings":"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"}
@@ -340,6 +340,18 @@ scopes) {
340
340
  * an event the backend could not attribute to a name may concern any input
341
341
  * below the watched directory, so it always counts.
342
342
  */
343
+ // Whether a path names an existing object that no other name can reach:
344
+ // not a link, and not a file with a second hard link, whose writes could
345
+ // land on a tracked input without an event on its name.
346
+ const distinctExistingObject = (location) => {
347
+ try {
348
+ const stats = filesystem.lstat(location);
349
+ return !stats.isSymbolicLink() && !(stats.isFile() && stats.nlink > 1n);
350
+ }
351
+ catch {
352
+ return false;
353
+ }
354
+ };
343
355
  const classify = (directory, filename, eventType) => {
344
356
  // An event the backend could not attribute to a name is its notice that
345
357
  // events may have been lost below the directory, as a Windows buffer
@@ -400,6 +412,14 @@ scopes) {
400
412
  return "mutation";
401
413
  }
402
414
  }
415
+ // An object that exists now resolves to its own identity under every alias,
416
+ // so one that is neither a link nor a second name of a file, and resolves
417
+ // to nothing tracked above, is a different object. A recursive backend
418
+ // (macOS, Windows) hears every write below the project root, and
419
+ // withdrawing authority for each sent every later delivery past its
420
+ // notifications.
421
+ if (distinctExistingObject(changed))
422
+ return undefined;
403
423
  // A missing native alias cannot be recovered by current realpath. Neither
404
424
  // ASCII spelling nor OS name proves this event unrelated to a tracked path.
405
425
  // Keep exact metadata validation without inventing a membership mutation.
@@ -1 +1 @@
1
- {"version":3,"file":"createHostInputMutationTracker.mjs","sources":["../../../../src/core/transform/tracker/createHostInputMutationTracker.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createHostInputMutationTracker.mjs","sources":["../../../../src/core/transform/tracker/createHostInputMutationTracker.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -17,9 +17,10 @@ import type { TtscProjectMutationTracker } from "./TtscProjectMutationTracker.cj
17
17
  * recorded-state validation supplies the actual verdict. Content witnesses
18
18
  * preserve captured native input aliases, then reject only an observed normal
19
19
  * directory excluded in both lexical and native spellings. Unknown, missing and
20
- * linked ancestry remains conservative. Membership rejection still withdraws
21
- * notification authority even when content is outside the walk. Named events
22
- * also compare current native identity and case policy with the retained
20
+ * linked ancestry remains conservative. Membership rejection withdraws
21
+ * notification authority except below such a proven excluded directory, so a
22
+ * recursive backend's writes to a cache or output tree cost no proof. Named
23
+ * events also compare current native identity and case policy with the retained
23
24
  * identity transaction. Retargeting withdraws notification authority without
24
25
  * changing the meaning of earlier recorded event spellings.
25
26
  *
@@ -29,8 +30,8 @@ import type { TtscProjectMutationTracker } from "./TtscProjectMutationTracker.cj
29
30
  * A lexical nonmatch is uncertainty rather than native alias exclusion.
30
31
  * Changed native identity premises also withdraw notification proof while
31
32
  * membership and content witnesses keep their independent classifications.
32
- * Content exclusion requires normal directory identity and both policy
33
- * spellings; captured native input aliases remain content witnesses.
33
+ * Content and membership exclusion require normal directory identity and both
34
+ * policy spellings; captured native input aliases remain content witnesses.
34
35
  * @evidence contracts/common.md#clear-and-simple-design
35
36
  * One root, directory index and filter set define the tracker; broker and local
36
37
  * paths share those decisions rather than duplicating backend-specific policies.
@@ -17,9 +17,10 @@ import type { TtscProjectMutationTracker } from "./TtscProjectMutationTracker.mj
17
17
  * recorded-state validation supplies the actual verdict. Content witnesses
18
18
  * preserve captured native input aliases, then reject only an observed normal
19
19
  * directory excluded in both lexical and native spellings. Unknown, missing and
20
- * linked ancestry remains conservative. Membership rejection still withdraws
21
- * notification authority even when content is outside the walk. Named events
22
- * also compare current native identity and case policy with the retained
20
+ * linked ancestry remains conservative. Membership rejection withdraws
21
+ * notification authority except below such a proven excluded directory, so a
22
+ * recursive backend's writes to a cache or output tree cost no proof. Named
23
+ * events also compare current native identity and case policy with the retained
23
24
  * identity transaction. Retargeting withdraws notification authority without
24
25
  * changing the meaning of earlier recorded event spellings.
25
26
  *
@@ -29,8 +30,8 @@ import type { TtscProjectMutationTracker } from "./TtscProjectMutationTracker.mj
29
30
  * A lexical nonmatch is uncertainty rather than native alias exclusion.
30
31
  * Changed native identity premises also withdraw notification proof while
31
32
  * membership and content witnesses keep their independent classifications.
32
- * Content exclusion requires normal directory identity and both policy
33
- * spellings; captured native input aliases remain content witnesses.
33
+ * Content and membership exclusion require normal directory identity and both
34
+ * policy spellings; captured native input aliases remain content witnesses.
34
35
  * @evidence contracts/common.md#clear-and-simple-design
35
36
  * One root, directory index and filter set define the tracker; broker and local
36
37
  * paths share those decisions rather than duplicating backend-specific policies.
@@ -17,9 +17,10 @@ import type { TtscProjectMutationTracker } from "./TtscProjectMutationTracker";
17
17
  * recorded-state validation supplies the actual verdict. Content witnesses
18
18
  * preserve captured native input aliases, then reject only an observed normal
19
19
  * directory excluded in both lexical and native spellings. Unknown, missing and
20
- * linked ancestry remains conservative. Membership rejection still withdraws
21
- * notification authority even when content is outside the walk. Named events
22
- * also compare current native identity and case policy with the retained
20
+ * linked ancestry remains conservative. Membership rejection withdraws
21
+ * notification authority except below such a proven excluded directory, so a
22
+ * recursive backend's writes to a cache or output tree cost no proof. Named
23
+ * events also compare current native identity and case policy with the retained
23
24
  * identity transaction. Retargeting withdraws notification authority without
24
25
  * changing the meaning of earlier recorded event spellings.
25
26
  *
@@ -29,8 +30,8 @@ import type { TtscProjectMutationTracker } from "./TtscProjectMutationTracker";
29
30
  * A lexical nonmatch is uncertainty rather than native alias exclusion.
30
31
  * Changed native identity premises also withdraw notification proof while
31
32
  * membership and content witnesses keep their independent classifications.
32
- * Content exclusion requires normal directory identity and both policy
33
- * spellings; captured native input aliases remain content witnesses.
33
+ * Content and membership exclusion require normal directory identity and both
34
+ * policy spellings; captured native input aliases remain content witnesses.
34
35
  * @evidence contracts/common.md#clear-and-simple-design
35
36
  * One root, directory index and filter set define the tracker; broker and local
36
37
  * paths share those decisions rather than duplicating backend-specific policies.
@@ -33,9 +33,10 @@ var watchLocationIdentity = require('./watchLocationIdentity.js');
33
33
  * recorded-state validation supplies the actual verdict. Content witnesses
34
34
  * preserve captured native input aliases, then reject only an observed normal
35
35
  * directory excluded in both lexical and native spellings. Unknown, missing and
36
- * linked ancestry remains conservative. Membership rejection still withdraws
37
- * notification authority even when content is outside the walk. Named events
38
- * also compare current native identity and case policy with the retained
36
+ * linked ancestry remains conservative. Membership rejection withdraws
37
+ * notification authority except below such a proven excluded directory, so a
38
+ * recursive backend's writes to a cache or output tree cost no proof. Named
39
+ * events also compare current native identity and case policy with the retained
39
40
  * identity transaction. Retargeting withdraws notification authority without
40
41
  * changing the meaning of earlier recorded event spellings.
41
42
  *
@@ -45,8 +46,8 @@ var watchLocationIdentity = require('./watchLocationIdentity.js');
45
46
  * A lexical nonmatch is uncertainty rather than native alias exclusion.
46
47
  * Changed native identity premises also withdraw notification proof while
47
48
  * membership and content witnesses keep their independent classifications.
48
- * Content exclusion requires normal directory identity and both policy
49
- * spellings; captured native input aliases remain content witnesses.
49
+ * Content and membership exclusion require normal directory identity and both
50
+ * policy spellings; captured native input aliases remain content witnesses.
50
51
  * @evidence contracts/common.md#clear-and-simple-design
51
52
  * One root, directory index and filter set define the tracker; broker and local
52
53
  * paths share those decisions rather than duplicating backend-specific policies.
@@ -128,6 +129,50 @@ async function createProjectMutationTracker(directories, covered, filesystem = D
128
129
  const knownDirectories = new Set(directories
129
130
  .filter((directory) => directory.relevant)
130
131
  .map((directory) => paths.resolve(directory.path)));
132
+ // Whether an event path lies below a directory the walk excludes, proven by
133
+ // an observed normal directory excluded in both its lexical and its native
134
+ // spelling. A missing ancestor, one outside the root, or a link before that
135
+ // directory proves nothing. Content stops at the excluded directory, since a
136
+ // captured input reached through a deeper link is already caught by its
137
+ // identity above. Membership has no identity to catch a new file created
138
+ // through such a link (`node_modules/linked -> src`), so for it the whole
139
+ // path must be links-free.
140
+ const excludedFromWalk = (changed, wholePath) => {
141
+ const relative = paths.relative(root, paths.dirname(changed));
142
+ if (relative === ".." ||
143
+ relative.startsWith(".." + paths.sep) ||
144
+ paths.isAbsolute(relative))
145
+ return false;
146
+ let directory = root;
147
+ let excluded = false;
148
+ for (const component of relative.split(paths.sep).filter(Boolean)) {
149
+ directory = paths.join(directory, component);
150
+ try {
151
+ const before = filesystem.lstat(directory);
152
+ if (!before.isDirectory() || before.isSymbolicLink())
153
+ return false;
154
+ const physical = filesystem.realpath(directory);
155
+ const after = filesystem.lstat(directory);
156
+ if (!after.isDirectory() ||
157
+ after.isSymbolicLink() ||
158
+ before.dev !== after.dev ||
159
+ before.ino !== after.ino)
160
+ return false;
161
+ if (!excluded &&
162
+ !isProjectWalkDirectory.isProjectWalkDirectory(directory, policy, filesystem.platform) &&
163
+ !isProjectWalkDirectory.isProjectWalkDirectory(physical, policy, filesystem.platform)) {
164
+ if (!wholePath)
165
+ return true;
166
+ excluded = true;
167
+ }
168
+ }
169
+ catch {
170
+ // Missing/deleted ancestors and unknown native spellings remain events.
171
+ return false;
172
+ }
173
+ }
174
+ return excluded;
175
+ };
131
176
  const reportsMembership = (location, filename) => {
132
177
  const changed = paths.join(location, filename);
133
178
  const current = createHostPathIdentityContext.createHostPathIdentityContext(filesystem);
@@ -143,8 +188,12 @@ async function createProjectMutationTracker(directories, covered, filesystem = D
143
188
  const membership = knownDirectories.has(paths.resolve(changed)) ||
144
189
  reportsProgramMembership.reportsProgramMembership(root, changed, paths.basename(filename), policy, filesystem);
145
190
  // Current realpath cannot identify a deleted alias. Policy checks only
146
- // lexical spellings, so rejection cannot establish unchanged program state.
147
- if (!membership)
191
+ // lexical spellings, so rejection cannot establish unchanged program state,
192
+ // except below a directory the walk provably excludes. A recursive backend
193
+ // (macOS, Windows) hears every write under the root, a cache or an output
194
+ // directory among them, and withdrawing authority for each sent every later
195
+ // delivery to the whole-snapshot proof.
196
+ if (!membership && !excludedFromWalk(changed, true))
148
197
  tracker.unverified = true;
149
198
  return membership;
150
199
  };
@@ -176,35 +225,7 @@ async function createProjectMutationTracker(directories, covered, filesystem = D
176
225
  tracker.unverified = true;
177
226
  return true;
178
227
  }
179
- const relative = paths.relative(root, paths.dirname(changed));
180
- if (relative === ".." ||
181
- relative.startsWith(".." + paths.sep) ||
182
- paths.isAbsolute(relative))
183
- return true;
184
- let directory = root;
185
- for (const component of relative.split(paths.sep).filter(Boolean)) {
186
- directory = paths.join(directory, component);
187
- try {
188
- const before = filesystem.lstat(directory);
189
- if (!before.isDirectory() || before.isSymbolicLink())
190
- return true;
191
- const physical = filesystem.realpath(directory);
192
- const after = filesystem.lstat(directory);
193
- if (!after.isDirectory() ||
194
- after.isSymbolicLink() ||
195
- before.dev !== after.dev ||
196
- before.ino !== after.ino)
197
- return true;
198
- if (!isProjectWalkDirectory.isProjectWalkDirectory(directory, policy, filesystem.platform) &&
199
- !isProjectWalkDirectory.isProjectWalkDirectory(physical, policy, filesystem.platform))
200
- return false;
201
- }
202
- catch {
203
- // Missing/deleted ancestors and unknown native spellings remain events.
204
- return true;
205
- }
206
- }
207
- return true;
228
+ return !excludedFromWalk(changed, false);
208
229
  };
209
230
  const reportsNewMembership = (location, filename) => {
210
231
  const changed = paths.resolve(location, filename);
@@ -1 +1 @@
1
- {"version":3,"file":"createProjectMutationTracker.js","sources":["../../../../src/core/transform/tracker/createProjectMutationTracker.ts"],"sourcesContent":[null],"names":["DEFAULT_FILESYSTEM_OPERATIONS","PERMISSIVE_PROJECT_MEMBERSHIP_POLICY","createHostPathIdentityContext","watchLocationIdentity","pathIdentityKey","reportsProgramMembership","isPossibleProgramFileName","isProjectWalkDirectory","usesWatchBroker","registerBrokeredMutationTracker","closeDirectoryWatches","openDirectoryWatch","recordProjectMutation","recordProjectChange","settleOpenedDirectoryWatches","pathIsWithin"],"mappings":"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"}
1
+ {"version":3,"file":"createProjectMutationTracker.js","sources":["../../../../src/core/transform/tracker/createProjectMutationTracker.ts"],"sourcesContent":[null],"names":["DEFAULT_FILESYSTEM_OPERATIONS","PERMISSIVE_PROJECT_MEMBERSHIP_POLICY","createHostPathIdentityContext","watchLocationIdentity","isProjectWalkDirectory","pathIdentityKey","reportsProgramMembership","isPossibleProgramFileName","usesWatchBroker","registerBrokeredMutationTracker","closeDirectoryWatches","openDirectoryWatch","recordProjectMutation","recordProjectChange","settleOpenedDirectoryWatches","pathIsWithin"],"mappings":"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"}
@@ -31,9 +31,10 @@ import { watchLocationIdentity } from './watchLocationIdentity.mjs';
31
31
  * recorded-state validation supplies the actual verdict. Content witnesses
32
32
  * preserve captured native input aliases, then reject only an observed normal
33
33
  * directory excluded in both lexical and native spellings. Unknown, missing and
34
- * linked ancestry remains conservative. Membership rejection still withdraws
35
- * notification authority even when content is outside the walk. Named events
36
- * also compare current native identity and case policy with the retained
34
+ * linked ancestry remains conservative. Membership rejection withdraws
35
+ * notification authority except below such a proven excluded directory, so a
36
+ * recursive backend's writes to a cache or output tree cost no proof. Named
37
+ * events also compare current native identity and case policy with the retained
37
38
  * identity transaction. Retargeting withdraws notification authority without
38
39
  * changing the meaning of earlier recorded event spellings.
39
40
  *
@@ -43,8 +44,8 @@ import { watchLocationIdentity } from './watchLocationIdentity.mjs';
43
44
  * A lexical nonmatch is uncertainty rather than native alias exclusion.
44
45
  * Changed native identity premises also withdraw notification proof while
45
46
  * membership and content witnesses keep their independent classifications.
46
- * Content exclusion requires normal directory identity and both policy
47
- * spellings; captured native input aliases remain content witnesses.
47
+ * Content and membership exclusion require normal directory identity and both
48
+ * policy spellings; captured native input aliases remain content witnesses.
48
49
  * @evidence contracts/common.md#clear-and-simple-design
49
50
  * One root, directory index and filter set define the tracker; broker and local
50
51
  * paths share those decisions rather than duplicating backend-specific policies.
@@ -126,6 +127,50 @@ async function createProjectMutationTracker(directories, covered, filesystem = D
126
127
  const knownDirectories = new Set(directories
127
128
  .filter((directory) => directory.relevant)
128
129
  .map((directory) => paths.resolve(directory.path)));
130
+ // Whether an event path lies below a directory the walk excludes, proven by
131
+ // an observed normal directory excluded in both its lexical and its native
132
+ // spelling. A missing ancestor, one outside the root, or a link before that
133
+ // directory proves nothing. Content stops at the excluded directory, since a
134
+ // captured input reached through a deeper link is already caught by its
135
+ // identity above. Membership has no identity to catch a new file created
136
+ // through such a link (`node_modules/linked -> src`), so for it the whole
137
+ // path must be links-free.
138
+ const excludedFromWalk = (changed, wholePath) => {
139
+ const relative = paths.relative(root, paths.dirname(changed));
140
+ if (relative === ".." ||
141
+ relative.startsWith(".." + paths.sep) ||
142
+ paths.isAbsolute(relative))
143
+ return false;
144
+ let directory = root;
145
+ let excluded = false;
146
+ for (const component of relative.split(paths.sep).filter(Boolean)) {
147
+ directory = paths.join(directory, component);
148
+ try {
149
+ const before = filesystem.lstat(directory);
150
+ if (!before.isDirectory() || before.isSymbolicLink())
151
+ return false;
152
+ const physical = filesystem.realpath(directory);
153
+ const after = filesystem.lstat(directory);
154
+ if (!after.isDirectory() ||
155
+ after.isSymbolicLink() ||
156
+ before.dev !== after.dev ||
157
+ before.ino !== after.ino)
158
+ return false;
159
+ if (!excluded &&
160
+ !isProjectWalkDirectory(directory, policy, filesystem.platform) &&
161
+ !isProjectWalkDirectory(physical, policy, filesystem.platform)) {
162
+ if (!wholePath)
163
+ return true;
164
+ excluded = true;
165
+ }
166
+ }
167
+ catch {
168
+ // Missing/deleted ancestors and unknown native spellings remain events.
169
+ return false;
170
+ }
171
+ }
172
+ return excluded;
173
+ };
129
174
  const reportsMembership = (location, filename) => {
130
175
  const changed = paths.join(location, filename);
131
176
  const current = createHostPathIdentityContext(filesystem);
@@ -141,8 +186,12 @@ async function createProjectMutationTracker(directories, covered, filesystem = D
141
186
  const membership = knownDirectories.has(paths.resolve(changed)) ||
142
187
  reportsProgramMembership(root, changed, paths.basename(filename), policy, filesystem);
143
188
  // Current realpath cannot identify a deleted alias. Policy checks only
144
- // lexical spellings, so rejection cannot establish unchanged program state.
145
- if (!membership)
189
+ // lexical spellings, so rejection cannot establish unchanged program state,
190
+ // except below a directory the walk provably excludes. A recursive backend
191
+ // (macOS, Windows) hears every write under the root, a cache or an output
192
+ // directory among them, and withdrawing authority for each sent every later
193
+ // delivery to the whole-snapshot proof.
194
+ if (!membership && !excludedFromWalk(changed, true))
146
195
  tracker.unverified = true;
147
196
  return membership;
148
197
  };
@@ -174,35 +223,7 @@ async function createProjectMutationTracker(directories, covered, filesystem = D
174
223
  tracker.unverified = true;
175
224
  return true;
176
225
  }
177
- const relative = paths.relative(root, paths.dirname(changed));
178
- if (relative === ".." ||
179
- relative.startsWith(".." + paths.sep) ||
180
- paths.isAbsolute(relative))
181
- return true;
182
- let directory = root;
183
- for (const component of relative.split(paths.sep).filter(Boolean)) {
184
- directory = paths.join(directory, component);
185
- try {
186
- const before = filesystem.lstat(directory);
187
- if (!before.isDirectory() || before.isSymbolicLink())
188
- return true;
189
- const physical = filesystem.realpath(directory);
190
- const after = filesystem.lstat(directory);
191
- if (!after.isDirectory() ||
192
- after.isSymbolicLink() ||
193
- before.dev !== after.dev ||
194
- before.ino !== after.ino)
195
- return true;
196
- if (!isProjectWalkDirectory(directory, policy, filesystem.platform) &&
197
- !isProjectWalkDirectory(physical, policy, filesystem.platform))
198
- return false;
199
- }
200
- catch {
201
- // Missing/deleted ancestors and unknown native spellings remain events.
202
- return true;
203
- }
204
- }
205
- return true;
226
+ return !excludedFromWalk(changed, false);
206
227
  };
207
228
  const reportsNewMembership = (location, filename) => {
208
229
  const changed = paths.resolve(location, filename);
@@ -1 +1 @@
1
- {"version":3,"file":"createProjectMutationTracker.mjs","sources":["../../../../src/core/transform/tracker/createProjectMutationTracker.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createProjectMutationTracker.mjs","sources":["../../../../src/core/transform/tracker/createProjectMutationTracker.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ttsc/unplugin",
3
- "version": "0.31.4",
3
+ "version": "0.31.5",
4
4
  "description": "Bundler adapters for ttsc plugins.",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib/index.mjs",
@@ -202,7 +202,7 @@
202
202
  "fsevents": "^2.3.3"
203
203
  },
204
204
  "peerDependencies": {
205
- "ttsc": "^0.31.4"
205
+ "ttsc": "^0.31.5"
206
206
  },
207
207
  "devDependencies": {
208
208
  "@wrtnlabs/evidence": "^0.3.1",
@@ -217,7 +217,7 @@
217
217
  "tslib": "^2.8.1",
218
218
  "typescript": "^7.0.2",
219
219
  "vite": "^7.3.5",
220
- "ttsc": "0.31.4"
220
+ "ttsc": "0.31.5"
221
221
  },
222
222
  "repository": {
223
223
  "type": "git",
@@ -119,6 +119,8 @@ const registrations = new Map();
119
119
  const DROPPED = 0x1 | 0x2 | 0x4 | 0x8 | 0x20 | 0x40 | 0x80;
120
120
  const MODIFIED = 0x400 | 0x1000 | 0x2000 | 0x4000 | 0x8000;
121
121
  const RENAMED = 0x100 | 0x200 | 0x800;
122
+ const CREATED = 0x100;
123
+ const MOVED = 0x200 | 0x800;
122
124
  const fsevents = load();
123
125
  let probeSequence = 0;
124
126
 
@@ -203,6 +205,8 @@ function stream(location, deliver, registration) {
203
205
  const root = probe === undefined ? directory : probe.root;
204
206
  const within = (parent, file) => file === parent || file.startsWith(parent.endsWith("/") ? parent : parent + "/");
205
207
  const opened = { close: undefined, location: location.directory, pending: new Map(), probe, proven: probe === undefined };
208
+ // Anything born before this instant was not created in this stream.
209
+ const openedAt = Date.now();
206
210
  const stop = fsevents.watch(root, (file, flags) => {
207
211
  // Loss authority is independent of the path, including our own probe.
208
212
  if ((flags & DROPPED) !== 0) {
@@ -232,6 +236,16 @@ function stream(location, deliver, registration) {
232
236
  }
233
237
  const filename = file.slice(directory.length + 1);
234
238
  if (location.recursive !== true && filename.includes("/")) return;
239
+ // FSEvents keeps ItemCreated on later writes to a path it saw created, so a
240
+ // plain edit of a file older than this stream arrived as a rename, a
241
+ // membership change that replaced generations for an unrelated write. An
242
+ // object born before the stream opened was not created in it; its other
243
+ // flags decide. A removal or a rename keeps the event structural.
244
+ if ((flags & CREATED) !== 0 && (flags & MOVED) === 0 && (flags & MODIFIED) !== 0) {
245
+ try {
246
+ if (fs.lstatSync(file).birthtimeMs < openedAt) flags &= ~CREATED;
247
+ } catch {}
248
+ }
235
249
  deliver((flags & MODIFIED) !== 0 && (flags & RENAMED) === 0 ? "change" : "rename", filename);
236
250
  });
237
251
  opened.close = () => {
@@ -399,6 +399,17 @@ export async function createHostInputMutationTracker(
399
399
  * an event the backend could not attribute to a name may concern any input
400
400
  * below the watched directory, so it always counts.
401
401
  */
402
+ // Whether a path names an existing object that no other name can reach:
403
+ // not a link, and not a file with a second hard link, whose writes could
404
+ // land on a tracked input without an event on its name.
405
+ const distinctExistingObject = (location: string): boolean => {
406
+ try {
407
+ const stats = filesystem.lstat(location);
408
+ return !stats.isSymbolicLink() && !(stats.isFile() && stats.nlink > 1n);
409
+ } catch {
410
+ return false;
411
+ }
412
+ };
402
413
  const classify = (
403
414
  directory: string,
404
415
  filename: string | null,
@@ -477,6 +488,13 @@ export async function createHostInputMutationTracker(
477
488
  return "mutation";
478
489
  }
479
490
  }
491
+ // An object that exists now resolves to its own identity under every alias,
492
+ // so one that is neither a link nor a second name of a file, and resolves
493
+ // to nothing tracked above, is a different object. A recursive backend
494
+ // (macOS, Windows) hears every write below the project root, and
495
+ // withdrawing authority for each sent every later delivery past its
496
+ // notifications.
497
+ if (distinctExistingObject(changed)) return undefined;
480
498
  // A missing native alias cannot be recovered by current realpath. Neither
481
499
  // ASCII spelling nor OS name proves this event unrelated to a tracked path.
482
500
  // Keep exact metadata validation without inventing a membership mutation.
@@ -36,9 +36,10 @@ import { watchLocationIdentity } from "./watchLocationIdentity";
36
36
  * recorded-state validation supplies the actual verdict. Content witnesses
37
37
  * preserve captured native input aliases, then reject only an observed normal
38
38
  * directory excluded in both lexical and native spellings. Unknown, missing and
39
- * linked ancestry remains conservative. Membership rejection still withdraws
40
- * notification authority even when content is outside the walk. Named events
41
- * also compare current native identity and case policy with the retained
39
+ * linked ancestry remains conservative. Membership rejection withdraws
40
+ * notification authority except below such a proven excluded directory, so a
41
+ * recursive backend's writes to a cache or output tree cost no proof. Named
42
+ * events also compare current native identity and case policy with the retained
42
43
  * identity transaction. Retargeting withdraws notification authority without
43
44
  * changing the meaning of earlier recorded event spellings.
44
45
  *
@@ -48,8 +49,8 @@ import { watchLocationIdentity } from "./watchLocationIdentity";
48
49
  * A lexical nonmatch is uncertainty rather than native alias exclusion.
49
50
  * Changed native identity premises also withdraw notification proof while
50
51
  * membership and content witnesses keep their independent classifications.
51
- * Content exclusion requires normal directory identity and both policy
52
- * spellings; captured native input aliases remain content witnesses.
52
+ * Content and membership exclusion require normal directory identity and both
53
+ * policy spellings; captured native input aliases remain content witnesses.
53
54
  * @evidence contracts/common.md#clear-and-simple-design
54
55
  * One root, directory index and filter set define the tracker; broker and local
55
56
  * paths share those decisions rather than duplicating backend-specific policies.
@@ -145,6 +146,53 @@ export async function createProjectMutationTracker(
145
146
  .filter((directory) => directory.relevant)
146
147
  .map((directory) => paths.resolve(directory.path)),
147
148
  );
149
+ // Whether an event path lies below a directory the walk excludes, proven by
150
+ // an observed normal directory excluded in both its lexical and its native
151
+ // spelling. A missing ancestor, one outside the root, or a link before that
152
+ // directory proves nothing. Content stops at the excluded directory, since a
153
+ // captured input reached through a deeper link is already caught by its
154
+ // identity above. Membership has no identity to catch a new file created
155
+ // through such a link (`node_modules/linked -> src`), so for it the whole
156
+ // path must be links-free.
157
+ const excludedFromWalk = (changed: string, wholePath: boolean): boolean => {
158
+ const relative = paths.relative(root, paths.dirname(changed));
159
+ if (
160
+ relative === ".." ||
161
+ relative.startsWith(".." + paths.sep) ||
162
+ paths.isAbsolute(relative)
163
+ )
164
+ return false;
165
+ let directory = root;
166
+ let excluded = false;
167
+ for (const component of relative.split(paths.sep).filter(Boolean)) {
168
+ directory = paths.join(directory, component);
169
+ try {
170
+ const before = filesystem.lstat(directory);
171
+ if (!before.isDirectory() || before.isSymbolicLink()) return false;
172
+ const physical = filesystem.realpath(directory);
173
+ const after = filesystem.lstat(directory);
174
+ if (
175
+ !after.isDirectory() ||
176
+ after.isSymbolicLink() ||
177
+ before.dev !== after.dev ||
178
+ before.ino !== after.ino
179
+ )
180
+ return false;
181
+ if (
182
+ !excluded &&
183
+ !isProjectWalkDirectory(directory, policy, filesystem.platform) &&
184
+ !isProjectWalkDirectory(physical, policy, filesystem.platform)
185
+ ) {
186
+ if (!wholePath) return true;
187
+ excluded = true;
188
+ }
189
+ } catch {
190
+ // Missing/deleted ancestors and unknown native spellings remain events.
191
+ return false;
192
+ }
193
+ }
194
+ return excluded;
195
+ };
148
196
  const reportsMembership = (location: string, filename: string): boolean => {
149
197
  const changed = paths.join(location, filename);
150
198
  const current = createHostPathIdentityContext(filesystem);
@@ -169,8 +217,13 @@ export async function createProjectMutationTracker(
169
217
  filesystem,
170
218
  );
171
219
  // Current realpath cannot identify a deleted alias. Policy checks only
172
- // lexical spellings, so rejection cannot establish unchanged program state.
173
- if (!membership) tracker.unverified = true;
220
+ // lexical spellings, so rejection cannot establish unchanged program state,
221
+ // except below a directory the walk provably excludes. A recursive backend
222
+ // (macOS, Windows) hears every write under the root, a cache or an output
223
+ // directory among them, and withdrawing authority for each sent every later
224
+ // delivery to the whole-snapshot proof.
225
+ if (!membership && !excludedFromWalk(changed, true))
226
+ tracker.unverified = true;
174
227
  return membership;
175
228
  };
176
229
  // Content belongs to the walk too. A recursive native backend can report
@@ -201,39 +254,7 @@ export async function createProjectMutationTracker(
201
254
  tracker.unverified = true;
202
255
  return true;
203
256
  }
204
- const relative = paths.relative(root, paths.dirname(changed));
205
- if (
206
- relative === ".." ||
207
- relative.startsWith(".." + paths.sep) ||
208
- paths.isAbsolute(relative)
209
- )
210
- return true;
211
- let directory = root;
212
- for (const component of relative.split(paths.sep).filter(Boolean)) {
213
- directory = paths.join(directory, component);
214
- try {
215
- const before = filesystem.lstat(directory);
216
- if (!before.isDirectory() || before.isSymbolicLink()) return true;
217
- const physical = filesystem.realpath(directory);
218
- const after = filesystem.lstat(directory);
219
- if (
220
- !after.isDirectory() ||
221
- after.isSymbolicLink() ||
222
- before.dev !== after.dev ||
223
- before.ino !== after.ino
224
- )
225
- return true;
226
- if (
227
- !isProjectWalkDirectory(directory, policy, filesystem.platform) &&
228
- !isProjectWalkDirectory(physical, policy, filesystem.platform)
229
- )
230
- return false;
231
- } catch {
232
- // Missing/deleted ancestors and unknown native spellings remain events.
233
- return true;
234
- }
235
- }
236
- return true;
257
+ return !excludedFromWalk(changed, false);
237
258
  };
238
259
  const reportsNewMembership = (
239
260
  location: string,