deepclause-sdk 0.0.88 → 0.1.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.
- package/LICENSE +21 -0
- package/README.md +418 -914
- package/dist/agent.d.ts +19 -2
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +221 -4
- package/dist/agent.js.map +1 -1
- package/dist/cli/config.d.ts +323 -176
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +146 -188
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/index.d.ts +3 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +61 -425
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/login.d.ts +29 -0
- package/dist/cli/login.d.ts.map +1 -0
- package/dist/cli/login.js +184 -0
- package/dist/cli/login.js.map +1 -0
- package/dist/cli/readline.d.ts +6 -0
- package/dist/cli/readline.d.ts.map +1 -0
- package/dist/cli/readline.js +15 -0
- package/dist/cli/readline.js.map +1 -0
- package/dist/cli/repl-bin.d.ts +9 -0
- package/dist/cli/repl-bin.d.ts.map +1 -0
- package/dist/cli/repl-bin.js +16 -0
- package/dist/cli/repl-bin.js.map +1 -0
- package/dist/cli/repl.d.ts +191 -0
- package/dist/cli/repl.d.ts.map +1 -0
- package/dist/cli/repl.js +1232 -0
- package/dist/cli/repl.js.map +1 -0
- package/dist/cli/run.d.ts +17 -18
- package/dist/cli/run.d.ts.map +1 -1
- package/dist/cli/run.js +196 -183
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/set-backend.d.ts +53 -0
- package/dist/cli/set-backend.d.ts.map +1 -0
- package/dist/cli/set-backend.js +259 -0
- package/dist/cli/set-backend.js.map +1 -0
- package/dist/cli/visualize.d.ts +38 -0
- package/dist/cli/visualize.d.ts.map +1 -0
- package/dist/cli/visualize.js +125 -0
- package/dist/cli/visualize.js.map +1 -0
- package/dist/compiler.d.ts +5 -52
- package/dist/compiler.d.ts.map +1 -1
- package/dist/compiler.js +4 -768
- package/dist/compiler.js.map +1 -1
- package/dist/index.d.ts +29 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -2
- package/dist/index.js.map +1 -1
- package/dist/judge/index.d.ts +9 -0
- package/dist/judge/index.d.ts.map +1 -0
- package/dist/judge/index.js +6 -0
- package/dist/judge/index.js.map +1 -0
- package/dist/judge/jev.d.ts +21 -0
- package/dist/judge/jev.d.ts.map +1 -0
- package/dist/judge/jev.js +218 -0
- package/dist/judge/jev.js.map +1 -0
- package/dist/judge/llm.d.ts +23 -0
- package/dist/judge/llm.d.ts.map +1 -0
- package/dist/judge/llm.js +120 -0
- package/dist/judge/llm.js.map +1 -0
- package/dist/judge/marshal.d.ts +26 -0
- package/dist/judge/marshal.d.ts.map +1 -0
- package/dist/judge/marshal.js +266 -0
- package/dist/judge/marshal.js.map +1 -0
- package/dist/judge/mock.d.ts +28 -0
- package/dist/judge/mock.d.ts.map +1 -0
- package/dist/judge/mock.js +98 -0
- package/dist/judge/mock.js.map +1 -0
- package/dist/judge/types.d.ts +95 -0
- package/dist/judge/types.d.ts.map +1 -0
- package/dist/judge/types.js +23 -0
- package/dist/judge/types.js.map +1 -0
- package/dist/prolog/bridge.d.ts +5 -1
- package/dist/prolog/bridge.d.ts.map +1 -1
- package/dist/prolog/bridge.js +29 -1
- package/dist/prolog/bridge.js.map +1 -1
- package/dist/prolog-src/deepclause_analysis.pl +10 -2
- package/dist/prolog-src/deepclause_mi.pl +2522 -118
- package/dist/repl/agent.d.ts +72 -0
- package/dist/repl/agent.d.ts.map +1 -0
- package/dist/repl/agent.js +366 -0
- package/dist/repl/agent.js.map +1 -0
- package/dist/repl/auth.d.ts +45 -0
- package/dist/repl/auth.d.ts.map +1 -0
- package/dist/repl/auth.js +116 -0
- package/dist/repl/auth.js.map +1 -0
- package/dist/repl/backend.d.ts +290 -0
- package/dist/repl/backend.d.ts.map +1 -0
- package/dist/repl/backend.js +370 -0
- package/dist/repl/backend.js.map +1 -0
- package/dist/repl/compaction.d.ts +122 -0
- package/dist/repl/compaction.d.ts.map +1 -0
- package/dist/repl/compaction.js +318 -0
- package/dist/repl/compaction.js.map +1 -0
- package/dist/repl/export.d.ts +30 -0
- package/dist/repl/export.d.ts.map +1 -0
- package/dist/repl/export.js +23 -0
- package/dist/repl/export.js.map +1 -0
- package/dist/repl/frames.d.ts +21 -0
- package/dist/repl/frames.d.ts.map +1 -0
- package/dist/repl/frames.js +79 -0
- package/dist/repl/frames.js.map +1 -0
- package/dist/repl/harness-tools.d.ts +74 -0
- package/dist/repl/harness-tools.d.ts.map +1 -0
- package/dist/repl/harness-tools.js +121 -0
- package/dist/repl/harness-tools.js.map +1 -0
- package/dist/repl/highlight.d.ts +30 -0
- package/dist/repl/highlight.d.ts.map +1 -0
- package/dist/repl/highlight.js +285 -0
- package/dist/repl/highlight.js.map +1 -0
- package/dist/repl/history.d.ts +234 -0
- package/dist/repl/history.d.ts.map +1 -0
- package/dist/repl/history.js +661 -0
- package/dist/repl/history.js.map +1 -0
- package/dist/repl/index.d.ts +120 -0
- package/dist/repl/index.d.ts.map +1 -0
- package/dist/repl/index.js +107 -0
- package/dist/repl/index.js.map +1 -0
- package/dist/repl/judge.d.ts +51 -0
- package/dist/repl/judge.d.ts.map +1 -0
- package/dist/repl/judge.js +58 -0
- package/dist/repl/judge.js.map +1 -0
- package/dist/repl/markdown.d.ts +25 -0
- package/dist/repl/markdown.d.ts.map +1 -0
- package/dist/repl/markdown.js +103 -0
- package/dist/repl/markdown.js.map +1 -0
- package/dist/repl/picker.d.ts +34 -0
- package/dist/repl/picker.d.ts.map +1 -0
- package/dist/repl/picker.js +81 -0
- package/dist/repl/picker.js.map +1 -0
- package/dist/repl/project-context.d.ts +16 -0
- package/dist/repl/project-context.d.ts.map +1 -0
- package/dist/repl/project-context.js +23 -0
- package/dist/repl/project-context.js.map +1 -0
- package/dist/repl/render.d.ts +160 -0
- package/dist/repl/render.d.ts.map +1 -0
- package/dist/repl/render.js +715 -0
- package/dist/repl/render.js.map +1 -0
- package/dist/repl/session.d.ts +356 -0
- package/dist/repl/session.d.ts.map +1 -0
- package/dist/repl/session.js +1275 -0
- package/dist/repl/session.js.map +1 -0
- package/dist/repl/status.d.ts +100 -0
- package/dist/repl/status.d.ts.map +1 -0
- package/dist/repl/status.js +218 -0
- package/dist/repl/status.js.map +1 -0
- package/dist/repl/tools.d.ts +53 -0
- package/dist/repl/tools.d.ts.map +1 -0
- package/dist/repl/tools.js +307 -0
- package/dist/repl/tools.js.map +1 -0
- package/dist/repl/toolset.d.ts +32 -0
- package/dist/repl/toolset.d.ts.map +1 -0
- package/dist/repl/toolset.js +82 -0
- package/dist/repl/toolset.js.map +1 -0
- package/dist/repl/tui/editor.d.ts +17 -0
- package/dist/repl/tui/editor.d.ts.map +1 -0
- package/dist/repl/tui/editor.js +39 -0
- package/dist/repl/tui/editor.js.map +1 -0
- package/dist/repl/tui/status-bar.d.ts +26 -0
- package/dist/repl/tui/status-bar.d.ts.map +1 -0
- package/dist/repl/tui/status-bar.js +47 -0
- package/dist/repl/tui/status-bar.js.map +1 -0
- package/dist/repl/tui/theme.d.ts +30 -0
- package/dist/repl/tui/theme.d.ts.map +1 -0
- package/dist/repl/tui/theme.js +81 -0
- package/dist/repl/tui/theme.js.map +1 -0
- package/dist/repl/tui/transcript.d.ts +39 -0
- package/dist/repl/tui/transcript.d.ts.map +1 -0
- package/dist/repl/tui/transcript.js +123 -0
- package/dist/repl/tui/transcript.js.map +1 -0
- package/dist/runner.d.ts +145 -13
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +600 -282
- package/dist/runner.js.map +1 -1
- package/dist/sdk.d.ts.map +1 -1
- package/dist/sdk.js +56 -32
- package/dist/sdk.js.map +1 -1
- package/dist/system/assets/docs/AGENT_PROMPT.md +1373 -0
- package/dist/system/assets/docs/DML_AUTHORING.md +195 -0
- package/dist/system/assets/docs/DML_REFERENCE.md +393 -72
- package/dist/system/assets/docs/HARNESS_EXAMPLES.md +172 -0
- package/dist/system/assets/docs/HARNESS_PATTERNS.md +562 -0
- package/dist/system/assets/docs/META_PROMPT.md +68 -0
- package/dist/system/assets/docs/PROLOG_SNIPPETS.md +117 -0
- package/dist/system/assets/index.d.ts +9 -17
- package/dist/system/assets/index.d.ts.map +1 -1
- package/dist/system/assets/index.js +26 -85
- package/dist/system/assets/index.js.map +1 -1
- package/dist/system/runtime/agentvm-manager.d.ts +9 -2
- package/dist/system/runtime/agentvm-manager.d.ts.map +1 -1
- package/dist/system/runtime/agentvm-manager.js +70 -44
- package/dist/system/runtime/agentvm-manager.js.map +1 -1
- package/dist/system/runtime/media.d.ts +23 -0
- package/dist/system/runtime/media.d.ts.map +1 -0
- package/dist/system/runtime/media.js +55 -0
- package/dist/system/runtime/media.js.map +1 -0
- package/dist/system/runtime/shell-limits.d.ts +21 -0
- package/dist/system/runtime/shell-limits.d.ts.map +1 -0
- package/dist/system/runtime/shell-limits.js +39 -0
- package/dist/system/runtime/shell-limits.js.map +1 -0
- package/dist/system/runtime/shell-manager.d.ts +8 -3
- package/dist/system/runtime/shell-manager.d.ts.map +1 -1
- package/dist/system/runtime/shell-manager.js +56 -39
- package/dist/system/runtime/shell-manager.js.map +1 -1
- package/dist/system/runtime/shell-tool-events.js +5 -0
- package/dist/system/runtime/shell-tool-events.js.map +1 -1
- package/dist/system/runtime/token-usage.d.ts +2 -0
- package/dist/system/runtime/token-usage.d.ts.map +1 -1
- package/dist/system/runtime/token-usage.js +7 -0
- package/dist/system/runtime/token-usage.js.map +1 -1
- package/dist/tools.d.ts +3 -21
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +14 -168
- package/dist/tools.js.map +1 -1
- package/dist/types.d.ts +149 -118
- package/dist/types.d.ts.map +1 -1
- package/dist/validate.d.ts +19 -0
- package/dist/validate.d.ts.map +1 -0
- package/dist/validate.js +338 -0
- package/dist/validate.js.map +1 -0
- package/dist/visualize/index.d.ts +52 -0
- package/dist/visualize/index.d.ts.map +1 -0
- package/dist/visualize/index.js +189 -0
- package/dist/visualize/index.js.map +1 -0
- package/package.json +17 -15
- package/src/prolog-src/deepclause_analysis.pl +10 -2
- package/src/prolog-src/deepclause_mi.pl +2522 -118
- package/dist/cli/commands.d.ts +0 -42
- package/dist/cli/commands.d.ts.map +0 -1
- package/dist/cli/commands.js +0 -246
- package/dist/cli/commands.js.map +0 -1
- package/dist/cli/compile.d.ts +0 -99
- package/dist/cli/compile.d.ts.map +0 -1
- package/dist/cli/compile.js +0 -363
- package/dist/cli/compile.js.map +0 -1
- package/dist/cli/default-skills.d.ts +0 -10
- package/dist/cli/default-skills.d.ts.map +0 -1
- package/dist/cli/default-skills.js +0 -206
- package/dist/cli/default-skills.js.map +0 -1
- package/dist/cli/interactive.d.ts +0 -2
- package/dist/cli/interactive.d.ts.map +0 -1
- package/dist/cli/interactive.js +0 -20
- package/dist/cli/interactive.js.map +0 -1
- package/dist/cli/mcp.d.ts +0 -56
- package/dist/cli/mcp.d.ts.map +0 -1
- package/dist/cli/mcp.js +0 -138
- package/dist/cli/mcp.js.map +0 -1
- package/dist/cli/prompt.d.ts +0 -2
- package/dist/cli/prompt.d.ts.map +0 -1
- package/dist/cli/prompt.js +0 -2
- package/dist/cli/prompt.js.map +0 -1
- package/dist/cli/search.d.ts +0 -19
- package/dist/cli/search.d.ts.map +0 -1
- package/dist/cli/search.js +0 -189
- package/dist/cli/search.js.map +0 -1
- package/dist/cli/tool-args.d.ts +0 -2
- package/dist/cli/tool-args.d.ts.map +0 -1
- package/dist/cli/tool-args.js +0 -39
- package/dist/cli/tool-args.js.map +0 -1
- package/dist/cli/tools.d.ts +0 -36
- package/dist/cli/tools.d.ts.map +0 -1
- package/dist/cli/tools.js +0 -229
- package/dist/cli/tools.js.map +0 -1
- package/dist/cli/tui/index.d.ts +0 -22
- package/dist/cli/tui/index.d.ts.map +0 -1
- package/dist/cli/tui/index.js +0 -29
- package/dist/cli/tui/index.js.map +0 -1
- package/dist/cli/tui.d.ts +0 -167
- package/dist/cli/tui.d.ts.map +0 -1
- package/dist/cli/tui.js +0 -5228
- package/dist/cli/tui.js.map +0 -1
- package/dist/compiler_prompt.d.ts +0 -20
- package/dist/compiler_prompt.d.ts.map +0 -1
- package/dist/compiler_prompt.js +0 -870
- package/dist/compiler_prompt.js.map +0 -1
- package/dist/deepclause-cli.skill +0 -0
- package/dist/prolog-src/deepclause_mi.pl.bak +0 -570
- package/dist/system/assets/compactors/default-memory-compactor.dml +0 -6
- package/dist/system/assets/docs/CONDUCTOR_PROMPT.md +0 -105
- package/dist/system/assets/docs/DML_COMPILER_PROMPT.md +0 -700
- package/dist/system/assets/docs/TUI.md +0 -150
- package/dist/system/assets/recipes/deepclause-coding-workflow/SKILL.md +0 -100
- package/dist/system/assets/skills/conductor.dml +0 -76
- package/dist/system/assets/skills/deep-planner.dml +0 -412
- package/dist/system/assets/skills/plan.dml +0 -429
- package/dist/system/assets/skills/security-planner.dml +0 -337
- package/dist/system/assets/skills/skill-creator.dml +0 -187
- package/dist/system/runtime/catalog-recipes.d.ts +0 -24
- package/dist/system/runtime/catalog-recipes.d.ts.map +0 -1
- package/dist/system/runtime/catalog-recipes.js +0 -273
- package/dist/system/runtime/catalog-recipes.js.map +0 -1
- package/dist/system/runtime/catalog-skills.d.ts +0 -50
- package/dist/system/runtime/catalog-skills.d.ts.map +0 -1
- package/dist/system/runtime/catalog-skills.js +0 -152
- package/dist/system/runtime/catalog-skills.js.map +0 -1
- package/dist/system/runtime/conductor.d.ts +0 -105
- package/dist/system/runtime/conductor.d.ts.map +0 -1
- package/dist/system/runtime/conductor.js +0 -732
- package/dist/system/runtime/conductor.js.map +0 -1
- package/dist/system/runtime/console-capture.d.ts +0 -9
- package/dist/system/runtime/console-capture.d.ts.map +0 -1
- package/dist/system/runtime/console-capture.js +0 -67
- package/dist/system/runtime/console-capture.js.map +0 -1
- package/dist/system/runtime/dml-executor.d.ts +0 -52
- package/dist/system/runtime/dml-executor.d.ts.map +0 -1
- package/dist/system/runtime/dml-executor.js +0 -203
- package/dist/system/runtime/dml-executor.js.map +0 -1
- package/dist/system/runtime/runtime-tools.d.ts +0 -31
- package/dist/system/runtime/runtime-tools.d.ts.map +0 -1
- package/dist/system/runtime/runtime-tools.js +0 -312
- package/dist/system/runtime/runtime-tools.js.map +0 -1
- package/dist/system/runtime/skill-creator.d.ts +0 -38
- package/dist/system/runtime/skill-creator.d.ts.map +0 -1
- package/dist/system/runtime/skill-creator.js +0 -763
- package/dist/system/runtime/skill-creator.js.map +0 -1
- package/src/prolog-src/deepclause_mi.pl.bak +0 -570
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Persistent session / trace / harness history.
|
|
3
|
+
*
|
|
4
|
+
* See `docs/DML_REPL_SESSION_HISTORY.md`. Storage lives under a
|
|
5
|
+
* workspace-relative directory (default `.deepclause/repl/`):
|
|
6
|
+
*
|
|
7
|
+
* history.dml append-only harness_* facts, consulted at
|
|
8
|
+
* session start and queryable from DML
|
|
9
|
+
* harness/HEAD.json current version pointer
|
|
10
|
+
* harness/changes.jsonl one line per harness change
|
|
11
|
+
* harness/versions/NNNN_<ts>.json full module snapshot per version
|
|
12
|
+
* sessions/<id>/session.json session metadata
|
|
13
|
+
* sessions/<id>/turns.jsonl one summary per turn
|
|
14
|
+
* sessions/<id>/events.jsonl runtime event trace
|
|
15
|
+
*
|
|
16
|
+
* The recorder is best-effort: callers swallow its errors so a turn never fails
|
|
17
|
+
* because history could not be written.
|
|
18
|
+
*/
|
|
19
|
+
export type HistoryTrace = 'off' | 'summary' | 'full';
|
|
20
|
+
export interface HistoryOptions {
|
|
21
|
+
/** Workspace-relative root (default `.deepclause/repl`). */
|
|
22
|
+
dir?: string;
|
|
23
|
+
/** `off`, `summary` (event metadata), or `full` (include streamed text). */
|
|
24
|
+
trace?: HistoryTrace;
|
|
25
|
+
maxEventBytes?: number;
|
|
26
|
+
maxSessions?: number;
|
|
27
|
+
maxVersions?: number;
|
|
28
|
+
includeInExport?: boolean;
|
|
29
|
+
/** Regex sources applied to recorded text before writing. */
|
|
30
|
+
redact?: string[];
|
|
31
|
+
}
|
|
32
|
+
export interface HistoryEventContext {
|
|
33
|
+
turn: number;
|
|
34
|
+
frame?: string;
|
|
35
|
+
}
|
|
36
|
+
export interface HistoryTurnRecord {
|
|
37
|
+
turn: number;
|
|
38
|
+
mode: 'goal' | 'prompt';
|
|
39
|
+
request: string;
|
|
40
|
+
outcome: 'committed' | 'answered' | 'failed' | 'aborted' | 'query';
|
|
41
|
+
commitVersion?: number;
|
|
42
|
+
durationMs: number;
|
|
43
|
+
modelCalls: number;
|
|
44
|
+
error?: string;
|
|
45
|
+
usage?: {
|
|
46
|
+
inputTokens?: number;
|
|
47
|
+
outputTokens?: number;
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
export interface HistoryChangedPredicate {
|
|
51
|
+
predicate: string;
|
|
52
|
+
action: 'added' | 'removed' | 'replaced';
|
|
53
|
+
}
|
|
54
|
+
export interface HistoryChangeRecord {
|
|
55
|
+
kind: 'commit' | 'load' | 'reset';
|
|
56
|
+
sessionId: string;
|
|
57
|
+
turn: number;
|
|
58
|
+
changed: HistoryChangedPredicate[];
|
|
59
|
+
scripts: Array<{
|
|
60
|
+
path: string;
|
|
61
|
+
sha256: string;
|
|
62
|
+
}>;
|
|
63
|
+
module: string;
|
|
64
|
+
manifest: string;
|
|
65
|
+
}
|
|
66
|
+
/** A linked script file and its content hash. */
|
|
67
|
+
export interface HistoryScriptRef {
|
|
68
|
+
path: string;
|
|
69
|
+
sha256: string;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Durable snapshot of a session's harness, written beside the session so the
|
|
73
|
+
* harness can be restored by `--session` even after the process exits or the
|
|
74
|
+
* scratch bundle is gone. See `docs/DML_REPL_SESSION_HISTORY.md`.
|
|
75
|
+
*/
|
|
76
|
+
export interface SessionHarnessSnapshot {
|
|
77
|
+
sessionId: string;
|
|
78
|
+
/** Last recorded harness version for the session (0 = none). */
|
|
79
|
+
version: number;
|
|
80
|
+
/** sha256 of `module` + `scripts` (see `harnessHash`). */
|
|
81
|
+
hash: string;
|
|
82
|
+
/** True when `module` still matches the recorded version's snapshot. */
|
|
83
|
+
clean: boolean;
|
|
84
|
+
savedAt: string;
|
|
85
|
+
scripts: HistoryScriptRef[];
|
|
86
|
+
/** Serialized conversation memory, when captured. */
|
|
87
|
+
memory?: {
|
|
88
|
+
harness: string;
|
|
89
|
+
meta: string;
|
|
90
|
+
/** Authoring-agent conversation (TS agent mode), for resume. */
|
|
91
|
+
agent?: Array<{
|
|
92
|
+
role: 'system' | 'user' | 'assistant';
|
|
93
|
+
content: string;
|
|
94
|
+
}>;
|
|
95
|
+
};
|
|
96
|
+
module: string;
|
|
97
|
+
}
|
|
98
|
+
/** Metadata about a past REPL session, for `--session` resolution. */
|
|
99
|
+
export interface SessionSummary {
|
|
100
|
+
id: string;
|
|
101
|
+
startedAt?: string;
|
|
102
|
+
endedAt?: string | null;
|
|
103
|
+
resumedAt?: string[];
|
|
104
|
+
lastTurn?: number;
|
|
105
|
+
}
|
|
106
|
+
/** Stable hash of a harness module plus its linked scripts. */
|
|
107
|
+
export declare function harnessHash(module: string, scripts: Array<{
|
|
108
|
+
path: string;
|
|
109
|
+
sha256: string;
|
|
110
|
+
}>): string;
|
|
111
|
+
/** Single-quoted Prolog atom. */
|
|
112
|
+
export declare function prologAtom(value: string): string;
|
|
113
|
+
export declare class HistoryStore {
|
|
114
|
+
private readonly sessionId;
|
|
115
|
+
/** Harness this session edits (a project can hold several). */
|
|
116
|
+
readonly harnessName: string;
|
|
117
|
+
readonly rootRel: string;
|
|
118
|
+
readonly sessionDirRel: string;
|
|
119
|
+
private readonly rootAbs;
|
|
120
|
+
private readonly sessionDirAbs;
|
|
121
|
+
private readonly trace;
|
|
122
|
+
private readonly maxEventBytes;
|
|
123
|
+
private readonly maxSessions;
|
|
124
|
+
private readonly maxVersions;
|
|
125
|
+
private readonly redactions;
|
|
126
|
+
private eventBuffer;
|
|
127
|
+
/** Current HEAD version (0 = empty harness) and the highest ever issued. */
|
|
128
|
+
private headVersion;
|
|
129
|
+
private maxVersion;
|
|
130
|
+
/** Hash recorded for the current HEAD (for session-snapshot consistency). */
|
|
131
|
+
private headHash?;
|
|
132
|
+
constructor(workspacePath: string, sessionId: string, options?: HistoryOptions,
|
|
133
|
+
/** Harness this session edits (a project can hold several). */
|
|
134
|
+
harnessName?: string);
|
|
135
|
+
get currentVersion(): number;
|
|
136
|
+
get currentHash(): string | undefined;
|
|
137
|
+
get tracePath(): string;
|
|
138
|
+
private get historyFile();
|
|
139
|
+
/** Per-harness store: `.deepclause/repl/harnesses/<name>/`. */
|
|
140
|
+
private get harnessDir();
|
|
141
|
+
/** The single pre-harnesses store, migrated to `harnesses/main` once. */
|
|
142
|
+
private get legacyHarnessDir();
|
|
143
|
+
/** The current content (source of truth; portable as a `.dml`). */
|
|
144
|
+
private get harnessFile();
|
|
145
|
+
/** The module the harness started from (version 0 / rollback floor). */
|
|
146
|
+
private get baselineFile();
|
|
147
|
+
private get headFile();
|
|
148
|
+
private get changesFile();
|
|
149
|
+
/** Whether the harness has any committed versions (HEAD > baseline). */
|
|
150
|
+
get hasCommits(): boolean;
|
|
151
|
+
/** Facts for this harness only (`harness_change`/`changed`/`head`/`rollback`). */
|
|
152
|
+
private get harnessFactsFile();
|
|
153
|
+
/** Create directories, read the current version, and prune old entries. */
|
|
154
|
+
init(): Promise<void>;
|
|
155
|
+
/** Move the legacy single `harness/` store into `harnesses/main/` (once). */
|
|
156
|
+
private migrateLegacyHarness;
|
|
157
|
+
/** Ensure `baseline.dml` and `harness.dml` exist (materializing from HEAD). */
|
|
158
|
+
private ensureHarnessFiles;
|
|
159
|
+
/** The module at HEAD: the live `harness.dml`, or the HEAD version snapshot. */
|
|
160
|
+
readHeadModule(): Promise<{
|
|
161
|
+
version: number;
|
|
162
|
+
module: string;
|
|
163
|
+
} | null>;
|
|
164
|
+
/** The module this harness started from (version 0). */
|
|
165
|
+
readBaseline(): Promise<string>;
|
|
166
|
+
/**
|
|
167
|
+
* Establish the baseline of a fresh harness from its first content (e.g. a
|
|
168
|
+
* harness file loaded with `-l`). No-op once the harness has a baseline or
|
|
169
|
+
* any committed version.
|
|
170
|
+
*/
|
|
171
|
+
setInitialBaseline(module: string): Promise<void>;
|
|
172
|
+
/** The persisted facts, to be loaded into the module at session start. */
|
|
173
|
+
readFacts(): Promise<string>;
|
|
174
|
+
/** The turns recorded for a session, oldest first (used for input history). */
|
|
175
|
+
readTurns(sessionId?: string): Promise<HistoryTurnRecord[]>;
|
|
176
|
+
startSession(info: {
|
|
177
|
+
model: string;
|
|
178
|
+
backend: string;
|
|
179
|
+
}, options?: {
|
|
180
|
+
resume?: boolean;
|
|
181
|
+
}): Promise<string[]>;
|
|
182
|
+
endSession(reason: string): Promise<string[]>;
|
|
183
|
+
recordTurn(record: HistoryTurnRecord): Promise<string[]>;
|
|
184
|
+
/**
|
|
185
|
+
* Record a harness version. Returns the facts to assert and the new version.
|
|
186
|
+
*/
|
|
187
|
+
recordChange(record: HistoryChangeRecord): Promise<{
|
|
188
|
+
facts: string[];
|
|
189
|
+
version: number;
|
|
190
|
+
}>;
|
|
191
|
+
/**
|
|
192
|
+
* Plan a rollback to the parent of HEAD. Returns null when there is nothing
|
|
193
|
+
* to undo, otherwise the module source to restore (floored at the baseline).
|
|
194
|
+
*/
|
|
195
|
+
prepareRollback(): Promise<{
|
|
196
|
+
from: number;
|
|
197
|
+
to: number;
|
|
198
|
+
module: string;
|
|
199
|
+
} | null>;
|
|
200
|
+
/** Persist a rollback (facts + HEAD + change log + harness file). */
|
|
201
|
+
recordRollback(from: number, to: number, turn: number, sessionId: string, module?: string): Promise<string[]>;
|
|
202
|
+
private readVersion;
|
|
203
|
+
private sessionsDir;
|
|
204
|
+
private sessionHarnessFile;
|
|
205
|
+
/** True when a session directory exists for `sessionId`. */
|
|
206
|
+
sessionExists(sessionId: string): Promise<boolean>;
|
|
207
|
+
/** All recorded sessions, oldest first. */
|
|
208
|
+
sessionSummaries(): Promise<SessionSummary[]>;
|
|
209
|
+
/** The most recently started session, or null when there is none. */
|
|
210
|
+
latestSessionId(): Promise<string | null>;
|
|
211
|
+
/** The highest turn number recorded for a session (0 when none). */
|
|
212
|
+
lastTurn(sessionId?: string): Promise<number>;
|
|
213
|
+
/** Persist the durable harness snapshot beside a session (best effort). */
|
|
214
|
+
writeSessionHarness(snapshot: SessionHarnessSnapshot, sessionId?: string): Promise<void>;
|
|
215
|
+
/** Read a session's durable harness snapshot, or null when absent. */
|
|
216
|
+
readSessionHarness(sessionId?: string): Promise<SessionHarnessSnapshot | null>;
|
|
217
|
+
/** Buffer one event line (flushed at turn end / dispose). */
|
|
218
|
+
recordEvent(context: HistoryEventContext, event: {
|
|
219
|
+
type: string;
|
|
220
|
+
} & Record<string, unknown>): void;
|
|
221
|
+
flushEvents(): Promise<void>;
|
|
222
|
+
private serializeEvent;
|
|
223
|
+
/** Redact and truncate strings recursively. */
|
|
224
|
+
private scrub;
|
|
225
|
+
private appendFacts;
|
|
226
|
+
private appendHarnessFacts;
|
|
227
|
+
private appendJsonl;
|
|
228
|
+
private appendRaw;
|
|
229
|
+
private writeJson;
|
|
230
|
+
/** Keep only the newest sessions and versions. */
|
|
231
|
+
private prune;
|
|
232
|
+
private pruneDir;
|
|
233
|
+
}
|
|
234
|
+
//# sourceMappingURL=history.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../../src/repl/history.ts"],"names":[],"mappings":"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"}
|