@stringsync/splates 0.0.45 → 0.0.46
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/README.md +121 -9
- package/artifact.d.ts +3 -30
- package/budget.d.ts +3 -0
- package/coordinator.d.ts +3 -0
- package/creds.d.ts +3 -123
- package/flags.d.ts +37 -0
- package/index.js +729 -26375
- package/lane.d.ts +3 -55
- package/main.d.ts +6 -0
- package/package.json +3 -42
- package/projects.d.ts +3 -136
- package/queue.d.ts +3 -0
- package/setup.d.ts +16 -98
- package/slots.d.ts +3 -135
- package/splates.d.ts +1 -19
- package/todo.d.ts +3 -146
- package/{splates-tunnel.d.ts → tunnel.d.ts} +1 -1
- package/{splates-worker.d.ts → worker.d.ts} +1 -1
- package/acp-extensions.d.ts +0 -82
- package/add.d.ts +0 -53
- package/adherence.d.ts +0 -49
- package/age.d.ts +0 -2
- package/agent-connection.d.ts +0 -171
- package/agent-errors.d.ts +0 -2
- package/agent-process.d.ts +0 -65
- package/agent-stream.d.ts +0 -91
- package/agents.d.ts +0 -15
- package/artifact-room.d.ts +0 -47
- package/artifact-viewers.d.ts +0 -6
- package/artifacts.d.ts +0 -161
- package/asked.d.ts +0 -146
- package/asked.js +0 -7
- package/assumed.d.ts +0 -34
- package/attach.d.ts +0 -30
- package/attachments.d.ts +0 -43
- package/baselines.d.ts +0 -55
- package/claim.d.ts +0 -17
- package/cloudflare-api.d.ts +0 -25
- package/cloudflare-error.d.ts +0 -5
- package/cloudflared-tunnel-provider.d.ts +0 -27
- package/codex-limits.d.ts +0 -19
- package/compaction.d.ts +0 -17
- package/config-source.d.ts +0 -13
- package/config.d.ts +0 -98
- package/config.js +0 -7
- package/conversation-archive.d.ts +0 -6
- package/conversation-background.d.ts +0 -21
- package/conversation-choice.d.ts +0 -4
- package/conversation-files.d.ts +0 -51
- package/conversation-given.d.ts +0 -8
- package/conversation-host.d.ts +0 -102
- package/conversation-listing.d.ts +0 -15
- package/conversation-log.d.ts +0 -301
- package/conversation-messages.d.ts +0 -18
- package/conversation-name.d.ts +0 -28
- package/conversation-options.d.ts +0 -73
- package/conversation-reference.d.ts +0 -2
- package/conversation-state.d.ts +0 -472
- package/conversation-turns.d.ts +0 -115
- package/conversation.d.ts +0 -209
- package/conversations.d.ts +0 -140
- package/coordinator-state.d.ts +0 -28
- package/darwin-temperature.d.ts +0 -7
- package/decided.d.ts +0 -18
- package/demo.d.ts +0 -29
- package/dev/api.d.ts +0 -209
- package/dev/assets.d.ts +0 -24
- package/dev/conversation-address.d.ts +0 -47
- package/dev/conversation-feed.d.ts +0 -166
- package/dev/live-stream.d.ts +0 -29
- package/dev/worker.d.ts +0 -33
- package/dev-access.d.ts +0 -61
- package/dev-artifacts.d.ts +0 -22
- package/dev-budgets.d.ts +0 -18
- package/dev-conversation-events.d.ts +0 -39
- package/dev-conversation-routes.d.ts +0 -90
- package/dev-creds.d.ts +0 -17
- package/dev-dictation-connection.d.ts +0 -18
- package/dev-dictation.d.ts +0 -17
- package/dev-http.d.ts +0 -76
- package/dev-open.d.ts +0 -15
- package/dev-options.d.ts +0 -133
- package/dev-outcomes.d.ts +0 -21
- package/dev-pages.d.ts +0 -16
- package/dev-picker.d.ts +0 -57
- package/dev-port-socket.d.ts +0 -26
- package/dev-ports.d.ts +0 -11
- package/dev-project-watch.d.ts +0 -44
- package/dev-project.d.ts +0 -168
- package/dev-push.d.ts +0 -59
- package/dev-restart.d.ts +0 -141
- package/dev-servers.d.ts +0 -30
- package/dev-setup-native.d.ts +0 -23
- package/dev-setup-opencode.d.ts +0 -29
- package/dev-setup.d.ts +0 -16
- package/dev-shell.d.ts +0 -70
- package/dev-slot.d.ts +0 -28
- package/dev-sockets.d.ts +0 -13
- package/dev-task-ports.d.ts +0 -73
- package/dev-tasks.d.ts +0 -20
- package/dev-terminal-connection.d.ts +0 -19
- package/dev-terminal.d.ts +0 -42
- package/dev-todos.d.ts +0 -35
- package/dev-transcriber.d.ts +0 -15
- package/dev-tunnel.d.ts +0 -38
- package/dev-versions.d.ts +0 -53
- package/dev-workers.d.ts +0 -55
- package/dev.d.ts +0 -24
- package/diff.d.ts +0 -29
- package/dispatched.d.ts +0 -16
- package/editors.d.ts +0 -22
- package/escalate.d.ts +0 -27
- package/events.d.ts +0 -311
- package/everywhere.d.ts +0 -41
- package/exhibit.d.ts +0 -21
- package/exit.d.ts +0 -54
- package/fact-todos.d.ts +0 -18
- package/fake-agent.d.ts +0 -107
- package/fake-agent.js +0 -284
- package/finding-facts.d.ts +0 -38
- package/findings.d.ts +0 -84
- package/fold.d.ts +0 -43
- package/follow.d.ts +0 -41
- package/format.d.ts +0 -68
- package/git.d.ts +0 -112
- package/handed-out.d.ts +0 -79
- package/handoff.d.ts +0 -23
- package/heavy-run.d.ts +0 -12
- package/heavy.d.ts +0 -28
- package/heavy.js +0 -16
- package/held.d.ts +0 -22
- package/index-0tfvy823.js +0 -272
- package/index-43pq33n4.js +0 -157
- package/index-4776671w.js +0 -698
- package/index-d4hjrzaq.js +0 -464
- package/index-gcfq7awr.js +0 -740
- package/index-k73tsw5g.js +0 -101
- package/index-kaa44k7q.js +0 -59
- package/index-vcv9m93e.js +0 -1265
- package/index-xmfmy729.js +0 -249
- package/init.d.ts +0 -28
- package/journal.d.ts +0 -57
- package/landed.d.ts +0 -14
- package/lane-todos.d.ts +0 -44
- package/lanes-from-tags.d.ts +0 -17
- package/lanes.d.ts +0 -96
- package/legacy-names.d.ts +0 -70
- package/legacy-ps.d.ts +0 -31
- package/limits.d.ts +0 -32
- package/list.d.ts +0 -18
- package/load-config.d.ts +0 -44
- package/log.d.ts +0 -14
- package/machine.d.ts +0 -42
- package/merge.d.ts +0 -35
- package/migrate-config.d.ts +0 -31
- package/models.d.ts +0 -24
- package/needs.d.ts +0 -115
- package/notices.d.ts +0 -39
- package/offered.d.ts +0 -39
- package/opencode-usage.d.ts +0 -37
- package/outcomes.d.ts +0 -114
- package/path.d.ts +0 -13
- package/plan.d.ts +0 -236
- package/port-forward.d.ts +0 -22
- package/port-pipe.d.ts +0 -36
- package/ports-list.d.ts +0 -19
- package/probe-runtime.d.ts +0 -5
- package/probe-runtime.js +0 -13
- package/project-reaches.d.ts +0 -23
- package/prompts.d.ts +0 -128
- package/pty.d.ts +0 -39
- package/pulse.d.ts +0 -8
- package/recommend.d.ts +0 -31
- package/release.d.ts +0 -41
- package/remote-process.d.ts +0 -26
- package/remote-pty.d.ts +0 -29
- package/remote-worker.d.ts +0 -77
- package/remove.d.ts +0 -31
- package/repository.d.ts +0 -91
- package/retry.d.ts +0 -34
- package/roster.d.ts +0 -63
- package/saved-ports-host.d.ts +0 -25
- package/saved-tunnel.d.ts +0 -44
- package/server-worker-socket.d.ts +0 -21
- package/setup-areas.d.ts +0 -7
- package/setup-opencode-model-error.d.ts +0 -3
- package/setup-opencode-models.d.ts +0 -54
- package/setup-opencode-recipe.d.ts +0 -26
- package/setup-opencode.d.ts +0 -46
- package/shared-browser.d.ts +0 -50
- package/shell.d.ts +0 -17
- package/show.d.ts +0 -106
- package/skill-checks.d.ts +0 -73
- package/skill-checks.js +0 -10
- package/skills.d.ts +0 -16
- package/slot-tunnel.d.ts +0 -27
- package/snapshot.d.ts +0 -75
- package/splates-artifact.d.ts +0 -3
- package/splates-creds.d.ts +0 -3
- package/splates-dev.d.ts +0 -22
- package/splates-flags.d.ts +0 -34
- package/splates-lane.d.ts +0 -3
- package/splates-projects.d.ts +0 -3
- package/splates-setup.d.ts +0 -17
- package/splates-slots.d.ts +0 -3
- package/splates-todo.d.ts +0 -3
- package/stats.d.ts +0 -186
- package/supervise.d.ts +0 -50
- package/system-changes.d.ts +0 -67
- package/system.d.ts +0 -28
- package/systems.d.ts +0 -119
- package/systems.js +0 -21
- package/table.d.ts +0 -5
- package/task-log.d.ts +0 -35
- package/task-ports.d.ts +0 -25
- package/tell.d.ts +0 -47
- package/todo-edit.d.ts +0 -60
- package/todo-file.d.ts +0 -6
- package/todo-lanes.d.ts +0 -82
- package/todo-list.d.ts +0 -26
- package/todo-take.d.ts +0 -27
- package/todos.d.ts +0 -157
- package/tool-calls.d.ts +0 -18
- package/tunnel-provider.d.ts +0 -37
- package/tunnel-provider.js +0 -0
- package/tunnel-remove.d.ts +0 -28
- package/tunnel-setup.d.ts +0 -104
- package/unix-worker-listener.d.ts +0 -23
- package/unix-worker-socket.d.ts +0 -30
- package/update.d.ts +0 -29
- package/update.js +0 -10
- package/vocabulary.d.ts +0 -9
- package/wait.d.ts +0 -36
- package/watch.d.ts +0 -46
- package/watched.d.ts +0 -43
- package/websocket-worker-socket.d.ts +0 -18
- package/worker-call-host.d.ts +0 -51
- package/worker-channel.d.ts +0 -83
- package/worker-connection.d.ts +0 -24
- package/worker-daemon.d.ts +0 -64
- package/worker-git.d.ts +0 -18
- package/worker-list.d.ts +0 -49
- package/worker-machine.d.ts +0 -34
- package/worker-port-host.d.ts +0 -21
- package/worker-process-host.d.ts +0 -29
- package/worker-protocol.d.ts +0 -104
- package/worker-pty-host.d.ts +0 -34
- package/worker-registry.d.ts +0 -68
- package/worker-replay.d.ts +0 -25
- package/worker-run.d.ts +0 -20
- package/worker-session.d.ts +0 -189
- package/worker-socket.d.ts +0 -15
- package/worktree-service.d.ts +0 -113
- package/worktree.d.ts +0 -232
package/system-changes.d.ts
DELETED
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
import type { Commit } from "./git.js";
|
|
2
|
-
import type { Systems } from "./systems.js";
|
|
3
|
-
/** How many of trunk's latest commits the Systems page looks through. */
|
|
4
|
-
export declare const RECENT_COMMITS = 500;
|
|
5
|
-
/** How many of those commits each system lists, newest first. */
|
|
6
|
-
export declare const CHANGES_SHOWN = 10;
|
|
7
|
-
/**
|
|
8
|
-
* How many uncovered files a directory holds before they are split into
|
|
9
|
-
* groups by the first word of their names.
|
|
10
|
-
*/
|
|
11
|
-
export declare const SPLIT = 30;
|
|
12
|
-
/** One commit that changed a system. */
|
|
13
|
-
export type Change = Omit<Commit, "files">;
|
|
14
|
-
/** What one system is made of on trunk, and how it moved lately. */
|
|
15
|
-
export interface SystemChanges {
|
|
16
|
-
/** The system's name. */
|
|
17
|
-
name: string;
|
|
18
|
-
/** How many files trunk tracks in it. */
|
|
19
|
-
files: number;
|
|
20
|
-
/** Its globs that take in no file trunk tracks. */
|
|
21
|
-
unmatched: string[];
|
|
22
|
-
/** How many of the commits looked through changed it. */
|
|
23
|
-
changed: number;
|
|
24
|
-
/** The latest of them, up to `CHANGES_SHOWN`, newest first. */
|
|
25
|
-
changes: Change[];
|
|
26
|
-
/**
|
|
27
|
-
* Each other system some of those commits changed too, the most first.
|
|
28
|
-
* A task lands as one commit, so this is how often its tasks reach there.
|
|
29
|
-
*/
|
|
30
|
-
overlaps: Overlap[];
|
|
31
|
-
}
|
|
32
|
-
/** Another system that commits changing one system changed too. */
|
|
33
|
-
export interface Overlap {
|
|
34
|
-
/** The other system's name. */
|
|
35
|
-
name: string;
|
|
36
|
-
/** How many of the commits changing both. */
|
|
37
|
-
changed: number;
|
|
38
|
-
}
|
|
39
|
-
/** What the Systems page reads: every system, and how far back it looked. */
|
|
40
|
-
export interface SystemsReport {
|
|
41
|
-
systems: SystemChanges[];
|
|
42
|
-
/** When the oldest commit looked through was written, or null for none. */
|
|
43
|
-
since: string | null;
|
|
44
|
-
/** How many commits were looked through. */
|
|
45
|
-
scanned: number;
|
|
46
|
-
/** How many files trunk tracks that no system covers. */
|
|
47
|
-
uncovered: number;
|
|
48
|
-
/**
|
|
49
|
-
* Those files as globs: those of several files first, then each lot
|
|
50
|
-
* changed most lately first.
|
|
51
|
-
*/
|
|
52
|
-
groups: Uncovered[];
|
|
53
|
-
}
|
|
54
|
-
/** Files no system covers, as one glob a system could be named for. */
|
|
55
|
-
export interface Uncovered {
|
|
56
|
-
/** A glob taking in the files, such as `src/upload/*` or `src/upload*`. */
|
|
57
|
-
glob: string;
|
|
58
|
-
/** How many uncovered files it takes in. */
|
|
59
|
-
files: number;
|
|
60
|
-
/** How many of the commits looked through changed one of them. */
|
|
61
|
-
changed: number;
|
|
62
|
-
}
|
|
63
|
-
/**
|
|
64
|
-
* How each of `systems` stands in a tree whose tracked files are `files`,
|
|
65
|
-
* and which of `commits`, newest first, changed it.
|
|
66
|
-
*/
|
|
67
|
-
export declare function systemsReport(systems: Systems, files: string[], commits: Commit[]): SystemsReport;
|
package/system.d.ts
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { type Logger } from "webappwiz/log";
|
|
2
|
-
import type { Fs } from "webappwiz/system";
|
|
3
|
-
import type { Git } from "./git.js";
|
|
4
|
-
import type { WorktreeService } from "./worktree-service.js";
|
|
5
|
-
export interface ShowSystemsOptions {
|
|
6
|
-
/** A system to print alone, by its name or an alias. */
|
|
7
|
-
name?: string;
|
|
8
|
-
/** Print only the systems this task's changed files fall in. */
|
|
9
|
-
task?: string;
|
|
10
|
-
/**
|
|
11
|
-
* The task the command runs in, read off the current branch: with no
|
|
12
|
-
* `task`, its worktree's systems are the ones read.
|
|
13
|
-
*/
|
|
14
|
-
here?: string | null;
|
|
15
|
-
/** Print the systems as JSON instead of prose. */
|
|
16
|
-
json?: boolean;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* The systems `splates.systems.ts` names: every one, one by name, or those a
|
|
20
|
-
* task touches. Read from the task's own worktree, so one it names counts
|
|
21
|
-
* before it lands.
|
|
22
|
-
*/
|
|
23
|
-
export declare function systems({ service, git, fs, log, }: {
|
|
24
|
-
service: WorktreeService;
|
|
25
|
-
git: Git;
|
|
26
|
-
fs: Fs;
|
|
27
|
-
log: Logger;
|
|
28
|
-
}, { name, task, here, json }?: ShowSystemsOptions): Promise<void>;
|
package/systems.d.ts
DELETED
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
import { type Fs, type Glob } from "webappwiz/system";
|
|
2
|
-
/** The file a repo names its systems in, at its root. */
|
|
3
|
-
export declare const SYSTEMS_FILE = "splates.systems.ts";
|
|
4
|
-
/** One named part of the code: the files it is made of. */
|
|
5
|
-
export interface System {
|
|
6
|
-
/** What it is for in one short line, never how it works, which goes stale. */
|
|
7
|
-
description?: string;
|
|
8
|
-
/**
|
|
9
|
-
* Other names people call it by, at most two, so one part of the code
|
|
10
|
-
* keeps one word for it.
|
|
11
|
-
*/
|
|
12
|
-
aliases?: string[];
|
|
13
|
-
/** Repo-relative globs of the files it is made of. */
|
|
14
|
-
globs: string[];
|
|
15
|
-
/** Globs of files the `globs` take in that are not part of it. */
|
|
16
|
-
ignore?: string[];
|
|
17
|
-
}
|
|
18
|
-
/** A system with the name `splates.systems.ts` keys it by. */
|
|
19
|
-
export interface NamedSystem extends System {
|
|
20
|
-
name: string;
|
|
21
|
-
}
|
|
22
|
-
/** Configures where {@link Systems.at} reads and how it matches. */
|
|
23
|
-
export interface SystemsOptions {
|
|
24
|
-
/** What `splates.systems.ts` is read through; the real one by default. */
|
|
25
|
-
fs?: Fs;
|
|
26
|
-
/** What paths are matched against globs with; `node:path`'s by default. */
|
|
27
|
-
glob?: Glob;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* What `splates.systems.ts` exports as its default, keyed by name:
|
|
31
|
-
*
|
|
32
|
-
* ```ts
|
|
33
|
-
* import type { SystemsFile } from "@stringsync/splates/systems";
|
|
34
|
-
*
|
|
35
|
-
* export default {
|
|
36
|
-
* playback: { description: "Playing a song", globs: ["src/audio/**"] },
|
|
37
|
-
* } satisfies SystemsFile;
|
|
38
|
-
* ```
|
|
39
|
-
*
|
|
40
|
-
* The import is only a type, so a reader can import the file without splates
|
|
41
|
-
* installed.
|
|
42
|
-
*/
|
|
43
|
-
export type SystemsFile = Record<string, System>;
|
|
44
|
-
/**
|
|
45
|
-
* The systems one tree's `splates.systems.ts` names, and which of them a set of
|
|
46
|
-
* paths falls in.
|
|
47
|
-
*/
|
|
48
|
-
export declare class Systems {
|
|
49
|
-
private readonly named;
|
|
50
|
-
private readonly glob;
|
|
51
|
-
private constructor();
|
|
52
|
-
/**
|
|
53
|
-
* The systems the tree at `root` names as it stands now: read afresh, so
|
|
54
|
-
* one named in a task's worktree counts there at once.
|
|
55
|
-
*/
|
|
56
|
-
static at(root: string, opts?: SystemsOptions): Promise<Systems>;
|
|
57
|
-
static of(systems: Record<string, System>, glob?: Glob): Systems;
|
|
58
|
-
/** Every system, in the order `splates.systems.ts` names them. */
|
|
59
|
-
all(): NamedSystem[];
|
|
60
|
-
/** The system called `name`, by its name or one of its aliases. */
|
|
61
|
-
find(name: string): NamedSystem | null;
|
|
62
|
-
/** The systems any of `paths`, repo-relative, falls in. */
|
|
63
|
-
touchedBy(paths: string[]): NamedSystem[];
|
|
64
|
-
/** Those of `paths`, repo-relative, that fall in `system`. */
|
|
65
|
-
within(system: System, paths: string[]): string[];
|
|
66
|
-
/**
|
|
67
|
-
* The globs of `system` that take in none of `paths`: as a rule, ones
|
|
68
|
-
* left behind when the files they named moved.
|
|
69
|
-
*/
|
|
70
|
-
unmatched(system: System, paths: string[]): string[];
|
|
71
|
-
/**
|
|
72
|
-
* The systems `text` mentions as `#name` or `#alias`, each once, in the
|
|
73
|
-
* order first mentioned. A `#` that names no system, such as `#12`, is
|
|
74
|
-
* left alone.
|
|
75
|
-
*/
|
|
76
|
-
mentioned(text: string): NamedSystem[];
|
|
77
|
-
/**
|
|
78
|
-
* The words `text` mentions as `#word` that no system answers to, each
|
|
79
|
-
* once, in the order first mentioned. A number, such as `#12`, is a todo
|
|
80
|
-
* rather than a system, and one in code means something else.
|
|
81
|
-
*/
|
|
82
|
-
unknown(text: string): string[];
|
|
83
|
-
private contains;
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Each word `text` mentions as `#word` outside code, once, in the order first
|
|
87
|
-
* mentioned: in code, a `#` means something else.
|
|
88
|
-
*/
|
|
89
|
-
export declare function hashed(text: string): string[];
|
|
90
|
-
/**
|
|
91
|
-
* One line telling an agent what a mentioned system is made of:
|
|
92
|
-
*
|
|
93
|
-
* ```
|
|
94
|
-
* #playback (player, audio engine): Playing a song. Made of src/player/**, src/audio/**; not src/player/*.test.ts
|
|
95
|
-
* ```
|
|
96
|
-
*/
|
|
97
|
-
export declare function mentionLine(system: NamedSystem): string;
|
|
98
|
-
/**
|
|
99
|
-
* One line asking an agent to find the code an unknown `#name` means, so the
|
|
100
|
-
* user can name it as a system, or give one that covers it the alias.
|
|
101
|
-
*/
|
|
102
|
-
export declare function unknownLine(name: string): string;
|
|
103
|
-
/** The longest {@link System.description} splates takes. */
|
|
104
|
-
export declare const DESCRIPTION_MAX = 80;
|
|
105
|
-
/**
|
|
106
|
-
* The systems `root`'s `splates.systems.ts` names, checked, or none when there
|
|
107
|
-
* is no such file. Read afresh each time, so a long-running `splates server` sees a
|
|
108
|
-
* system named mid-task without a restart. Throws while `splates.config.ts`
|
|
109
|
-
* still names systems, which `splates update` moves.
|
|
110
|
-
*/
|
|
111
|
-
export declare function readSystems(root: string, fs?: Fs): Promise<Record<string, System>>;
|
|
112
|
-
/**
|
|
113
|
-
* `systems` in the shape {@link System} names, or throws
|
|
114
|
-
* naming `path` for one that is not, one with more than two aliases or a
|
|
115
|
-
* description longer than one short line, or two
|
|
116
|
-
* that answer to the same name, which would leave `splates systems <name>`
|
|
117
|
-
* guessing.
|
|
118
|
-
*/
|
|
119
|
-
export declare function checkSystems(path: string, systems: unknown): Record<string, System>;
|
package/systems.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
SYSTEMS_FILE2,
|
|
3
|
-
Systems2,
|
|
4
|
-
hashed2,
|
|
5
|
-
mentionLine2,
|
|
6
|
-
unknownLine2,
|
|
7
|
-
DESCRIPTION_MAX2,
|
|
8
|
-
readSystems2,
|
|
9
|
-
checkSystems2
|
|
10
|
-
} from "./index-4776671w.js";
|
|
11
|
-
import"./index-k73tsw5g.js";
|
|
12
|
-
export {
|
|
13
|
-
DESCRIPTION_MAX2 as DESCRIPTION_MAX,
|
|
14
|
-
SYSTEMS_FILE2 as SYSTEMS_FILE,
|
|
15
|
-
Systems2 as Systems,
|
|
16
|
-
checkSystems2 as checkSystems,
|
|
17
|
-
hashed2 as hashed,
|
|
18
|
-
mentionLine2 as mentionLine,
|
|
19
|
-
readSystems2 as readSystems,
|
|
20
|
-
unknownLine2 as unknownLine
|
|
21
|
-
};
|
package/table.d.ts
DELETED
package/task-log.d.ts
DELETED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { Fs } from "webappwiz/system";
|
|
2
|
-
/** What a task's turns used, apart from the rest of its conversation's. */
|
|
3
|
-
export interface TaskUsage {
|
|
4
|
-
/** Tokens read, those from cache among them. */
|
|
5
|
-
input: number;
|
|
6
|
-
cached: number;
|
|
7
|
-
output: number;
|
|
8
|
-
/** What it cost; null for an agent that never says, as Codex does not. */
|
|
9
|
-
cost: {
|
|
10
|
-
amount: number;
|
|
11
|
-
currency: string;
|
|
12
|
-
} | null;
|
|
13
|
-
}
|
|
14
|
-
/** What a task's stretch of its conversation shows of how the work went. */
|
|
15
|
-
export interface TaskLog {
|
|
16
|
-
/** OpenCode observations have different scope; kept in the conversation, not legacy task totals. */
|
|
17
|
-
usage: TaskUsage | undefined;
|
|
18
|
-
/** Each agent turn's span, start to last move, summed. */
|
|
19
|
-
workedMs: number;
|
|
20
|
-
/** When the person stopped the agent's turn, each time. */
|
|
21
|
-
stopped: string[];
|
|
22
|
-
/** When a lost connection cut the agent's turn short, each time. */
|
|
23
|
-
interrupted: string[];
|
|
24
|
-
/** How many times each command failed. */
|
|
25
|
-
failedCommands: Record<string, number>;
|
|
26
|
-
/** Lines the agent's edits took out and put in, its plan's aside. */
|
|
27
|
-
editedLines: number;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
* Reads the conversation logged at `log` from `since` to `until`: a
|
|
31
|
-
* conversation can outlive the task, or come to it already under way. Null
|
|
32
|
-
* when there is no such log. Read raw rather than replayed, since the agent
|
|
33
|
-
* merging is still writing it.
|
|
34
|
-
*/
|
|
35
|
-
export declare function taskLog(log: string, fs: Fs, since: string, until: string): Promise<TaskLog | null>;
|
package/task-ports.d.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { ListeningEntry, ProcessEntry } from "webappwiz/system";
|
|
2
|
-
/** What ties a process to a task: its worktree, and the agents at work in it. */
|
|
3
|
-
export interface PortOwners {
|
|
4
|
-
worktrees: {
|
|
5
|
-
task: string;
|
|
6
|
-
path: string;
|
|
7
|
-
}[];
|
|
8
|
-
/** The pid of each agent `splates server` runs in a task. */
|
|
9
|
-
agents: {
|
|
10
|
-
task: string;
|
|
11
|
-
pid: number;
|
|
12
|
-
}[];
|
|
13
|
-
}
|
|
14
|
-
/** One port a task's processes listen on, on the worker that runs them. */
|
|
15
|
-
export interface TaskPort {
|
|
16
|
-
task: string;
|
|
17
|
-
port: number;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* The ports each task serves, as an editor finds the ports to forward: each
|
|
21
|
-
* one a process listens on that runs in the task's worktree, or under one of
|
|
22
|
-
* its agents, whatever directory it moved to. Each port once, in the order
|
|
23
|
-
* of its task, then its number.
|
|
24
|
-
*/
|
|
25
|
-
export declare function taskPorts(table: ProcessEntry[], listening: ListeningEntry[], owners: PortOwners): TaskPort[];
|
package/tell.d.ts
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import type { Logger } from "webappwiz/log";
|
|
2
|
-
import type { Ps } from "webappwiz/system";
|
|
3
|
-
import type { Projects } from "./projects.js";
|
|
4
|
-
import type { Worktree } from "./worktree.js";
|
|
5
|
-
import type { WorktreeService } from "./worktree-service.js";
|
|
6
|
-
/** What `fetch` is used for here, so a test can stand in for it. */
|
|
7
|
-
type Send = (url: string, init: RequestInit) => Promise<Response>;
|
|
8
|
-
/**
|
|
9
|
-
* The two ends of a task one conversation handed to an agent with `splates add
|
|
10
|
-
* --agent`: the caller that handed it out, and the conversation `splates server`
|
|
11
|
-
* started for the agent. Null for any other task, which answers to the user
|
|
12
|
-
* alone.
|
|
13
|
-
*/
|
|
14
|
-
export declare function handOff(worktree: Worktree): {
|
|
15
|
-
caller: string;
|
|
16
|
-
conversation: string;
|
|
17
|
-
} | null;
|
|
18
|
-
/**
|
|
19
|
-
* Says `text` in the conversation of the agent a task was handed to, as the
|
|
20
|
-
* user would, for the conversation that handed it out to wake it, pass on
|
|
21
|
-
* answers, or what the earlier steps of its lane taught it; with `stop`, its
|
|
22
|
-
* running turn stopped first, for a change of plans. Only that conversation
|
|
23
|
-
* may, not whoever else asks. Answers with that agent's conversation.
|
|
24
|
-
*/
|
|
25
|
-
export declare function tell({ ps, service, send, }: {
|
|
26
|
-
ps: Ps;
|
|
27
|
-
service: WorktreeService;
|
|
28
|
-
send?: Send;
|
|
29
|
-
}, task: string, text: string, { stop }?: {
|
|
30
|
-
stop?: boolean;
|
|
31
|
-
}): Promise<string>;
|
|
32
|
-
/**
|
|
33
|
-
* Tells the conversation that handed `worktree` out that the task stopped,
|
|
34
|
-
* escalated, merged or removed, with `[SPLATES REPORT <task>]`, when its agent
|
|
35
|
-
* answers to that conversation, or that conversation is another project's. Run before the record
|
|
36
|
-
* goes, by the command that stops it. Outside `splates server`, or for a task
|
|
37
|
-
* nobody handed out, it says nothing; a server that cannot be reached is
|
|
38
|
-
* worth a line, never a failure, since the command has done its work.
|
|
39
|
-
*/
|
|
40
|
-
export declare function reportToCaller({ ps, log, service, projects, send, }: {
|
|
41
|
-
ps: Ps;
|
|
42
|
-
log: Logger;
|
|
43
|
-
service: WorktreeService;
|
|
44
|
-
projects: Projects;
|
|
45
|
-
send?: Send;
|
|
46
|
-
}, worktree: Worktree): Promise<void>;
|
|
47
|
-
export {};
|
package/todo-edit.d.ts
DELETED
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { type Logger } from "webappwiz/log";
|
|
2
|
-
import type { Fs, Ps } from "webappwiz/system";
|
|
3
|
-
import type { Facts } from "./events.js";
|
|
4
|
-
import type { AgentPick } from "./roster.js";
|
|
5
|
-
import type { Todo, TodoOrigin } from "./todo.js";
|
|
6
|
-
import type { Todos } from "./todos.js";
|
|
7
|
-
export interface TodoFileOptions {
|
|
8
|
-
/** Files to attach, relative to the current directory or absolute. */
|
|
9
|
-
files?: string[];
|
|
10
|
-
}
|
|
11
|
-
export interface TodoAddOptions extends TodoFileOptions {
|
|
12
|
-
/** Whatever more there is to say than the subject. */
|
|
13
|
-
text?: string;
|
|
14
|
-
/** Where it goes in the list, 1 at the top; the bottom by default. */
|
|
15
|
-
position?: number;
|
|
16
|
-
/** The todos blocking it: each has to merge before it starts. */
|
|
17
|
-
blockedBy?: number[];
|
|
18
|
-
/** The lane it goes in, `"new"` for one of its own; none by default. */
|
|
19
|
-
lane?: number | "new" | null;
|
|
20
|
-
/** The agent that should work it; none by default. */
|
|
21
|
-
assignee?: AgentPick | null;
|
|
22
|
-
/** The other project it is added from; none by default. */
|
|
23
|
-
origin?: TodoOrigin;
|
|
24
|
-
}
|
|
25
|
-
export declare function todoAdd(deps: {
|
|
26
|
-
todos: Todos;
|
|
27
|
-
log: Logger;
|
|
28
|
-
fs: Fs;
|
|
29
|
-
ps: Ps;
|
|
30
|
-
}, subject: string, from: string | null, { text, files, position, blockedBy, lane, assignee, origin, }?: TodoAddOptions): Promise<Todo>;
|
|
31
|
-
/** What a `todo add` event says of the todo it added. */
|
|
32
|
-
export declare function addedFacts(todo: Todo): Facts["todo add"];
|
|
33
|
-
export interface TodoUpdateOptions extends TodoFileOptions {
|
|
34
|
-
/** A new line; the old one stays when this is absent or empty. */
|
|
35
|
-
subject?: string;
|
|
36
|
-
/** New detail; the old stays when this is absent or empty. */
|
|
37
|
-
text?: string;
|
|
38
|
-
/** Where to move it in the list, 1 at the top; it stays put when absent. */
|
|
39
|
-
position?: number;
|
|
40
|
-
/** Attached files to drop, by path or by the name they were stored under. */
|
|
41
|
-
removeFiles?: string[];
|
|
42
|
-
/** Todos blocking it from now on, besides those that already do. */
|
|
43
|
-
blockedBy?: number[];
|
|
44
|
-
/** Todos no longer blocking it. */
|
|
45
|
-
removeBlockedBy?: number[];
|
|
46
|
-
/** The lane it moves to, `"new"` for one of its own, null for none; it stays when absent. */
|
|
47
|
-
lane?: number | "new" | null;
|
|
48
|
-
/** The agent that should work it, null for none; it stays when absent. */
|
|
49
|
-
assignee?: AgentPick | null;
|
|
50
|
-
}
|
|
51
|
-
export declare function todoUpdate(deps: {
|
|
52
|
-
todos: Todos;
|
|
53
|
-
log: Logger;
|
|
54
|
-
fs: Fs;
|
|
55
|
-
ps: Ps;
|
|
56
|
-
}, id: number, { subject, text, position, files, removeFiles, blockedBy, removeBlockedBy, lane, assignee, }?: TodoUpdateOptions): Promise<Todo>;
|
|
57
|
-
export declare function todoRemove({ todos, log }: {
|
|
58
|
-
todos: Todos;
|
|
59
|
-
log: Logger;
|
|
60
|
-
}, id: number): Promise<Todo>;
|
package/todo-file.d.ts
DELETED
package/todo-lanes.d.ts
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
import type { Fs } from "webappwiz/system";
|
|
2
|
-
import { type LaneRecord } from "./lanes.js";
|
|
3
|
-
import type { TodoState } from "./todo.js";
|
|
4
|
-
import type { Todos } from "./todos.js";
|
|
5
|
-
/**
|
|
6
|
-
* The lanes of a `Todos`: their records in `lanes` beside the todos, and every
|
|
7
|
-
* change that moves todos between them, each made under the todos' lock.
|
|
8
|
-
*/
|
|
9
|
-
export declare class TodoLanes {
|
|
10
|
-
private readonly todos;
|
|
11
|
-
private readonly fs;
|
|
12
|
-
constructor(todos: Todos, fs: Fs);
|
|
13
|
-
/**
|
|
14
|
-
* Moves every todo in lane `from` to the bottom of lane `into`, in the
|
|
15
|
-
* order they had, and the lane `from` is gone.
|
|
16
|
-
*/
|
|
17
|
-
joinLanes(from: number, into: number): Promise<void>;
|
|
18
|
-
/** Starts an empty lane called `name`, after the others. */
|
|
19
|
-
addLane(name: string): Promise<LaneRecord>;
|
|
20
|
-
/** Calls lane `id` by another name. */
|
|
21
|
-
renameLane(id: number, name: string): Promise<LaneRecord>;
|
|
22
|
-
/**
|
|
23
|
-
* Puts lane `id` at `position` among the lanes, 1 the first column, past
|
|
24
|
-
* the last meaning the last; the others close up around it.
|
|
25
|
-
*/
|
|
26
|
-
moveLane(id: number, position: number): Promise<LaneRecord[]>;
|
|
27
|
-
/** Removes lane `id`, putting its todos back in none, untriaged. */
|
|
28
|
-
dropLane(id: number): Promise<void>;
|
|
29
|
-
/**
|
|
30
|
-
* @internal Removes each lane in `ids` that no todo is in any more: a lane
|
|
31
|
-
* whose last todo merged is done. One emptied by hand stays, to be filled.
|
|
32
|
-
*/
|
|
33
|
-
endLanes(ids: number[]): Promise<void>;
|
|
34
|
-
/**
|
|
35
|
-
* Moves todos saved while splates kept tags into lanes, one lane a tag,
|
|
36
|
-
* and drops their tags, which splates refuses to read until then. A todo
|
|
37
|
-
* in no lane goes to the lane of its tag the most todos share, at the
|
|
38
|
-
* bottom, in list order, below anything in that lane blocking it; a lane
|
|
39
|
-
* already called that takes them. Gives back each lane it filled, with
|
|
40
|
-
* the todos it put there, in board order; none once no todo has tags.
|
|
41
|
-
*/
|
|
42
|
-
moveTagsToLanes(): Promise<{
|
|
43
|
-
lane: LaneRecord;
|
|
44
|
-
todos: number[];
|
|
45
|
-
}[]>;
|
|
46
|
-
/**
|
|
47
|
-
* @internal The lane `lane` names: null for none, one there is, or for
|
|
48
|
-
* `"new"` one started for `todos`, called `name` or named after them. Call
|
|
49
|
-
* it under the lock.
|
|
50
|
-
*/
|
|
51
|
-
laneId(lane: number | "new" | null, states: TodoState[], todos: TodoState[], name?: string): Promise<number | null>;
|
|
52
|
-
/**
|
|
53
|
-
* Starts a lane for `todos` after the others, called `name`, or aptly
|
|
54
|
-
* named without one. Call it under the lock.
|
|
55
|
-
*/
|
|
56
|
-
private newLane;
|
|
57
|
-
/**
|
|
58
|
-
* A lane id never handed out before, so a lane's number never comes back
|
|
59
|
-
* meaning another. Call it under the lock.
|
|
60
|
-
*/
|
|
61
|
-
private nextLaneId;
|
|
62
|
-
/**
|
|
63
|
-
* @internal The lanes as stored, and after them any lane a todo is in that
|
|
64
|
-
* has no record. A file that will not parse reads as none.
|
|
65
|
-
*/
|
|
66
|
-
records(states: TodoState[]): Promise<LaneRecord[]>;
|
|
67
|
-
/**
|
|
68
|
-
* The name of every lane there has been: those on the board, and after
|
|
69
|
-
* them each that is gone as it was last called, so an orchestrator whose
|
|
70
|
-
* lanes are done still goes by their names.
|
|
71
|
-
*/
|
|
72
|
-
names(states: TodoState[]): Promise<LaneRecord[]>;
|
|
73
|
-
/** The lane records in `file`, none when it is missing or will not parse. */
|
|
74
|
-
private read;
|
|
75
|
-
/**
|
|
76
|
-
* Writes the lanes, in board order, keeping the name of each lane they
|
|
77
|
-
* drop in `ended-lanes`. Call it under the lock.
|
|
78
|
-
*/
|
|
79
|
-
private writeLanes;
|
|
80
|
-
/** Writes `records` to `file` whole, so a reader never sees half of it. */
|
|
81
|
-
private write;
|
|
82
|
-
}
|
package/todo-list.d.ts
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { type Logger } from "webappwiz/log";
|
|
2
|
-
import type { Todos } from "./todos.js";
|
|
3
|
-
export interface TodoListOptions {
|
|
4
|
-
/** Print the todos as JSON instead of a table. */
|
|
5
|
-
json?: boolean;
|
|
6
|
-
/** Only those no task has taken: the ones free to pick up. */
|
|
7
|
-
open?: boolean;
|
|
8
|
-
/**
|
|
9
|
-
* Only those free to start now: nobody has taken them, and nothing they
|
|
10
|
-
* is blocked by is still open.
|
|
11
|
-
*/
|
|
12
|
-
ready?: boolean;
|
|
13
|
-
}
|
|
14
|
-
export declare function todoList({ todos, log }: {
|
|
15
|
-
todos: Todos;
|
|
16
|
-
log: Logger;
|
|
17
|
-
}, { json, open, ready }?: TodoListOptions): Promise<void>;
|
|
18
|
-
export interface TodoShowOptions {
|
|
19
|
-
/** Print the todo as JSON instead of prose. */
|
|
20
|
-
json?: boolean;
|
|
21
|
-
}
|
|
22
|
-
/** One todo in full: what `todo list` shows of it, its files, and its detail. */
|
|
23
|
-
export declare function todoShow({ todos, log }: {
|
|
24
|
-
todos: Todos;
|
|
25
|
-
log: Logger;
|
|
26
|
-
}, id: number, { json }?: TodoShowOptions): Promise<void>;
|
package/todo-take.d.ts
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { type Logger } from "webappwiz/log";
|
|
2
|
-
import type { Todo } from "./todo.js";
|
|
3
|
-
import type { Todos } from "./todos.js";
|
|
4
|
-
/**
|
|
5
|
-
* Takes up todos for `task` after it started, as when one turns out to be
|
|
6
|
-
* part of the work. Every id is checked before any is taken, so one that is
|
|
7
|
-
* gone or another task's refuses them all.
|
|
8
|
-
*/
|
|
9
|
-
export declare function todoTake({ todos, log }: {
|
|
10
|
-
todos: Todos;
|
|
11
|
-
log: Logger;
|
|
12
|
-
}, ids: number[], task: string | null): Promise<Todo[]>;
|
|
13
|
-
/**
|
|
14
|
-
* Puts todos back on the list, as when a task is landing without finishing
|
|
15
|
-
* them: say what is left with `splates todo update` first. From a worktree it
|
|
16
|
-
* gives back only its own task's todos.
|
|
17
|
-
*/
|
|
18
|
-
export declare function todoRelease({ todos, log }: {
|
|
19
|
-
todos: Todos;
|
|
20
|
-
log: Logger;
|
|
21
|
-
}, ids: number[], task: string | null): Promise<Todo[]>;
|
|
22
|
-
/**
|
|
23
|
-
* The lines warning that `todo` was taken while `blockers` have yet to merge,
|
|
24
|
-
* or none when nothing blocks it: it may be started, but what it builds on
|
|
25
|
-
* is not there yet.
|
|
26
|
-
*/
|
|
27
|
-
export declare function blockedWarning(todo: Todo, blockers: Todo[]): string[];
|