@mindfoldhq/trellis 0.6.0-beta.11 → 0.6.0-beta.12

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 (74) hide show
  1. package/dist/commands/channel/create.d.ts +5 -0
  2. package/dist/commands/channel/create.d.ts.map +1 -1
  3. package/dist/commands/channel/create.js +19 -15
  4. package/dist/commands/channel/create.js.map +1 -1
  5. package/dist/commands/channel/index.d.ts.map +1 -1
  6. package/dist/commands/channel/index.js +90 -9
  7. package/dist/commands/channel/index.js.map +1 -1
  8. package/dist/commands/channel/kill.d.ts +1 -0
  9. package/dist/commands/channel/kill.d.ts.map +1 -1
  10. package/dist/commands/channel/kill.js +16 -13
  11. package/dist/commands/channel/kill.js.map +1 -1
  12. package/dist/commands/channel/list.d.ts +1 -0
  13. package/dist/commands/channel/list.d.ts.map +1 -1
  14. package/dist/commands/channel/list.js +18 -6
  15. package/dist/commands/channel/list.js.map +1 -1
  16. package/dist/commands/channel/messages.d.ts +3 -0
  17. package/dist/commands/channel/messages.d.ts.map +1 -1
  18. package/dist/commands/channel/messages.js +88 -58
  19. package/dist/commands/channel/messages.js.map +1 -1
  20. package/dist/commands/channel/rm.d.ts +2 -0
  21. package/dist/commands/channel/rm.d.ts.map +1 -1
  22. package/dist/commands/channel/rm.js +15 -5
  23. package/dist/commands/channel/rm.js.map +1 -1
  24. package/dist/commands/channel/run.js +1 -1
  25. package/dist/commands/channel/run.js.map +1 -1
  26. package/dist/commands/channel/send.d.ts +2 -0
  27. package/dist/commands/channel/send.d.ts.map +1 -1
  28. package/dist/commands/channel/send.js +9 -10
  29. package/dist/commands/channel/send.js.map +1 -1
  30. package/dist/commands/channel/spawn.d.ts +1 -0
  31. package/dist/commands/channel/spawn.d.ts.map +1 -1
  32. package/dist/commands/channel/spawn.js +14 -11
  33. package/dist/commands/channel/spawn.js.map +1 -1
  34. package/dist/commands/channel/store/events.d.ts +61 -6
  35. package/dist/commands/channel/store/events.d.ts.map +1 -1
  36. package/dist/commands/channel/store/events.js +53 -9
  37. package/dist/commands/channel/store/events.js.map +1 -1
  38. package/dist/commands/channel/store/filter.d.ts +33 -0
  39. package/dist/commands/channel/store/filter.d.ts.map +1 -0
  40. package/dist/commands/channel/store/filter.js +63 -0
  41. package/dist/commands/channel/store/filter.js.map +1 -0
  42. package/dist/commands/channel/store/paths.d.ts +7 -0
  43. package/dist/commands/channel/store/paths.d.ts.map +1 -1
  44. package/dist/commands/channel/store/paths.js +76 -17
  45. package/dist/commands/channel/store/paths.js.map +1 -1
  46. package/dist/commands/channel/store/schema.d.ts +36 -0
  47. package/dist/commands/channel/store/schema.d.ts.map +1 -0
  48. package/dist/commands/channel/store/schema.js +91 -0
  49. package/dist/commands/channel/store/schema.js.map +1 -0
  50. package/dist/commands/channel/store/thread-state.d.ts +19 -0
  51. package/dist/commands/channel/store/thread-state.d.ts.map +1 -0
  52. package/dist/commands/channel/store/thread-state.js +81 -0
  53. package/dist/commands/channel/store/thread-state.js.map +1 -0
  54. package/dist/commands/channel/store/watch.d.ts +4 -21
  55. package/dist/commands/channel/store/watch.d.ts.map +1 -1
  56. package/dist/commands/channel/store/watch.js +8 -54
  57. package/dist/commands/channel/store/watch.js.map +1 -1
  58. package/dist/commands/channel/supervisor.d.ts +1 -1
  59. package/dist/commands/channel/supervisor.d.ts.map +1 -1
  60. package/dist/commands/channel/supervisor.js +11 -10
  61. package/dist/commands/channel/supervisor.js.map +1 -1
  62. package/dist/commands/channel/threads.d.ts +28 -0
  63. package/dist/commands/channel/threads.d.ts.map +1 -0
  64. package/dist/commands/channel/threads.js +96 -0
  65. package/dist/commands/channel/threads.js.map +1 -0
  66. package/dist/commands/channel/wait.d.ts +3 -0
  67. package/dist/commands/channel/wait.d.ts.map +1 -1
  68. package/dist/commands/channel/wait.js +9 -8
  69. package/dist/commands/channel/wait.js.map +1 -1
  70. package/dist/migrations/manifests/0.6.0-beta.12.json +9 -0
  71. package/dist/templates/markdown/spec/guides/code-reuse-thinking-guide.md.txt +128 -9
  72. package/dist/templates/markdown/spec/guides/cross-layer-thinking-guide.md.txt +62 -0
  73. package/dist/templates/markdown/spec/guides/index.md.txt +18 -0
  74. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"spawn.js","sourceRoot":"","sources":["../../../src/commands/channel/spawn.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spawn.js","sourceRoot":"","sources":["../../../src/commands/channel/spawn.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,75 @@
1
- export type ChannelEventKind = "create" | "join" | "leave" | "message" | "spawned" | "killed" | "respawned" | "progress" | "done" | "error" | "waiting" | "awake";
1
+ import { type ChannelMetadata, type ChannelType, type LinkedContextEntry, type ThreadAction } from "./schema.js";
2
+ export type ChannelEventKind = "create" | "join" | "leave" | "message" | "thread" | "spawned" | "killed" | "respawned" | "progress" | "done" | "error" | "waiting" | "awake";
2
3
  export declare const CHANNEL_EVENT_KINDS: ReadonlySet<ChannelEventKind>;
3
4
  export declare function parseChannelKind(v: string | undefined): ChannelEventKind | undefined;
4
- export interface ChannelEvent {
5
+ export interface BaseChannelEvent<K extends ChannelEventKind = ChannelEventKind> {
5
6
  seq: number;
6
7
  ts: string;
7
- kind: ChannelEventKind;
8
+ kind: K;
8
9
  by: string;
9
10
  [extra: string]: unknown;
10
11
  }
11
- export declare function ensureChannelDir(name: string): Promise<string>;
12
- export declare function readLastSeq(name: string): Promise<number>;
12
+ export interface CreateChannelEvent extends BaseChannelEvent<"create"> {
13
+ cwd?: string;
14
+ task?: string;
15
+ type?: ChannelType;
16
+ description?: string;
17
+ linkedContext?: LinkedContextEntry[];
18
+ labels?: string[];
19
+ ephemeral?: boolean;
20
+ }
21
+ export interface MessageChannelEvent extends BaseChannelEvent<"message"> {
22
+ text?: string;
23
+ to?: string | string[];
24
+ tag?: string;
25
+ }
26
+ export interface ThreadChannelEvent extends BaseChannelEvent<"thread"> {
27
+ action?: ThreadAction;
28
+ thread: string;
29
+ title?: string;
30
+ text?: string;
31
+ description?: string;
32
+ status?: string;
33
+ labels?: string[];
34
+ assignees?: string[];
35
+ summary?: string;
36
+ linkedContext?: LinkedContextEntry[];
37
+ }
38
+ export interface SpawnedChannelEvent extends BaseChannelEvent<"spawned"> {
39
+ as?: string;
40
+ provider?: string;
41
+ pid?: number;
42
+ agent?: string;
43
+ files?: string[];
44
+ manifests?: string[];
45
+ }
46
+ export interface KilledChannelEvent extends BaseChannelEvent<"killed"> {
47
+ reason?: string;
48
+ signal?: string;
49
+ }
50
+ export interface DoneChannelEvent extends BaseChannelEvent<"done"> {
51
+ duration_ms?: number;
52
+ }
53
+ export interface ErrorChannelEvent extends BaseChannelEvent<"error"> {
54
+ message?: string;
55
+ }
56
+ export interface ProgressChannelEvent extends BaseChannelEvent<"progress"> {
57
+ detail?: Record<string, unknown>;
58
+ }
59
+ export type GenericChannelEvent = BaseChannelEvent<Exclude<ChannelEventKind, "create" | "message" | "thread" | "spawned" | "killed" | "done" | "error" | "progress">>;
60
+ export type ChannelEvent = CreateChannelEvent | MessageChannelEvent | ThreadChannelEvent | SpawnedChannelEvent | KilledChannelEvent | DoneChannelEvent | ErrorChannelEvent | ProgressChannelEvent | GenericChannelEvent;
61
+ export declare function isCreateEvent(ev: ChannelEvent): ev is CreateChannelEvent;
62
+ export declare function isThreadEvent(ev: ChannelEvent): ev is ThreadChannelEvent;
63
+ export declare function metadataFromCreateEvent(create: ChannelEvent | undefined): ChannelMetadata;
64
+ export declare function ensureChannelDir(name: string, project?: string): Promise<string>;
65
+ export declare function readLastSeq(name: string, project?: string): Promise<number>;
13
66
  export interface AppendablePartial {
14
67
  kind: ChannelEventKind;
15
68
  by: string;
16
69
  ts?: string;
17
70
  [extra: string]: unknown;
18
71
  }
19
- export declare function appendEvent(name: string, partial: AppendablePartial): Promise<ChannelEvent>;
72
+ export declare function appendEvent(name: string, partial: AppendablePartial, project?: string): Promise<ChannelEvent>;
73
+ export declare function readChannelEvents(name: string, project?: string): Promise<ChannelEvent[]>;
74
+ export declare function readChannelMetadata(name: string, project?: string): Promise<ChannelMetadata>;
20
75
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/commands/channel/store/events.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,gBAAgB,GACxB,QAAQ,GACR,MAAM,GACN,OAAO,GACP,SAAS,GACT,SAAS,GACT,QAAQ,GACR,WAAW,GACX,UAAU,GACV,MAAM,GACN,OAAO,GACP,SAAS,GACT,OAAO,CAAC;AAEZ,eAAO,MAAM,mBAAmB,EAAE,WAAW,CAAC,gBAAgB,CAa5D,CAAC;AAEH,wBAAgB,gBAAgB,CAC9B,CAAC,EAAE,MAAM,GAAG,SAAS,GACpB,gBAAgB,GAAG,SAAS,CAQ9B;AAED,MAAM,WAAW,YAAY;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAIpE;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAa/D;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,gBAAgB,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED,wBAAsB,WAAW,CAC/B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,YAAY,CAAC,CAkBvB"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/commands/channel/store/events.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,13 @@ import fs from "node:fs";
2
2
  import fsp from "node:fs/promises";
3
3
  import { withLock } from "./lock.js";
4
4
  import { eventsPath, channelDir, lockPath } from "./paths.js";
5
+ import { asLinkedContextEntries, asStringArray, } from "./schema.js";
5
6
  export const CHANNEL_EVENT_KINDS = new Set([
6
7
  "create",
7
8
  "join",
8
9
  "leave",
9
10
  "message",
11
+ "thread",
10
12
  "spawned",
11
13
  "killed",
12
14
  "respawned",
@@ -24,13 +26,33 @@ export function parseChannelKind(v) {
24
26
  }
25
27
  return v;
26
28
  }
27
- export async function ensureChannelDir(name) {
28
- const dir = channelDir(name);
29
+ export function isCreateEvent(ev) {
30
+ return ev.kind === "create";
31
+ }
32
+ export function isThreadEvent(ev) {
33
+ return ev.kind === "thread" && typeof ev.thread === "string";
34
+ }
35
+ export function metadataFromCreateEvent(create) {
36
+ if (!create || !isCreateEvent(create))
37
+ return { type: "chat" };
38
+ const linkedContext = asLinkedContextEntries(create.linkedContext);
39
+ const labels = asStringArray(create.labels);
40
+ return {
41
+ type: create.type === "thread" ? "thread" : "chat",
42
+ ...(typeof create.description === "string"
43
+ ? { description: create.description }
44
+ : {}),
45
+ ...(linkedContext ? { linkedContext } : {}),
46
+ ...(labels ? { labels } : {}),
47
+ };
48
+ }
49
+ export async function ensureChannelDir(name, project) {
50
+ const dir = channelDir(name, project);
29
51
  await fsp.mkdir(dir, { recursive: true, mode: 0o700 });
30
52
  return dir;
31
53
  }
32
- export async function readLastSeq(name) {
33
- const file = eventsPath(name);
54
+ export async function readLastSeq(name, project) {
55
+ const file = eventsPath(name, project);
34
56
  if (!fs.existsSync(file))
35
57
  return 0;
36
58
  const content = await fsp.readFile(file, "utf-8");
@@ -46,19 +68,41 @@ export async function readLastSeq(name) {
46
68
  return 0;
47
69
  }
48
70
  }
49
- export async function appendEvent(name, partial) {
50
- await ensureChannelDir(name);
71
+ export async function appendEvent(name, partial, project) {
72
+ await ensureChannelDir(name, project);
51
73
  // Hold the channel-level lock so concurrent supervisors / CLIs can't
52
74
  // race seq assignment. The read-then-append window is the hot spot.
53
- return withLock(lockPath(name), async () => {
54
- const lastSeq = await readLastSeq(name);
75
+ return withLock(lockPath(name, project), async () => {
76
+ const lastSeq = await readLastSeq(name, project);
55
77
  const event = {
56
78
  ...partial,
57
79
  seq: lastSeq + 1,
58
80
  ts: partial.ts ?? new Date().toISOString(),
59
81
  };
60
- await fsp.appendFile(eventsPath(name), JSON.stringify(event) + "\n", "utf-8");
82
+ await fsp.appendFile(eventsPath(name, project), JSON.stringify(event) + "\n", "utf-8");
61
83
  return event;
62
84
  });
63
85
  }
86
+ export async function readChannelEvents(name, project) {
87
+ const file = eventsPath(name, project);
88
+ if (!fs.existsSync(file))
89
+ return [];
90
+ const text = await fsp.readFile(file, "utf-8");
91
+ const events = [];
92
+ for (const line of text.split("\n")) {
93
+ if (!line.trim())
94
+ continue;
95
+ try {
96
+ events.push(JSON.parse(line));
97
+ }
98
+ catch {
99
+ continue;
100
+ }
101
+ }
102
+ return events;
103
+ }
104
+ export async function readChannelMetadata(name, project) {
105
+ const events = await readChannelEvents(name, project);
106
+ return metadataFromCreateEvent(events.find(isCreateEvent));
107
+ }
64
108
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/commands/channel/store/events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/commands/channel/store/events.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ import { type ChannelEvent, type ChannelEventKind } from "./events.js";
2
+ import type { ThreadAction } from "./schema.js";
3
+ /**
4
+ * Wake-worthy event kinds for live waits. Passive status pings stay out
5
+ * unless a caller explicitly asks for non-meaningful events.
6
+ */
7
+ export declare const MEANINGFUL_EVENT_KINDS: ReadonlySet<ChannelEventKind>;
8
+ export interface ChannelEventFilter {
9
+ /** Only events from one of these agents. */
10
+ from?: string[];
11
+ /** Only events with this kind. */
12
+ kind?: ChannelEventKind;
13
+ /** Only events with this message tag. */
14
+ tag?: string;
15
+ /**
16
+ * `to` filter:
17
+ * - "<agent>" — broadcasts pass; explicit mismatch rejects
18
+ * - "exclusive" — only events with explicit `to`
19
+ */
20
+ to?: string;
21
+ /** The current agent; filters out self-authored events. */
22
+ self?: string;
23
+ /** Include progress events. */
24
+ includeProgress?: boolean;
25
+ /** Include passive status events such as waiting/awake. */
26
+ includeNonMeaningful?: boolean;
27
+ /** Only thread events for this thread key. */
28
+ thread?: string;
29
+ /** Only thread events with this action. */
30
+ action?: ThreadAction;
31
+ }
32
+ export declare function matchesEventFilter(ev: ChannelEvent, filter: ChannelEventFilter): boolean;
33
+ //# sourceMappingURL=filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../../../src/commands/channel/store/filter.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,gBAAgB,CAWzC,CAAC;AAEzB,MAAM,WAAW,kBAAkB;IACjC,4CAA4C;IAC5C,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,kCAAkC;IAClC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,yCAAyC;IACzC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,2DAA2D;IAC3D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,2DAA2D;IAC3D,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,YAAY,EAChB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAyCT"}
@@ -0,0 +1,63 @@
1
+ import { isThreadEvent, } from "./events.js";
2
+ /**
3
+ * Wake-worthy event kinds for live waits. Passive status pings stay out
4
+ * unless a caller explicitly asks for non-meaningful events.
5
+ */
6
+ export const MEANINGFUL_EVENT_KINDS = new Set([
7
+ "create",
8
+ "join",
9
+ "leave",
10
+ "message",
11
+ "thread",
12
+ "spawned",
13
+ "killed",
14
+ "respawned",
15
+ "done",
16
+ "error",
17
+ ]);
18
+ export function matchesEventFilter(ev, filter) {
19
+ if (filter.self && ev.by === filter.self)
20
+ return false;
21
+ if (!filter.includeNonMeaningful && !MEANINGFUL_EVENT_KINDS.has(ev.kind)) {
22
+ return false;
23
+ }
24
+ if (!filter.includeProgress && ev.kind === "progress")
25
+ return false;
26
+ if (filter.kind && ev.kind !== filter.kind)
27
+ return false;
28
+ if (filter.thread !== undefined) {
29
+ if (!isThreadEvent(ev))
30
+ return false;
31
+ if (ev.thread !== filter.thread)
32
+ return false;
33
+ }
34
+ if (filter.action !== undefined) {
35
+ if (!isThreadEvent(ev))
36
+ return false;
37
+ if (ev.action !== filter.action)
38
+ return false;
39
+ }
40
+ if (filter.from && filter.from.length > 0) {
41
+ if (!filter.from.includes(ev.by))
42
+ return false;
43
+ }
44
+ if (filter.tag !== undefined && ev.tag !== filter.tag) {
45
+ return false;
46
+ }
47
+ if (filter.to) {
48
+ const evTo = ev.to;
49
+ if (filter.to === "exclusive") {
50
+ if (!evTo)
51
+ return false;
52
+ }
53
+ else {
54
+ if (!evTo)
55
+ return true;
56
+ if (Array.isArray(evTo))
57
+ return evTo.includes(filter.to);
58
+ return evTo === filter.to;
59
+ }
60
+ }
61
+ return true;
62
+ }
63
+ //# sourceMappingURL=filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../../src/commands/channel/store/filter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,GAGd,MAAM,aAAa,CAAC;AAGrB;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAkC,IAAI,GAAG,CAAC;IAC3E,QAAQ;IACR,MAAM;IACN,OAAO;IACP,SAAS;IACT,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,WAAW;IACX,MAAM;IACN,OAAO;CACc,CAAC,CAAC;AA2BzB,MAAM,UAAU,kBAAkB,CAChC,EAAgB,EAChB,MAA0B;IAE1B,IAAI,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAEvD,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACzE,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU;QAAE,OAAO,KAAK,CAAC;IAEpE,IAAI,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI;QAAE,OAAO,KAAK,CAAC;IAEzD,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;QACrC,IAAI,EAAE,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;IAChD,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;QACrC,IAAI,EAAE,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;IAChD,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;YAAE,OAAO,KAAK,CAAC;IACjD,CAAC;IAED,IAAI,MAAM,CAAC,GAAG,KAAK,SAAS,IAAK,EAAuB,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;QAC5E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;QACd,MAAM,IAAI,GAAI,EAAiC,CAAC,EAAE,CAAC;QACnD,IAAI,MAAM,CAAC,EAAE,KAAK,WAAW,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YACvB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzD,OAAO,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { type ChannelRef, type ChannelScope } from "./schema.js";
1
2
  /** Top-level Trellis channels directory. */
2
3
  export declare function channelRoot(): string;
3
4
  /**
@@ -46,6 +47,12 @@ export declare function migrateLegacyChannels(): void;
46
47
  export declare function ensureBucketMarker(project: string): void;
47
48
  /** Enumerate all project buckets currently on disk (excluding legacy). */
48
49
  export declare function listProjects(): string[];
50
+ export interface ResolveChannelOptions {
51
+ scope?: ChannelScope;
52
+ cwd?: string;
53
+ }
54
+ export declare function resolveChannelProjectForCreate(name: string, opts?: ResolveChannelOptions): ChannelRef;
55
+ export declare function resolveExistingChannelRef(name: string, opts?: ResolveChannelOptions): ChannelRef;
49
56
  /**
50
57
  * Select the project bucket for an existing channel in this CLI process.
51
58
  * Current cwd wins. If it is not there, fall back to a unique match across
@@ -1 +1 @@
1
- {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../../../src/commands/channel/store/paths.ts"],"names":[],"mappings":"AAIA,4CAA4C;AAC5C,wBAAgB,WAAW,IAAI,MAAM,CAEpC;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAY9C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAI1C;AAED,0DAA0D;AAC1D,wBAAgB,UAAU,CAAC,OAAO,GAAE,MAA4B,GAAG,MAAM,CAExE;AAMD;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CA8C5C;AAED,qEAAqE;AACrE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAOxD;AAED,0EAA0E;AAC1E,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAsBvC;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA2BjE"}
1
+ {"version":3,"file":"paths.d.ts","sourceRoot":"","sources":["../../../../src/commands/channel/store/paths.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,YAAY,EAClB,MAAM,aAAa,CAAC;AAErB,4CAA4C;AAC5C,wBAAgB,WAAW,IAAI,MAAM,CAIpC;AAED;;;;;;;;GAQG;AACH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAY9C;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAI1C;AAED,0DAA0D;AAC1D,wBAAgB,UAAU,CAAC,OAAO,GAAE,MAA4B,GAAG,MAAM,CAExE;AAMD;;;;GAIG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,MAA4B,GACpC,MAAM,CAER;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CA8C5C;AAED,qEAAqE;AACrE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAOxD;AAED,0EAA0E;AAC1E,wBAAgB,YAAY,IAAI,MAAM,EAAE,CAuBvC;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,qBAA0B,GAC/B,UAAU,CAcZ;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,qBAA0B,GAC/B,UAAU,CAsEZ;AAED;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEjE"}
@@ -1,8 +1,12 @@
1
1
  import fs from "node:fs";
2
2
  import os from "node:os";
3
3
  import path from "node:path";
4
+ import { GLOBAL_PROJECT_KEY, } from "./schema.js";
4
5
  /** Top-level Trellis channels directory. */
5
6
  export function channelRoot() {
7
+ const env = process.env.TRELLIS_CHANNEL_ROOT;
8
+ if (env && env.length > 0)
9
+ return path.resolve(env);
6
10
  return path.join(os.homedir(), ".trellis", "channels");
7
11
  }
8
12
  /**
@@ -152,36 +156,91 @@ export function listProjects() {
152
156
  continue;
153
157
  }
154
158
  // A directory is a project bucket if it has the marker OR is
155
- // _legacy / _default (both reserved bucket names).
159
+ // _legacy / _default / _global (reserved bucket names).
156
160
  if (fs.existsSync(path.join(dir, BUCKET_MARKER)) ||
157
161
  entry === "_legacy" ||
158
- entry === "_default") {
162
+ entry === "_default" ||
163
+ entry === GLOBAL_PROJECT_KEY) {
159
164
  out.push(entry);
160
165
  }
161
166
  }
162
167
  return out;
163
168
  }
164
- /**
165
- * Select the project bucket for an existing channel in this CLI process.
166
- * Current cwd wins. If it is not there, fall back to a unique match across
167
- * all buckets so users can run `channel send <name>` from a different cwd
168
- * without silently writing a second event stream.
169
- */
170
- export function selectExistingChannelProject(name) {
169
+ export function resolveChannelProjectForCreate(name, opts = {}) {
170
+ const scope = opts.scope ?? "project";
171
+ const project = scope === "global"
172
+ ? GLOBAL_PROJECT_KEY
173
+ : opts.cwd
174
+ ? projectKey(opts.cwd)
175
+ : currentProjectKey();
176
+ return {
177
+ name,
178
+ scope,
179
+ project,
180
+ dir: channelDir(name, project),
181
+ };
182
+ }
183
+ export function resolveExistingChannelRef(name, opts = {}) {
171
184
  migrateLegacyChannels();
185
+ if (opts.scope) {
186
+ const project = opts.scope === "global"
187
+ ? GLOBAL_PROJECT_KEY
188
+ : opts.cwd
189
+ ? projectKey(opts.cwd)
190
+ : currentProjectKey();
191
+ if (!fs.existsSync(eventsPath(name, project))) {
192
+ throw new Error(`Channel '${name}' not found in ${opts.scope} scope (${project})`);
193
+ }
194
+ process.env.TRELLIS_CHANNEL_PROJECT = project;
195
+ return { name, scope: opts.scope, project, dir: channelDir(name, project) };
196
+ }
172
197
  const current = currentProjectKey();
198
+ const projectMatches = listProjects()
199
+ .filter((project) => project !== GLOBAL_PROJECT_KEY)
200
+ .filter((project) => fs.existsSync(eventsPath(name, project)));
201
+ const globalExists = fs.existsSync(eventsPath(name, GLOBAL_PROJECT_KEY));
202
+ if (globalExists && projectMatches.length > 0) {
203
+ throw new Error(`Channel '${name}' exists in global and project scopes. Use --scope global or --scope project.`);
204
+ }
205
+ if (globalExists) {
206
+ process.env.TRELLIS_CHANNEL_PROJECT = GLOBAL_PROJECT_KEY;
207
+ return {
208
+ name,
209
+ scope: "global",
210
+ project: GLOBAL_PROJECT_KEY,
211
+ dir: channelDir(name, GLOBAL_PROJECT_KEY),
212
+ };
213
+ }
173
214
  if (fs.existsSync(eventsPath(name, current))) {
174
215
  process.env.TRELLIS_CHANNEL_PROJECT = current;
175
- return current;
216
+ return {
217
+ name,
218
+ scope: "project",
219
+ project: current,
220
+ dir: channelDir(name, current),
221
+ };
176
222
  }
177
- const matches = listProjects().filter((project) => fs.existsSync(eventsPath(name, project)));
178
- if (matches.length === 1) {
179
- process.env.TRELLIS_CHANNEL_PROJECT = matches[0];
180
- return matches[0];
223
+ if (projectMatches.length === 1) {
224
+ process.env.TRELLIS_CHANNEL_PROJECT = projectMatches[0];
225
+ return {
226
+ name,
227
+ scope: "project",
228
+ project: projectMatches[0],
229
+ dir: channelDir(name, projectMatches[0]),
230
+ };
181
231
  }
182
- if (matches.length > 1) {
183
- throw new Error(`Channel '${name}' exists in multiple project buckets: ${matches.join(", ")}. Run from the owning project cwd or set TRELLIS_CHANNEL_PROJECT.`);
232
+ if (projectMatches.length > 1) {
233
+ throw new Error(`Channel '${name}' exists in multiple project buckets: ${projectMatches.join(", ")}. Run from the owning project cwd or use --scope.`);
184
234
  }
185
- throw new Error(`Channel '${name}' not found in current project bucket (${current}) or any known project bucket`);
235
+ throw new Error(`Channel '${name}' not found in current project bucket (${current}) or any known scope`);
236
+ }
237
+ /**
238
+ * Select the project bucket for an existing channel in this CLI process.
239
+ * Current cwd wins. If it is not there, fall back to a unique match across
240
+ * all buckets so users can run `channel send <name>` from a different cwd
241
+ * without silently writing a second event stream.
242
+ */
243
+ export function selectExistingChannelProject(name) {
244
+ return resolveExistingChannelRef(name).project;
186
245
  }
187
246
  //# sourceMappingURL=paths.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../../src/commands/channel/store/paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../../src/commands/channel/store/paths.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EACL,kBAAkB,GAGnB,MAAM,aAAa,CAAC;AAErB,4CAA4C;AAC5C,MAAM,UAAU,WAAW;IACzB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;IAC7C,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACpD,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC9B,mEAAmE;IACnE,oEAAoE;IACpE,4DAA4D;IAC5D,EAAE;IACF,kEAAkE;IAClE,mEAAmE;IACnE,mEAAmE;IACnE,iEAAiE;IACjE,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAC5C,OAAO,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC;IAChD,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IACtC,OAAO,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;AACnC,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,UAAU,CAAC,UAAkB,iBAAiB,EAAE;IAC9D,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED;wEACwE;AACxE,MAAM,aAAa,GAAG,SAAS,CAAC;AAEhC;;;;GAIG;AACH,MAAM,UAAU,UAAU,CACxB,IAAY,EACZ,UAAkB,iBAAiB,EAAE;IAErC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,IAAY,EACZ,UAAkB,iBAAiB,EAAE;IAErC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,cAAc,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,QAAQ,CACtB,IAAY,EACZ,UAAkB,iBAAiB,EAAE;IAErC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,IAAY,EACZ,MAAc,EACd,MAAc,EACd,UAAkB,iBAAiB,EAAE;IAErC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,IAAY,EACZ,MAAc,EACd,UAAkB,iBAAiB,EAAE;IAErC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,MAAM,YAAY,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,qBAAqB;IACnC,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC;IAC3B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO;IACjC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC1C,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;IACT,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,UAAU;YAAE,SAAS;QAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,IAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YAAE,SAAS;QAClC,gCAAgC;QAChC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;YAAE,SAAS;QAC3D,yDAAyD;QACzD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAAE,SAAS;QAC7D,4CAA4C;QAC5C,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACxC,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAC3B,KAAK,EAAE,CAAC;QACV,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,oCAAoC,KAAK,iBACvC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GACvC,IAAI,CACL,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1C,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,2BAA2B,KAAK,yBAAyB,MAAM,IAAI,CACpE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,kBAAkB,CAAC,OAAe;IAChD,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAChC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,YAAY;IAC1B,MAAM,IAAI,GAAG,WAAW,EAAE,CAAC;IAC3B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC;YACH,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE;gBAAE,SAAS;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,6DAA6D;QAC7D,wDAAwD;QACxD,IACE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;YAC5C,KAAK,KAAK,SAAS;YACnB,KAAK,KAAK,UAAU;YACpB,KAAK,KAAK,kBAAkB,EAC5B,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAOD,MAAM,UAAU,8BAA8B,CAC5C,IAAY,EACZ,OAA8B,EAAE;IAEhC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,SAAS,CAAC;IACtC,MAAM,OAAO,GACX,KAAK,KAAK,QAAQ;QAChB,CAAC,CAAC,kBAAkB;QACpB,CAAC,CAAC,IAAI,CAAC,GAAG;YACR,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;YACtB,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC5B,OAAO;QACL,IAAI;QACJ,KAAK;QACL,OAAO;QACP,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,IAAY,EACZ,OAA8B,EAAE;IAEhC,qBAAqB,EAAE,CAAC;IAExB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GACX,IAAI,CAAC,KAAK,KAAK,QAAQ;YACrB,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,IAAI,CAAC,GAAG;gBACR,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;gBACtB,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAC5B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;YAC9C,MAAM,IAAI,KAAK,CACb,YAAY,IAAI,kBAAkB,IAAI,CAAC,KAAK,WAAW,OAAO,GAAG,CAClE,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,OAAO,CAAC;QAC9C,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;IAC9E,CAAC;IAED,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,cAAc,GAAG,YAAY,EAAE;SAClC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,kBAAkB,CAAC;SACnD,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACjE,MAAM,YAAY,GAAG,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAEzE,IAAI,YAAY,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CACb,YAAY,IAAI,+EAA+E,CAChG,CAAC;IACJ,CAAC;IAED,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,kBAAkB,CAAC;QACzD,OAAO;YACL,IAAI;YACJ,KAAK,EAAE,QAAQ;YACf,OAAO,EAAE,kBAAkB;YAC3B,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,kBAAkB,CAAC;SAC1C,CAAC;IACJ,CAAC;IAED,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,OAAO,CAAC;QAC9C,OAAO;YACL,IAAI;YACJ,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,OAAO;YAChB,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC;SAC/B,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,uBAAuB,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;QACxD,OAAO;YACL,IAAI;YACJ,KAAK,EAAE,SAAS;YAChB,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;YAC1B,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC;SACzC,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,YAAY,IAAI,yCAAyC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,mDAAmD,CACtI,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,KAAK,CACb,YAAY,IAAI,0CAA0C,OAAO,sBAAsB,CACxF,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,4BAA4B,CAAC,IAAY;IACvD,OAAO,yBAAyB,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;AACjD,CAAC"}
@@ -0,0 +1,36 @@
1
+ export declare const GLOBAL_PROJECT_KEY = "_global";
2
+ export type ChannelScope = "project" | "global";
3
+ export type ChannelType = "chat" | "thread";
4
+ export type ThreadAction = "opened" | "comment" | "status" | "labels" | "assignees" | "summary" | "processed";
5
+ export declare const CHANNEL_TYPES: ReadonlySet<ChannelType>;
6
+ export declare const THREAD_ACTIONS: ReadonlySet<ThreadAction>;
7
+ export interface FileLinkedContext {
8
+ type: "file";
9
+ path: string;
10
+ }
11
+ export interface RawLinkedContext {
12
+ type: "raw";
13
+ text: string;
14
+ }
15
+ export type LinkedContextEntry = FileLinkedContext | RawLinkedContext;
16
+ export interface ChannelRef {
17
+ name: string;
18
+ scope: ChannelScope;
19
+ project: string;
20
+ dir: string;
21
+ }
22
+ export interface ChannelMetadata {
23
+ type: ChannelType;
24
+ description?: string;
25
+ linkedContext?: LinkedContextEntry[];
26
+ labels?: string[];
27
+ }
28
+ export declare function parseChannelScope(v: string | undefined): ChannelScope | undefined;
29
+ export declare function parseChannelType(v: string | undefined): ChannelType;
30
+ export declare function parseThreadAction(v: string): ThreadAction;
31
+ export declare function normalizeThreadKey(v: string): string;
32
+ export declare function parseLinkedContext(files: string[] | undefined, raw: string[] | undefined): LinkedContextEntry[] | undefined;
33
+ export declare function parseCsv(value: string | undefined): string[] | undefined;
34
+ export declare function asStringArray(value: unknown): string[] | undefined;
35
+ export declare function asLinkedContextEntries(value: unknown): LinkedContextEntry[] | undefined;
36
+ //# sourceMappingURL=schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../../src/commands/channel/store/schema.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,YAAY,CAAC;AAE5C,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC;AAChD,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE5C,MAAM,MAAM,YAAY,GACpB,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,SAAS,GACT,WAAW,CAAC;AAEhB,eAAO,MAAM,aAAa,EAAE,WAAW,CAAC,WAAW,CAGjD,CAAC;AAEH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,YAAY,CAQnD,CAAC;AAEH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,KAAK,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,kBAAkB,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;AAEtE,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,WAAW,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,kBAAkB,EAAE,CAAC;IACrC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,MAAM,GAAG,SAAS,GACpB,YAAY,GAAG,SAAS,CAM1B;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,WAAW,CAMnE;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,YAAY,CAOzD;AAED,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CASpD;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS,EAC3B,GAAG,EAAE,MAAM,EAAE,GAAG,SAAS,GACxB,kBAAkB,EAAE,GAAG,SAAS,CAgBlC;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAMxE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,EAAE,GAAG,SAAS,CAGlE;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,GACb,kBAAkB,EAAE,GAAG,SAAS,CAUlC"}