ttsc 0.34.2 → 0.35.0

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.
Files changed (76) hide show
  1. package/driver/compileraliases/names.go +69 -0
  2. package/driver/compileraliases/names_test.go +57 -0
  3. package/lib/compiler/internal/build/BuildExecution.d.ts +26 -0
  4. package/lib/compiler/internal/build/BuildExecution.js +13 -3
  5. package/lib/compiler/internal/build/BuildExecution.js.map +1 -1
  6. package/lib/compiler/internal/build/RunBuildOptions.d.ts +2 -0
  7. package/lib/compiler/internal/build/RuntimeBuildCache.d.ts +47 -0
  8. package/lib/compiler/internal/build/RuntimeBuildCache.js +235 -0
  9. package/lib/compiler/internal/build/RuntimeBuildCache.js.map +1 -0
  10. package/lib/compiler/internal/build/RuntimeBuildInputs.d.ts +44 -0
  11. package/lib/compiler/internal/build/RuntimeBuildInputs.js +282 -0
  12. package/lib/compiler/internal/build/RuntimeBuildInputs.js.map +1 -0
  13. package/lib/compiler/internal/build/RuntimeInputProof.d.ts +50 -0
  14. package/lib/compiler/internal/build/RuntimeInputProof.js +315 -0
  15. package/lib/compiler/internal/build/RuntimeInputProof.js.map +1 -0
  16. package/lib/compiler/internal/build/TsgoArguments.d.ts +5 -4
  17. package/lib/compiler/internal/build/TsgoArguments.js +11 -5
  18. package/lib/compiler/internal/build/TsgoArguments.js.map +1 -1
  19. package/lib/compiler/internal/build/runBuild.d.ts +3 -3
  20. package/lib/compiler/internal/build/runBuild.js +17 -4
  21. package/lib/compiler/internal/build/runBuild.js.map +1 -1
  22. package/lib/compiler/internal/resolveNativeTypeScriptPackage.d.ts +27 -0
  23. package/lib/compiler/internal/resolveNativeTypeScriptPackage.js +103 -0
  24. package/lib/compiler/internal/resolveNativeTypeScriptPackage.js.map +1 -0
  25. package/lib/compiler/internal/resolveTsgo.d.ts +7 -6
  26. package/lib/compiler/internal/resolveTsgo.js +16 -35
  27. package/lib/compiler/internal/resolveTsgo.js.map +1 -1
  28. package/lib/compiler/internal/runNativeCheckWithObservations.d.ts +18 -14
  29. package/lib/compiler/internal/runNativeCheckWithObservations.js +42 -18
  30. package/lib/compiler/internal/runNativeCheckWithObservations.js.map +1 -1
  31. package/lib/flags/FLAG_SCHEMA.js +7 -0
  32. package/lib/flags/FLAG_SCHEMA.js.map +1 -1
  33. package/lib/internal/nativeBinary.d.ts +4 -0
  34. package/lib/internal/nativeBinary.js +6 -1
  35. package/lib/internal/nativeBinary.js.map +1 -1
  36. package/lib/launcher/internal/parseTtsxCLI.d.ts +1 -0
  37. package/lib/launcher/internal/parseTtsxCLI.js +1 -0
  38. package/lib/launcher/internal/parseTtsxCLI.js.map +1 -1
  39. package/lib/launcher/internal/prepareExecution.d.ts +2 -0
  40. package/lib/launcher/internal/prepareExecution.js +11 -2
  41. package/lib/launcher/internal/prepareExecution.js.map +1 -1
  42. package/lib/launcher/internal/runTtsx.js +5 -0
  43. package/lib/launcher/internal/runTtsx.js.map +1 -1
  44. package/lib/launcher/internal/runtime/installRuntimeHooks.js +7 -0
  45. package/lib/launcher/internal/runtime/installRuntimeHooks.js.map +1 -1
  46. package/lib/plugin/internal/load/loadProjectPlugins.js +1 -0
  47. package/lib/plugin/internal/load/loadProjectPlugins.js.map +1 -1
  48. package/lib/plugin/internal/source/SourceBuildCacheLayout.d.ts +2 -0
  49. package/lib/plugin/internal/source/SourceBuildCacheLayout.js +3 -0
  50. package/lib/plugin/internal/source/SourceBuildCacheLayout.js.map +1 -1
  51. package/lib/plugin/internal/source/pluginBuildVersions.d.ts +8 -7
  52. package/lib/plugin/internal/source/pluginBuildVersions.js +13 -13
  53. package/lib/plugin/internal/source/pluginBuildVersions.js.map +1 -1
  54. package/lib/structures/ITtscPluginCapabilities.d.ts +13 -2
  55. package/package.json +9 -9
  56. package/src/compiler/internal/build/BuildExecution.ts +32 -16
  57. package/src/compiler/internal/build/RunBuildOptions.ts +3 -0
  58. package/src/compiler/internal/build/RuntimeBuildCache.ts +252 -0
  59. package/src/compiler/internal/build/RuntimeBuildInputs.ts +349 -0
  60. package/src/compiler/internal/build/RuntimeInputProof.ts +346 -0
  61. package/src/compiler/internal/build/TsgoArguments.ts +11 -5
  62. package/src/compiler/internal/build/runBuild.ts +20 -5
  63. package/src/compiler/internal/resolveNativeTypeScriptPackage.ts +110 -0
  64. package/src/compiler/internal/resolveTsgo.ts +17 -36
  65. package/src/compiler/internal/runNativeCheckWithObservations.ts +41 -18
  66. package/src/flags/FLAG_SCHEMA.ts +7 -0
  67. package/src/internal/nativeBinary.ts +4 -0
  68. package/src/launcher/internal/parseTtsxCLI.ts +1 -0
  69. package/src/launcher/internal/prepareExecution.ts +20 -2
  70. package/src/launcher/internal/runTtsx.ts +5 -0
  71. package/src/launcher/internal/runtime/installRuntimeHooks.ts +11 -0
  72. package/src/plugin/internal/load/loadProjectPlugins.ts +1 -0
  73. package/src/plugin/internal/source/SourceBuildCacheLayout.ts +4 -0
  74. package/src/plugin/internal/source/pluginBuildVersions.ts +13 -15
  75. package/src/structures/ITtscPluginCapabilities.ts +14 -2
  76. package/utility/host.go +22 -1
@@ -0,0 +1,69 @@
1
+ // Package compileraliases discovers npm aliases by their declared package target.
2
+ package compileraliases
3
+
4
+ import (
5
+ "encoding/json"
6
+ "os"
7
+ "path/filepath"
8
+ "sort"
9
+ "strings"
10
+ )
11
+
12
+ // Names returns declared npm aliases targeting typescript, followed by the
13
+ // ordinary typescript name. The nearest ancestor manifest declaring TypeScript
14
+ // or its aliases owns discovery; installed dependency trees are not scanned.
15
+ // Callers still resolve each name and verify its installed package identity.
16
+ //
17
+ // @evidence contracts/common.md#principled-implementation npm aliases declare a real target independently of their exposed name. Ancestor manifest dependency maps supply those arbitrary names, while installed identity and native version remain with the caller.
18
+ // @evidence contracts/common.md#clear-and-simple-design This package owns declaration discovery once for all Go config evaluators; each evaluator retains its existing Node-style manifest and platform resolution.
19
+ // @evidence contracts/common.md#prohibited-implementation-shortcuts Only npm's target syntax and the real typescript identity are constants. No alias name, consumer or fixture controls selection.
20
+ // @evidence contracts/common.md#meaningful-documentation The comment defines filename anchors, ancestor traversal, output ordering and the caller's verification obligation; read or parse errors propagate except absent manifests.
21
+ // @evidence contracts/portability.md#os-neutral-implementation filepath.Abs, Dir and Join follow native paths; os.ReadFile closes its handles and no shell or filesystem case assumption is used.
22
+ // @evidence contracts/performance.md#efficient-algorithms The walk parses ancestor manifest bytes and visits D dependency declarations once; A unique aliases require O(A) retained names and O(A log A) sorting. No installed package population is traversed.
23
+ //
24
+ // @evidenceExclude contracts/performance.md#reuse-equivalent-work Mutable project declarations have no invalidation owner here, so every call reads current bytes.
25
+ // @evidenceExclude contracts/performance.md#bound-retention-and-release-resources Synchronous reads retain no handle; the returned name slice transfers to the caller.
26
+ func Names(anchor string) ([]string, error) {
27
+ absolute, err := filepath.Abs(anchor)
28
+ if err != nil {
29
+ return nil, err
30
+ }
31
+ aliases := make(map[string]struct{})
32
+ for directory := filepath.Dir(absolute); ; directory = filepath.Dir(directory) {
33
+ body, err := os.ReadFile(filepath.Join(directory, "package.json"))
34
+ if err != nil && !os.IsNotExist(err) {
35
+ return nil, err
36
+ }
37
+ if err == nil {
38
+ var project map[string]any
39
+ if err := json.Unmarshal(body, &project); err != nil {
40
+ return nil, err
41
+ }
42
+ declaresTypeScript := false
43
+ for _, field := range []string{"dependencies", "devDependencies", "optionalDependencies"} {
44
+ dependencies, _ := project[field].(map[string]any)
45
+ if _, exists := dependencies["typescript"]; exists {
46
+ declaresTypeScript = true
47
+ }
48
+ for name, value := range dependencies {
49
+ specifier, ok := value.(string)
50
+ if name != "typescript" && ok && (specifier == "npm:typescript" || strings.HasPrefix(specifier, "npm:typescript@")) {
51
+ aliases[name] = struct{}{}
52
+ }
53
+ }
54
+ }
55
+ if declaresTypeScript || len(aliases) != 0 {
56
+ break
57
+ }
58
+ }
59
+ if filepath.Dir(directory) == directory {
60
+ break
61
+ }
62
+ }
63
+ names := make([]string, 0, len(aliases)+1)
64
+ for name := range aliases {
65
+ names = append(names, name)
66
+ }
67
+ sort.Strings(names)
68
+ return append(names, "typescript"), nil
69
+ }
@@ -0,0 +1,57 @@
1
+ package compileraliases
2
+
3
+ import (
4
+ "os"
5
+ "path/filepath"
6
+ "reflect"
7
+ "testing"
8
+ )
9
+
10
+ // TestNamesUsesTheNearestCompilerDeclaration verifies npm alias discovery from
11
+ // declarations rather than a reserved exposed name.
12
+ //
13
+ // 1. Declare arbitrary aliases across all supported dependency maps.
14
+ // 2. Discover them from a nested file, excluding a different npm target.
15
+ // 3. Give the nested package its own compiler declaration and require isolation.
16
+ //
17
+ // @evidence contracts/testing.md#behavioral-verification Calls Names over authored manifests and compares the candidate names it returns; an npm target lookalike must be excluded and a workspace's own compiler declaration must stop ancestor alias discovery.
18
+ // @evidence contracts/testing.md#independent-expectations The aliases alpha, middle and zeta target typescript by literal npm syntax; the contract sorts them before the ordinary typescript fallback. A local typescript declaration independently prescribes the singleton fallback.
19
+ // @evidence contracts/testing.md#distinguishing-cases Exercises dependencies, devDependencies and optionalDependencies, an unrelated target, nested discovery, local declaration isolation, malformed metadata failure and an absent local manifest after removal.
20
+ // @evidence contracts/testing.md#execution-ownership This directly discovered Go unit calls Names in-process over t.TempDir inputs. It resolves no installed compiler and starts no process.
21
+ func TestNamesUsesTheNearestCompilerDeclaration(t *testing.T) {
22
+ root := t.TempDir()
23
+ nested := filepath.Join(root, "workspace")
24
+ if err := os.MkdirAll(nested, 0o755); err != nil {
25
+ t.Fatal(err)
26
+ }
27
+ write := func(file, body string) {
28
+ t.Helper()
29
+ if err := os.WriteFile(file, []byte(body), 0o644); err != nil {
30
+ t.Fatal(err)
31
+ }
32
+ }
33
+ write(filepath.Join(root, "package.json"), `{"dependencies":{"zeta":"npm:typescript@7","unrelated":"npm:typescript-helper@7"},"devDependencies":{"alpha":"npm:typescript@next"},"optionalDependencies":{"middle":"npm:typescript"}}`)
34
+ anchor := filepath.Join(nested, "lint.config.ts")
35
+ got, err := Names(anchor)
36
+ want := []string{"alpha", "middle", "zeta", "typescript"}
37
+ if err != nil || !reflect.DeepEqual(got, want) {
38
+ t.Fatalf("Names = %v, %v; want %v", got, err, want)
39
+ }
40
+ manifest := filepath.Join(nested, "package.json")
41
+ write(manifest, `{"devDependencies":{"typescript":"7.0.2"}}`)
42
+ got, err = Names(anchor)
43
+ if err != nil || !reflect.DeepEqual(got, []string{"typescript"}) {
44
+ t.Fatalf("local Names = %v, %v; want [typescript]", got, err)
45
+ }
46
+ write(manifest, "{")
47
+ if _, err := Names(anchor); err == nil {
48
+ t.Fatal("malformed manifest must fail discovery")
49
+ }
50
+ if err := os.Remove(manifest); err != nil {
51
+ t.Fatal(err)
52
+ }
53
+ got, err = Names(anchor)
54
+ if err != nil || !reflect.DeepEqual(got, want) {
55
+ t.Fatalf("restored Names = %v, %v; want %v", got, err, want)
56
+ }
57
+ }
@@ -373,6 +373,19 @@ export declare namespace BuildExecution {
373
373
  cwd: string;
374
374
  identities?: PluginContentIdentities.Store | undefined;
375
375
  nativePlugins: ITtscLoadedNativePlugin[];
376
+ pluginLoad?: {
377
+ discoveryInputsComplete: boolean;
378
+ deferredHostInputs: string[];
379
+ descriptorReadsDeclared: boolean;
380
+ hostInputHashes: Record<string, string | null>;
381
+ hostInputRealpaths: Record<string, string | null>;
382
+ hostInputs: string[];
383
+ observationsComplete?: false;
384
+ identities?: PluginContentIdentities.Store;
385
+ nativePlugins: ITtscLoadedNativePlugin[];
386
+ pluginSources: Record<string, string>;
387
+ project: ITtscParsedProjectConfig;
388
+ } | undefined;
376
389
  pluginConfigDir: string | undefined;
377
390
  pluginSetupFailure: TtscBuildResult | undefined;
378
391
  project: ITtscParsedProjectConfig;
@@ -442,6 +455,19 @@ export declare namespace BuildExecution {
442
455
  cwd: string;
443
456
  identities?: PluginContentIdentities.Store | undefined;
444
457
  nativePlugins: ITtscLoadedNativePlugin[];
458
+ pluginLoad?: {
459
+ discoveryInputsComplete: boolean;
460
+ deferredHostInputs: string[];
461
+ descriptorReadsDeclared: boolean;
462
+ hostInputHashes: Record<string, string | null>;
463
+ hostInputRealpaths: Record<string, string | null>;
464
+ hostInputs: string[];
465
+ observationsComplete?: false;
466
+ identities?: PluginContentIdentities.Store;
467
+ nativePlugins: ITtscLoadedNativePlugin[];
468
+ pluginSources: Record<string, string>;
469
+ project: ITtscParsedProjectConfig;
470
+ } | undefined;
445
471
  pluginConfigDir: string | undefined;
446
472
  pluginSetupFailure: TtscBuildResult | undefined;
447
473
  project: ITtscParsedProjectConfig;
@@ -569,7 +569,14 @@ var BuildExecution;
569
569
  */
570
570
  function buildWithNativeCompilerPlugins(options, execution, plugins, timing) {
571
571
  const host = (0, selectSharedHostPlugin_1.selectSharedHostPlugin)(plugins);
572
- const run = (provenancePath) => runNativePluginCommand(host, NativePluginArguments_1.NativePluginArguments.createNativeBuildArgs(execution, options, plugins, provenancePath), options, execution, "ttsc.build", timing, NativePluginArguments_1.NativePluginArguments.transformHostTimingLabel(plugins), TsgoArguments_1.TsgoArguments.createNativeBuildTsgoArgs(execution, options));
572
+ const run = (provenancePath) => (0, runNativeCheckWithObservations_1.runNativeCheckWithObservations)({
573
+ capabilities: options.runtimeCacheDir === undefined
574
+ ? undefined
575
+ : host.capabilities,
576
+ }, (observationArgs) => runNativePluginCommand(host, [
577
+ ...NativePluginArguments_1.NativePluginArguments.createNativeBuildArgs(execution, options, plugins, provenancePath),
578
+ ...observationArgs,
579
+ ], options, execution, "ttsc.build", timing, NativePluginArguments_1.NativePluginArguments.transformHostTimingLabel(plugins), TsgoArguments_1.TsgoArguments.createNativeBuildTsgoArgs(execution, options)), "build");
573
580
  if (options.forceEmitProvenance !== true)
574
581
  return run();
575
582
  if (host.capabilities?.emitProvenance === true)
@@ -1047,6 +1054,7 @@ var BuildExecution;
1047
1054
  });
1048
1055
  let pluginSetupFailure;
1049
1056
  let nativePlugins = [];
1057
+ let pluginLoad;
1050
1058
  // Opened only for an invocation that loads plugins, so a project without
1051
1059
  // any never gains a cache directory; the load and every later native spawn
1052
1060
  // of this invocation prove their unchanged inputs through it (#1722, #1723).
@@ -1062,7 +1070,7 @@ var BuildExecution;
1062
1070
  cacheDir,
1063
1071
  env,
1064
1072
  });
1065
- nativePlugins = (yield* loadProjectPlugins_1.loadProjectPlugins.steps({
1073
+ pluginLoad = yield* loadProjectPlugins_1.loadProjectPlugins.steps({
1066
1074
  binary: (0, resolveBinary_1.resolveBinary)({ env }) ?? "",
1067
1075
  cacheDir,
1068
1076
  cwd,
@@ -1073,7 +1081,8 @@ var BuildExecution;
1073
1081
  pluginConfigDir: options.pluginConfigDir,
1074
1082
  projectRoot,
1075
1083
  tsconfig,
1076
- })).nativePlugins;
1084
+ });
1085
+ nativePlugins = pluginLoad.nativePlugins;
1077
1086
  }
1078
1087
  else {
1079
1088
  yield options.onWatchInputs?.([]);
@@ -1092,6 +1101,7 @@ var BuildExecution;
1092
1101
  cwd,
1093
1102
  ...(identities === undefined ? {} : { identities }),
1094
1103
  nativePlugins,
1104
+ ...(pluginLoad === undefined ? {} : { pluginLoad }),
1095
1105
  pluginConfigDir: (0, resolvePluginConfigDir_1.resolvePluginConfigDir)({
1096
1106
  cwd,
1097
1107
  pluginConfigDir: options.pluginConfigDir,
@@ -1 +1 @@
1
- {"version":3,"file":"BuildExecution.js","sourceRoot":"","sources":["../../../../src/compiler/internal/build/BuildExecution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BuildExecution.js","sourceRoot":"","sources":["../../../../src/compiler/internal/build/BuildExecution.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ import type { TtscPluginSourceInputsHandler, TtscProjectInputsHandler } from "..
16
16
  * @evidenceExclude contracts/performance.md#reuse-equivalent-work A type declaration computes nothing, so there is no work to share.
17
17
  */
18
18
  export type RunBuildOptions = TtscBuildOptions & {
19
+ /** Persistent private-runtime emit documents; absence keeps ordinary builds. */
20
+ runtimeCacheDir?: string;
19
21
  /**
20
22
  * Skip the independent direct-compiler type-check gate and the added
21
23
  * `--noEmitOnError` guard. Configured plugin checks and native hosts still
@@ -0,0 +1,47 @@
1
+ import type { TtscBuildResult } from "../../../structures/internal/TtscBuildResult";
2
+ /**
3
+ * Persist completed private runtime emits as checksummed, atomically published
4
+ * documents. Readers copy admitted bytes into their own run directory, so cache
5
+ * collection and concurrent publications cannot remove an executing run's emit.
6
+ * Input discovery and producer-proof admission belong to the supplied owners.
7
+ *
8
+ * @evidence contracts/common.md#principled-implementation Content-addressed snapshots select complete checksummed result and output documents. SHA-256 consumes exact UTF-8 text; native normalization rejects absolute, dot, parent and Windows drive-relative output coordinates. Relocation changes producer output coordinates and private-root stream text while retaining source paths.
9
+ * @evidence contracts/common.md#clear-and-simple-design One operation coordinates lookup, proof, restore and publication, with private hashing, containment and relocation helpers. Input capture and producer validation remain separate callbacks.
10
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts Misses execute the original build exactly once; failed or absent proofs never manufacture successful output. Every transported output must be a normalized private descendant, without filename or consumer-name exceptions.
11
+ * @evidence contracts/common.md#meaningful-documentation Native prose distinguishes persistent storage, run-owned copies and proof ownership; run states callback stability and failure behavior, and private helper comments identify byte, path and relocation domains.
12
+ * @evidence contracts/portability.md#os-neutral-implementation Native paths, lstat, relative/join and rename own storage and containment, including Windows drive-relative rejection. Source coordinates remain unchanged; transported symlinks are refused rather than followed.
13
+ * @evidence contracts/performance.md#efficient-algorithms Lookup hashes snapshot text and reads/hashes the bounded document. Restore and publication scale with output bytes and file count, without unrelated source traversal; normalization scans path bytes and relocation scans output paths and stream text.
14
+ * @evidence contracts/performance.md#reuse-equivalent-work Equal snapshots reuse completed emits only after independent producer admission and unchanged recapture. A restored run owns its copied bytes and rebased output ledger; concurrent publishers may duplicate compilation but cannot expose partial documents.
15
+ * @evidence contracts/performance.md#bound-retention-and-release-resources Documents are capped at 128 MiB, with fresh output collection limited to a 0.7 raw-byte budget before encoding, and join the existing collected single-file cache population. Snapshots and decoded bytes are invocation-owned; staging removal is attempted in finally and run owners release output. Cleanup or collector failures can retain files; helpers retain no handles or history.
16
+ */
17
+ export declare namespace RuntimeBuildCache {
18
+ /**
19
+ * Reuse a proven private emit, or invoke the original producer once. Capture
20
+ * returns a deterministic complete input snapshot, or undefined to decline
21
+ * caching. Admission must validate the producer's extra input observations;
22
+ * the second argument is the output root that producer actually used. Cache
23
+ * IO or cache-admission failure costs reuse only. Errors thrown by the
24
+ * original build retain their normal failure policy.
25
+ *
26
+ * @evidence contracts/common.md#principled-implementation Lookup and publication bracket current input snapshots, preserve the actual producer result and require explicit extra-input admission; cache-hit output is copied before the result is rebased.
27
+ * @evidence contracts/common.md#clear-and-simple-design Snapshot, proof and build callbacks expose their independent responsibilities while the operation alone owns storage and restore cleanup.
28
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts Only successful complete emits are published; malformed, oversized, damaged or unproved documents fall through to the caller's real producer without changing compiler selection.
29
+ * @evidence contracts/common.md#meaningful-documentation Native prose states complete-snapshot meaning, producer-root coordinates, callback error policy and recoverable cache IO.
30
+ * @evidence contracts/portability.md#os-neutral-implementation Native lstat refuses aliases, path.relative checks containment and native mkdir/write/rename preserve byte payloads and host path semantics.
31
+ * @evidence contracts/performance.md#efficient-algorithms Snapshot owners dominate input work; document read/parse/hash and base64 restore scale with bounded encoded bytes, while publication walks only private output and serializes it once.
32
+ * @evidence contracts/performance.md#reuse-equivalent-work A format-and-snapshot digest names one candidate; checksum, output grammar, producer admission and unchanged recapture are independent reuse gates. Every miss calls build once.
33
+ * @evidence contracts/performance.md#bound-retention-and-release-resources Call-local decoded outputs and serialized documents are bounded by the 128 MiB admission ceiling, except fresh output collection precedes serialization; partial restores are unlinked and staging removal is attempted in finally. Collector failures can retain files under the existing cache policy.
34
+ */
35
+ function run(props: {
36
+ /** Collected single-file cache root, or undefined to bypass persistence. */
37
+ directory?: string;
38
+ /** Empty private output directory owned by this build's caller. */
39
+ emitDir: string;
40
+ /** Fresh complete input snapshot; undefined preserves ordinary execution. */
41
+ capture: () => string | undefined;
42
+ /** Producer-specific proof, with its original private output root. */
43
+ admit: (result: TtscBuildResult, emitDir: string) => boolean;
44
+ /** Original build operation, including its diagnostic policy. */
45
+ build: () => TtscBuildResult;
46
+ }): TtscBuildResult;
47
+ }
@@ -0,0 +1,235 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.RuntimeBuildCache = void 0;
7
+ const node_crypto_1 = __importDefault(require("node:crypto"));
8
+ const node_fs_1 = __importDefault(require("node:fs"));
9
+ const node_path_1 = __importDefault(require("node:path"));
10
+ const E2ETrace_1 = require("../../../internal/E2ETrace");
11
+ const recordCacheFileUse_1 = require("../../../plugin/internal/source/recordCacheFileUse");
12
+ /**
13
+ * Persist completed private runtime emits as checksummed, atomically published
14
+ * documents. Readers copy admitted bytes into their own run directory, so cache
15
+ * collection and concurrent publications cannot remove an executing run's emit.
16
+ * Input discovery and producer-proof admission belong to the supplied owners.
17
+ *
18
+ * @evidence contracts/common.md#principled-implementation Content-addressed snapshots select complete checksummed result and output documents. SHA-256 consumes exact UTF-8 text; native normalization rejects absolute, dot, parent and Windows drive-relative output coordinates. Relocation changes producer output coordinates and private-root stream text while retaining source paths.
19
+ * @evidence contracts/common.md#clear-and-simple-design One operation coordinates lookup, proof, restore and publication, with private hashing, containment and relocation helpers. Input capture and producer validation remain separate callbacks.
20
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts Misses execute the original build exactly once; failed or absent proofs never manufacture successful output. Every transported output must be a normalized private descendant, without filename or consumer-name exceptions.
21
+ * @evidence contracts/common.md#meaningful-documentation Native prose distinguishes persistent storage, run-owned copies and proof ownership; run states callback stability and failure behavior, and private helper comments identify byte, path and relocation domains.
22
+ * @evidence contracts/portability.md#os-neutral-implementation Native paths, lstat, relative/join and rename own storage and containment, including Windows drive-relative rejection. Source coordinates remain unchanged; transported symlinks are refused rather than followed.
23
+ * @evidence contracts/performance.md#efficient-algorithms Lookup hashes snapshot text and reads/hashes the bounded document. Restore and publication scale with output bytes and file count, without unrelated source traversal; normalization scans path bytes and relocation scans output paths and stream text.
24
+ * @evidence contracts/performance.md#reuse-equivalent-work Equal snapshots reuse completed emits only after independent producer admission and unchanged recapture. A restored run owns its copied bytes and rebased output ledger; concurrent publishers may duplicate compilation but cannot expose partial documents.
25
+ * @evidence contracts/performance.md#bound-retention-and-release-resources Documents are capped at 128 MiB, with fresh output collection limited to a 0.7 raw-byte budget before encoding, and join the existing collected single-file cache population. Snapshots and decoded bytes are invocation-owned; staging removal is attempted in finally and run owners release output. Cleanup or collector failures can retain files; helpers retain no handles or history.
26
+ */
27
+ var RuntimeBuildCache;
28
+ (function (RuntimeBuildCache) {
29
+ const FORMAT = "ttsx-runtime-build-v1";
30
+ const MAX_BYTES = 128 * 1024 * 1024;
31
+ /**
32
+ * Reuse a proven private emit, or invoke the original producer once. Capture
33
+ * returns a deterministic complete input snapshot, or undefined to decline
34
+ * caching. Admission must validate the producer's extra input observations;
35
+ * the second argument is the output root that producer actually used. Cache
36
+ * IO or cache-admission failure costs reuse only. Errors thrown by the
37
+ * original build retain their normal failure policy.
38
+ *
39
+ * @evidence contracts/common.md#principled-implementation Lookup and publication bracket current input snapshots, preserve the actual producer result and require explicit extra-input admission; cache-hit output is copied before the result is rebased.
40
+ * @evidence contracts/common.md#clear-and-simple-design Snapshot, proof and build callbacks expose their independent responsibilities while the operation alone owns storage and restore cleanup.
41
+ * @evidence contracts/common.md#prohibited-implementation-shortcuts Only successful complete emits are published; malformed, oversized, damaged or unproved documents fall through to the caller's real producer without changing compiler selection.
42
+ * @evidence contracts/common.md#meaningful-documentation Native prose states complete-snapshot meaning, producer-root coordinates, callback error policy and recoverable cache IO.
43
+ * @evidence contracts/portability.md#os-neutral-implementation Native lstat refuses aliases, path.relative checks containment and native mkdir/write/rename preserve byte payloads and host path semantics.
44
+ * @evidence contracts/performance.md#efficient-algorithms Snapshot owners dominate input work; document read/parse/hash and base64 restore scale with bounded encoded bytes, while publication walks only private output and serializes it once.
45
+ * @evidence contracts/performance.md#reuse-equivalent-work A format-and-snapshot digest names one candidate; checksum, output grammar, producer admission and unchanged recapture are independent reuse gates. Every miss calls build once.
46
+ * @evidence contracts/performance.md#bound-retention-and-release-resources Call-local decoded outputs and serialized documents are bounded by the 128 MiB admission ceiling, except fresh output collection precedes serialization; partial restores are unlinked and staging removal is attempted in finally. Collector failures can retain files under the existing cache policy.
47
+ */
48
+ function run(props) {
49
+ if (props.directory === undefined)
50
+ return props.build();
51
+ let snapshot;
52
+ try {
53
+ snapshot = props.capture();
54
+ }
55
+ catch {
56
+ /* An unavailable proof is a miss. */
57
+ }
58
+ if (snapshot === undefined)
59
+ return props.build();
60
+ const key = digest(FORMAT + "\0" + snapshot);
61
+ const file = node_path_1.default.join(props.directory, key + ".json");
62
+ const restored = [];
63
+ try {
64
+ const stat = node_fs_1.default.lstatSync(file);
65
+ if (!stat.isFile() || stat.isSymbolicLink() || stat.size > MAX_BYTES)
66
+ throw new Error("unusable runtime cache document");
67
+ const document = JSON.parse(node_fs_1.default.readFileSync(file, "utf8"));
68
+ if (document.format !== FORMAT ||
69
+ typeof document.payload !== "string" ||
70
+ document.hash !== digest(document.payload))
71
+ throw new Error("invalid runtime cache checksum");
72
+ const entry = JSON.parse(document.payload);
73
+ if (entry.snapshot !== snapshot ||
74
+ typeof entry.emitDir !== "string" ||
75
+ !node_path_1.default.isAbsolute(entry.emitDir) ||
76
+ entry.result?.status !== 0 ||
77
+ !Array.isArray(entry.outputs) ||
78
+ !props.admit(entry.result, entry.emitDir))
79
+ throw new Error("unproved runtime cache document");
80
+ const names = new Set();
81
+ for (const output of entry.outputs) {
82
+ if (!Array.isArray(output) ||
83
+ output.length !== 2 ||
84
+ typeof output[0] !== "string" ||
85
+ typeof output[1] !== "string" ||
86
+ !safeRelative(output[0]) ||
87
+ names.has(output[0]) ||
88
+ Buffer.from(output[1], "base64").toString("base64") !== output[1])
89
+ throw new Error("invalid runtime cache output");
90
+ names.add(output[0]);
91
+ }
92
+ for (const output of Object.keys(entry.result.emittedSources ?? {}))
93
+ if (!names.has(node_path_1.default.relative(entry.emitDir, output)))
94
+ throw new Error("missing runtime cache provenance output");
95
+ for (const [name, bytes] of entry.outputs) {
96
+ const target = node_path_1.default.join(props.emitDir, name);
97
+ node_fs_1.default.mkdirSync(node_path_1.default.dirname(target), { recursive: true });
98
+ node_fs_1.default.writeFileSync(target, Buffer.from(bytes, "base64"), { flag: "wx" });
99
+ restored.push(target);
100
+ }
101
+ if (props.capture() !== snapshot ||
102
+ !props.admit(entry.result, entry.emitDir))
103
+ throw new Error("runtime inputs moved during restore");
104
+ (0, recordCacheFileUse_1.recordCacheFileUse)(file);
105
+ E2ETrace_1.E2ETrace.capabilityResolution("runtime-build-cache", {
106
+ outcome: "reused",
107
+ key,
108
+ });
109
+ return relocate(entry.result, entry.emitDir, props.emitDir);
110
+ }
111
+ catch {
112
+ for (const output of restored)
113
+ try {
114
+ node_fs_1.default.unlinkSync(output);
115
+ }
116
+ catch {
117
+ /* Rejected cache output cannot prevent the ordinary producer. */
118
+ }
119
+ }
120
+ const result = props.build();
121
+ if (result.status !== 0)
122
+ return result;
123
+ let temporary;
124
+ try {
125
+ const outputs = [];
126
+ let outputBytes = 0;
127
+ const pending = [props.emitDir];
128
+ while (pending.length !== 0) {
129
+ const directory = pending.pop();
130
+ for (const child of node_fs_1.default.readdirSync(directory, {
131
+ withFileTypes: true,
132
+ })) {
133
+ const target = node_path_1.default.join(directory, child.name);
134
+ if (child.isSymbolicLink())
135
+ throw new Error("aliased runtime output");
136
+ if (child.isDirectory())
137
+ pending.push(target);
138
+ else if (child.isFile()) {
139
+ outputBytes += node_fs_1.default.statSync(target).size;
140
+ if (outputBytes > MAX_BYTES * 0.7)
141
+ return result;
142
+ outputs.push([
143
+ node_path_1.default.relative(props.emitDir, target),
144
+ node_fs_1.default.readFileSync(target).toString("base64"),
145
+ ]);
146
+ }
147
+ else
148
+ throw new Error("nonordinary runtime output");
149
+ }
150
+ }
151
+ if (outputs.length === 0)
152
+ return result;
153
+ const payload = JSON.stringify({
154
+ snapshot,
155
+ emitDir: props.emitDir,
156
+ result,
157
+ outputs,
158
+ });
159
+ const text = JSON.stringify({
160
+ format: FORMAT,
161
+ hash: digest(payload),
162
+ payload,
163
+ });
164
+ if (Buffer.byteLength(text) > MAX_BYTES)
165
+ return result;
166
+ if (props.capture() !== snapshot || !props.admit(result, props.emitDir))
167
+ return result;
168
+ node_fs_1.default.mkdirSync(props.directory, { recursive: true });
169
+ if (node_fs_1.default.lstatSync(props.directory).isSymbolicLink())
170
+ return result;
171
+ temporary = node_path_1.default.join(props.directory, `${key}.${node_crypto_1.default.randomUUID()}.tmp`);
172
+ node_fs_1.default.writeFileSync(temporary, text, { flag: "wx" });
173
+ node_fs_1.default.renameSync(temporary, file);
174
+ E2ETrace_1.E2ETrace.capabilityResolution("runtime-build-cache", {
175
+ outcome: "recorded",
176
+ key,
177
+ });
178
+ }
179
+ catch {
180
+ /* Persistence never replaces a fresh successful result. */
181
+ }
182
+ finally {
183
+ if (temporary !== undefined) {
184
+ try {
185
+ node_fs_1.default.unlinkSync(temporary);
186
+ }
187
+ catch {
188
+ /* Rename or later collection owns it. */
189
+ }
190
+ }
191
+ }
192
+ return result;
193
+ }
194
+ RuntimeBuildCache.run = run;
195
+ /** Hash encoded input or document bytes with SHA-256. */
196
+ function digest(text) {
197
+ return node_crypto_1.default.createHash("sha256").update(text).digest("hex");
198
+ }
199
+ /** Admit only a nonempty relative descendant coordinate. */
200
+ function safeRelative(name) {
201
+ return (name.length !== 0 &&
202
+ !name.includes("\0") &&
203
+ !node_path_1.default.isAbsolute(name) &&
204
+ node_path_1.default.parse(name).root === "" &&
205
+ node_path_1.default.normalize(name) === name &&
206
+ name !== "." &&
207
+ name !== ".." &&
208
+ !name.startsWith(".." + node_path_1.default.sep));
209
+ }
210
+ /** Move producer-owned output coordinates to the current private run. */
211
+ function relocate(result, previous, current) {
212
+ const move = (output) => {
213
+ const relative = node_path_1.default.relative(previous, output);
214
+ if (!safeRelative(relative))
215
+ throw new Error("runtime provenance escapes its output root");
216
+ return node_path_1.default.join(current, relative);
217
+ };
218
+ return {
219
+ ...result,
220
+ emittedFiles: result.emittedFiles?.map(move),
221
+ emittedSources: result.emittedSources === undefined
222
+ ? undefined
223
+ : Object.fromEntries(Object.entries(result.emittedSources).map(([output, sources]) => [
224
+ move(output),
225
+ sources,
226
+ ])),
227
+ emittedSourceProofFailures: result.emittedSourceProofFailures === undefined
228
+ ? undefined
229
+ : Object.fromEntries(Object.entries(result.emittedSourceProofFailures).map(([output, reason]) => [move(output), reason])),
230
+ stdout: result.stdout.split(previous).join(current),
231
+ stderr: result.stderr.split(previous).join(current),
232
+ };
233
+ }
234
+ })(RuntimeBuildCache || (exports.RuntimeBuildCache = RuntimeBuildCache = {}));
235
+ //# sourceMappingURL=RuntimeBuildCache.js.map