@smithers-orchestrator/time-travel 0.16.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 (88) hide show
  1. package/LICENSE +21 -0
  2. package/package.json +68 -0
  3. package/src/BranchInfo.ts +11 -0
  4. package/src/ForkParams.ts +11 -0
  5. package/src/JUMP_MAX_FRAME_NO.js +1 -0
  6. package/src/JUMP_RUN_ID_PATTERN.js +1 -0
  7. package/src/JumpResult.ts +9 -0
  8. package/src/JumpStepName.ts +10 -0
  9. package/src/JumpToFrameError.js +23 -0
  10. package/src/JumpToFrameInput.ts +36 -0
  11. package/src/NodeChange.ts +7 -0
  12. package/src/NodeSnapshot.ts +8 -0
  13. package/src/OutputChange.ts +5 -0
  14. package/src/ParsedSnapshot.ts +18 -0
  15. package/src/REWIND_RATE_LIMIT_MAX.js +1 -0
  16. package/src/REWIND_RATE_LIMIT_WINDOW_MS.js +1 -0
  17. package/src/RalphChange.ts +7 -0
  18. package/src/RalphSnapshot.ts +5 -0
  19. package/src/ReplayParams.ts +12 -0
  20. package/src/ReplayResult.ts +11 -0
  21. package/src/RetryTaskOptions.ts +10 -0
  22. package/src/RetryTaskResult.ts +5 -0
  23. package/src/RevertOptions.ts +9 -0
  24. package/src/RevertResult.ts +5 -0
  25. package/src/RewindAuditResult.ts +5 -0
  26. package/src/RewindLockHandle.ts +4 -0
  27. package/src/RunTimeline.ts +11 -0
  28. package/src/SnapshotDiff.ts +18 -0
  29. package/src/TimeTravelOptions.ts +11 -0
  30. package/src/TimeTravelResult.ts +7 -0
  31. package/src/TimelineFrame.ts +11 -0
  32. package/src/TimelineTree.ts +9 -0
  33. package/src/acquireRewindLock.js +32 -0
  34. package/src/countRecentRewindAuditRows.js +27 -0
  35. package/src/diff.js +189 -0
  36. package/src/evaluateRewindRateLimit.js +41 -0
  37. package/src/fork/_helpers.js +28 -0
  38. package/src/fork/forkRunEffect.js +147 -0
  39. package/src/fork/getBranchInfoEffect.js +26 -0
  40. package/src/fork/index.js +41 -0
  41. package/src/fork/listBranchesEffect.js +25 -0
  42. package/src/hasRewindLock.js +11 -0
  43. package/src/index.d.ts +1170 -0
  44. package/src/index.js +43 -0
  45. package/src/jumpToFrame.js +1077 -0
  46. package/src/listRewindAuditRows.js +83 -0
  47. package/src/metrics.js +4 -0
  48. package/src/recoverInProgressRewindAudits.js +72 -0
  49. package/src/replay.js +22 -0
  50. package/src/replayFromCheckpointEffect.js +59 -0
  51. package/src/replaysStarted.js +2 -0
  52. package/src/resetRewindLocksForTests.js +8 -0
  53. package/src/resolveRewindAuditClient.js +38 -0
  54. package/src/retry-task.js +215 -0
  55. package/src/revert.js +68 -0
  56. package/src/rewindAudit.js +9 -0
  57. package/src/rewindLock.js +7 -0
  58. package/src/rewindLockStore.js +8 -0
  59. package/src/rewindRateLimit.js +3 -0
  60. package/src/runForksCreated.js +2 -0
  61. package/src/schema.js +46 -0
  62. package/src/snapshot/Snapshot.ts +15 -0
  63. package/src/snapshot/SnapshotData.ts +19 -0
  64. package/src/snapshot/captureSnapshotEffect.js +70 -0
  65. package/src/snapshot/index.js +57 -0
  66. package/src/snapshot/listSnapshotsEffect.js +32 -0
  67. package/src/snapshot/loadSnapshotEffect.js +46 -0
  68. package/src/snapshot/parseSnapshot.js +31 -0
  69. package/src/snapshotDuration.js +7 -0
  70. package/src/snapshotsCaptured.js +2 -0
  71. package/src/timeline/_helpers.js +7 -0
  72. package/src/timeline/buildTimelineEffect.js +38 -0
  73. package/src/timeline/buildTimelineTreeEffect.js +30 -0
  74. package/src/timeline/formatTimelineAsJson.js +23 -0
  75. package/src/timeline/formatTimelineForTui.js +31 -0
  76. package/src/timeline/index.js +31 -0
  77. package/src/timetravel.js +247 -0
  78. package/src/types.ts +15 -0
  79. package/src/updateRewindAuditRow.js +35 -0
  80. package/src/validateJumpFrameNo.js +23 -0
  81. package/src/validateJumpRunId.js +18 -0
  82. package/src/vcs-version/VcsTag.ts +9 -0
  83. package/src/vcs-version/index.js +61 -0
  84. package/src/vcs-version/loadVcsTagEffect.js +27 -0
  85. package/src/vcs-version/rerunAtRevisionEffect.js +25 -0
  86. package/src/vcs-version/resolveWorkflowAtRevisionEffect.js +32 -0
  87. package/src/vcs-version/tagSnapshotVcsEffect.js +56 -0
  88. package/src/writeRewindAuditRow.js +46 -0
package/src/index.js ADDED
@@ -0,0 +1,43 @@
1
+ // @smithers-type-exports-begin
2
+ /** @typedef {import("./BranchInfo.ts").BranchInfo} BranchInfo */
3
+ /** @typedef {import("./ForkParams.ts").ForkParams} ForkParams */
4
+ /** @typedef {import("./NodeChange.ts").NodeChange} NodeChange */
5
+ /** @typedef {import("./NodeSnapshot.ts").NodeSnapshot} NodeSnapshot */
6
+ /** @typedef {import("./OutputChange.ts").OutputChange} OutputChange */
7
+ /** @typedef {import("./ParsedSnapshot.ts").ParsedSnapshot} ParsedSnapshot */
8
+ /** @typedef {import("./RalphChange.ts").RalphChange} RalphChange */
9
+ /** @typedef {import("./RalphSnapshot.ts").RalphSnapshot} RalphSnapshot */
10
+ /** @typedef {import("./ReplayParams.ts").ReplayParams} ReplayParams */
11
+ /** @typedef {import("./ReplayResult.ts").ReplayResult} ReplayResult */
12
+ /** @typedef {import("./RunTimeline.ts").RunTimeline} RunTimeline */
13
+ /** @typedef {import("./snapshot/Snapshot.ts").Snapshot} Snapshot */
14
+ /** @typedef {import("./snapshot/SnapshotData.ts").SnapshotData} SnapshotData */
15
+ /** @typedef {import("./SnapshotDiff.ts").SnapshotDiff} SnapshotDiff */
16
+ /** @typedef {import("./TimelineFrame.ts").TimelineFrame} TimelineFrame */
17
+ /** @typedef {import("./TimelineTree.ts").TimelineTree} TimelineTree */
18
+ /** @typedef {import("./vcs-version/VcsTag.ts").VcsTag} VcsTag */
19
+ /** @typedef {import("./JumpResult.ts").JumpResult} JumpResult */
20
+ /** @typedef {import("./JumpToFrameInput.ts").JumpToFrameInput} JumpToFrameInput */
21
+ /** @typedef {import("./JumpStepName.ts").JumpStepName} JumpStepName */
22
+ /** @typedef {import("./RewindLockHandle.ts").RewindLockHandle} RewindLockHandle */
23
+ /** @typedef {import("./RewindAuditResult.ts").RewindAuditResult} RewindAuditResult */
24
+ // @smithers-type-exports-end
25
+
26
+ // ---------------------------------------------------------------------------
27
+ // Time Travel — barrel exports
28
+ // ---------------------------------------------------------------------------
29
+ export { captureSnapshot, loadSnapshot, loadLatestSnapshot, listSnapshots, parseSnapshot, } from "./snapshot/index.js";
30
+ export { diffSnapshots, diffRawSnapshots, formatDiffForTui, formatDiffAsJson, } from "./diff.js";
31
+ export { forkRun, listBranches, getBranchInfo, } from "./fork/index.js";
32
+ export { replayFromCheckpoint, } from "./replay.js";
33
+ export { tagSnapshotVcs, loadVcsTag, resolveWorkflowAtRevision, rerunAtRevision, } from "./vcs-version/index.js";
34
+ export { buildTimeline, buildTimelineTree, formatTimelineForTui, formatTimelineAsJson, } from "./timeline/index.js";
35
+ export { smithersSnapshots, smithersBranches, smithersVcsTags, } from "./schema.js";
36
+ export { snapshotsCaptured } from "./snapshotsCaptured.js";
37
+ export { runForksCreated } from "./runForksCreated.js";
38
+ export { replaysStarted } from "./replaysStarted.js";
39
+ export { snapshotDuration } from "./snapshotDuration.js";
40
+ export { jumpToFrame, JumpToFrameError, validateJumpRunId, validateJumpFrameNo } from "./jumpToFrame.js";
41
+ export { acquireRewindLock, hasRewindLock, resetRewindLocksForTests } from "./rewindLock.js";
42
+ export { evaluateRewindRateLimit, REWIND_RATE_LIMIT_MAX, REWIND_RATE_LIMIT_WINDOW_MS } from "./rewindRateLimit.js";
43
+ export { writeRewindAuditRow, countRecentRewindAuditRows, listRewindAuditRows, updateRewindAuditRow, recoverInProgressRewindAudits } from "./rewindAudit.js";