@codyswann/lisa 2.235.0 → 2.236.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/dist/cli/ui-automations-adapters.d.ts +50 -0
  2. package/dist/cli/ui-automations-adapters.d.ts.map +1 -0
  3. package/dist/cli/ui-automations-adapters.js +162 -0
  4. package/dist/cli/ui-automations-adapters.js.map +1 -0
  5. package/dist/cli/ui-automations.d.ts +89 -0
  6. package/dist/cli/ui-automations.d.ts.map +1 -0
  7. package/dist/cli/ui-automations.js +148 -0
  8. package/dist/cli/ui-automations.js.map +1 -0
  9. package/dist/cli/ui-cmd.d.ts +5 -0
  10. package/dist/cli/ui-cmd.d.ts.map +1 -1
  11. package/dist/cli/ui-cmd.js +17 -0
  12. package/dist/cli/ui-cmd.js.map +1 -1
  13. package/dist/cli/ui-deploy-pipeline-model.d.ts +70 -0
  14. package/dist/cli/ui-deploy-pipeline-model.d.ts.map +1 -0
  15. package/dist/cli/ui-deploy-pipeline-model.js +127 -0
  16. package/dist/cli/ui-deploy-pipeline-model.js.map +1 -0
  17. package/dist/cli/ui-deploy-pipeline.d.ts +25 -0
  18. package/dist/cli/ui-deploy-pipeline.d.ts.map +1 -0
  19. package/dist/cli/ui-deploy-pipeline.js +192 -0
  20. package/dist/cli/ui-deploy-pipeline.js.map +1 -0
  21. package/dist/cli/ui-detected-stacks.d.ts +20 -0
  22. package/dist/cli/ui-detected-stacks.d.ts.map +1 -0
  23. package/dist/cli/ui-detected-stacks.js +28 -0
  24. package/dist/cli/ui-detected-stacks.js.map +1 -0
  25. package/dist/cli/ui-enabled-plugins.d.ts +52 -0
  26. package/dist/cli/ui-enabled-plugins.d.ts.map +1 -0
  27. package/dist/cli/ui-enabled-plugins.js +253 -0
  28. package/dist/cli/ui-enabled-plugins.js.map +1 -0
  29. package/dist/cli/ui-github-repo-expected.d.ts +36 -0
  30. package/dist/cli/ui-github-repo-expected.d.ts.map +1 -0
  31. package/dist/cli/ui-github-repo-expected.js +118 -0
  32. package/dist/cli/ui-github-repo-expected.js.map +1 -0
  33. package/dist/cli/ui-github-repo-gh.d.ts +36 -0
  34. package/dist/cli/ui-github-repo-gh.d.ts.map +1 -0
  35. package/dist/cli/ui-github-repo-gh.js +112 -0
  36. package/dist/cli/ui-github-repo-gh.js.map +1 -0
  37. package/dist/cli/ui-github-repo-map.d.ts +25 -0
  38. package/dist/cli/ui-github-repo-map.d.ts.map +1 -0
  39. package/dist/cli/ui-github-repo-map.js +150 -0
  40. package/dist/cli/ui-github-repo-map.js.map +1 -0
  41. package/dist/cli/ui-github-repo.d.ts +51 -0
  42. package/dist/cli/ui-github-repo.d.ts.map +1 -0
  43. package/dist/cli/ui-github-repo.js +117 -0
  44. package/dist/cli/ui-github-repo.js.map +1 -0
  45. package/dist/cli/ui-observability-checks.d.ts +23 -0
  46. package/dist/cli/ui-observability-checks.d.ts.map +1 -0
  47. package/dist/cli/ui-observability-checks.js +156 -0
  48. package/dist/cli/ui-observability-checks.js.map +1 -0
  49. package/dist/cli/ui-observability-providers.d.ts +69 -0
  50. package/dist/cli/ui-observability-providers.d.ts.map +1 -0
  51. package/dist/cli/ui-observability-providers.js +99 -0
  52. package/dist/cli/ui-observability-providers.js.map +1 -0
  53. package/package.json +1 -1
  54. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  55. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  56. package/plugins/lisa-agy/plugin.json +1 -1
  57. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  58. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  59. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  60. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  61. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  62. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  63. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  64. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  65. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  66. package/plugins/lisa-expo-agy/plugin.json +1 -1
  67. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  68. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  69. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  70. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  71. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  72. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  73. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  74. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  75. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  76. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  77. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  78. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  79. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  80. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  81. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  82. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  83. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  84. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  85. package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
  86. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  87. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  88. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  89. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  90. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  91. package/plugins/lisa-rails-agy/plugin.json +1 -1
  92. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  93. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  94. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  95. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  96. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  97. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  98. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  99. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  100. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  101. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  102. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  103. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  104. package/ui/README.md +5 -3
  105. package/ui/index.html +1097 -432
@@ -0,0 +1,50 @@
1
+ import type { ClaudeAutomationLister, ClaudeScheduleListingReader, CodexAutomationLister, CodexDirReadableCheck, HarnessAutomationObservation, ProjectIdentityResolver } from "./ui-automations.js";
2
+ /**
3
+ * Default Codex automations directory (`$CODEX_HOME/automations` or `~/.codex/automations`).
4
+ * @returns Absolute directory path
5
+ */
6
+ export declare function resolveDefaultCodexAutomationsDir(): string;
7
+ /** Raw adapter fields normalized by {@link toObservation}. */
8
+ export interface AdapterObservationInput {
9
+ readonly automationId: string;
10
+ readonly observedCadence?: string;
11
+ readonly status?: string;
12
+ readonly lastRunAt?: string | null;
13
+ }
14
+ /**
15
+ * Normalize adapter observations into the probe's observation shape.
16
+ * @param entry - Adapter observation fields
17
+ * @returns Probe observation without invented cadence/status
18
+ */
19
+ export declare function toObservation(entry: AdapterObservationInput): HarnessAutomationObservation;
20
+ /**
21
+ * Default identity resolver: config + origin remote → `lisa-auto-<project>-`.
22
+ * @param cwd - Project root
23
+ * @param signal - Abort signal
24
+ * @returns Automation project identity
25
+ */
26
+ export declare const defaultResolveIdentity: ProjectIdentityResolver;
27
+ /**
28
+ * Default Codex directory readability check.
29
+ * @param automationsDir - Directory to probe
30
+ * @returns Whether the directory is readable
31
+ */
32
+ export declare const defaultCodexDirReadable: CodexDirReadableCheck;
33
+ /**
34
+ * Default Claude `/schedule` reader — Node cannot invoke the interactive
35
+ * `/schedule` surface, so the default is honest unavailability.
36
+ * @returns Always null
37
+ */
38
+ export declare const defaultReadClaudeScheduleListing: ClaudeScheduleListingReader;
39
+ /**
40
+ * Default Codex lister via the shared automation-status adapter.
41
+ * @param input - Prefix and optional directory override
42
+ * @returns Observed Codex automations
43
+ */
44
+ export declare const defaultListCodexAutomations: CodexAutomationLister;
45
+ /**
46
+ * Load the default Claude lister from the shared adapter.
47
+ * @returns Claude automation lister
48
+ */
49
+ export declare function loadDefaultListClaudeAutomations(): Promise<ClaudeAutomationLister>;
50
+ //# sourceMappingURL=ui-automations-adapters.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-automations-adapters.d.ts","sourceRoot":"","sources":["../../src/cli/ui-automations-adapters.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAEV,sBAAsB,EACtB,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,EACrB,4BAA4B,EAC5B,uBAAuB,EACxB,MAAM,qBAAqB,CAAC;AAqC7B;;;GAGG;AACH,wBAAgB,iCAAiC,IAAI,MAAM,CAO1D;AAqDD,8DAA8D;AAC9D,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,KAAK,EAAE,uBAAuB,GAC7B,4BAA4B,CAS9B;AAED;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,EAAE,uBAepC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,EAAE,qBAQnC,CAAC;AAEJ;;;;GAIG;AACH,eAAO,MAAM,gCAAgC,EAAE,2BAC7B,CAAC;AAEnB;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,EAAE,qBAOvC,CAAC;AAEJ;;;GAGG;AACH,wBAAsB,gCAAgC,IAAI,OAAO,CAAC,sBAAsB,CAAC,CAQxF"}
@@ -0,0 +1,162 @@
1
+ /**
2
+ * Default harness-scheduler seams for the Automations live-status probe.
3
+ *
4
+ * Loads the shared Codex/Claude automation-status adapters dynamically so the
5
+ * TypeScript build root stays under `src/` while reusing the plugin scripts.
6
+ * @module cli/ui-automations-adapters
7
+ */
8
+ import { existsSync, constants as fsConstants } from "node:fs";
9
+ import { access } from "node:fs/promises";
10
+ import { execFile } from "node:child_process";
11
+ import * as os from "node:os";
12
+ import * as path from "node:path";
13
+ import { fileURLToPath, pathToFileURL } from "node:url";
14
+ import { promisify } from "node:util";
15
+ import { isJsonObject } from "../sync/json-path.js";
16
+ import { deepMerge, readJsonOrNull } from "../utils/index.js";
17
+ const execFileAsync = promisify(execFile);
18
+ /**
19
+ * Walk parents until a package-root-relative file exists.
20
+ * @param startDir - Directory to start searching from
21
+ * @param relativePath - Path under the package root
22
+ * @returns Absolute path
23
+ */
24
+ function findPackageFileWalk(startDir, relativePath) {
25
+ const candidate = path.join(startDir, relativePath);
26
+ if (existsSync(candidate)) {
27
+ return candidate;
28
+ }
29
+ const parent = path.dirname(startDir);
30
+ if (parent === startDir) {
31
+ throw new Error(`Unable to locate ${relativePath}`);
32
+ }
33
+ return findPackageFileWalk(parent, relativePath);
34
+ }
35
+ /**
36
+ * Resolve a script under `plugins/src/base/scripts/` from src or dist.
37
+ * @param scriptName - File name inside the scripts directory
38
+ * @returns Absolute path to the script
39
+ */
40
+ function resolveAutomationStatusScript(scriptName) {
41
+ const moduleDir = path.dirname(fileURLToPath(import.meta.url));
42
+ const relative = path.join("plugins", "src", "base", "scripts", scriptName);
43
+ const fromPackageRoot = path.join(moduleDir, "..", "..", relative);
44
+ if (existsSync(fromPackageRoot)) {
45
+ return fromPackageRoot;
46
+ }
47
+ return findPackageFileWalk(moduleDir, relative);
48
+ }
49
+ /**
50
+ * Default Codex automations directory (`$CODEX_HOME/automations` or `~/.codex/automations`).
51
+ * @returns Absolute directory path
52
+ */
53
+ export function resolveDefaultCodexAutomationsDir() {
54
+ // eslint-disable-next-line no-restricted-syntax -- harness path follows Codex's CODEX_HOME contract
55
+ const codexHome = process.env.CODEX_HOME;
56
+ return path.join(codexHome ?? path.join(os.homedir(), ".codex"), "automations");
57
+ }
58
+ /**
59
+ * Dynamically load a shared automation-status adapter module.
60
+ * @param scriptName - Adapter filename
61
+ * @returns Imported module
62
+ */
63
+ async function loadAdapterModule(scriptName) {
64
+ const scriptPath = resolveAutomationStatusScript(scriptName);
65
+ return import(pathToFileURL(scriptPath).href);
66
+ }
67
+ /**
68
+ * Read merged Lisa config for identity resolution.
69
+ * @param cwd - Project root
70
+ * @returns Merged config object
71
+ */
72
+ async function readMergedConfig(cwd) {
73
+ const committed = await readJsonOrNull(path.join(cwd, ".lisa.config.json"));
74
+ const local = await readJsonOrNull(path.join(cwd, ".lisa.config.local.json"));
75
+ const committedObject = isJsonObject(committed) ? committed : {};
76
+ const localObject = isJsonObject(local) ? local : {};
77
+ return deepMerge(committedObject, localObject);
78
+ }
79
+ /**
80
+ * Read the origin remote URL via git without a shell.
81
+ * @param cwd - Project root
82
+ * @param signal - Abort signal
83
+ * @returns Origin URL, or undefined when unavailable
84
+ */
85
+ async function readOriginRemote(cwd, signal) {
86
+ try {
87
+ const { stdout } = await execFileAsync(
88
+ // eslint-disable-next-line sonarjs/no-os-command-from-path -- fixed user-installed git executable
89
+ "git", ["-C", cwd, "remote", "get-url", "origin"], { cwd, signal, timeout: 2_500, encoding: "utf8" });
90
+ const remote = stdout.trim();
91
+ return remote.length > 0 ? remote : undefined;
92
+ }
93
+ catch {
94
+ return undefined;
95
+ }
96
+ }
97
+ /**
98
+ * Normalize adapter observations into the probe's observation shape.
99
+ * @param entry - Adapter observation fields
100
+ * @returns Probe observation without invented cadence/status
101
+ */
102
+ export function toObservation(entry) {
103
+ return {
104
+ automationId: entry.automationId,
105
+ lastRunAt: entry.lastRunAt ?? null,
106
+ ...(typeof entry.observedCadence === "string"
107
+ ? { observedCadence: entry.observedCadence }
108
+ : {}),
109
+ ...(typeof entry.status === "string" ? { status: entry.status } : {}),
110
+ };
111
+ }
112
+ /**
113
+ * Default identity resolver: config + origin remote → `lisa-auto-<project>-`.
114
+ * @param cwd - Project root
115
+ * @param signal - Abort signal
116
+ * @returns Automation project identity
117
+ */
118
+ export const defaultResolveIdentity = async (cwd, signal) => {
119
+ const { resolveAutomationProjectIdentity } = await loadAdapterModule("automation-status-expected-fleet.mjs");
120
+ const config = await readMergedConfig(cwd);
121
+ const gitRemoteUrl = await readOriginRemote(cwd, signal);
122
+ return resolveAutomationProjectIdentity(gitRemoteUrl === undefined ? { config } : { config, gitRemoteUrl });
123
+ };
124
+ /**
125
+ * Default Codex directory readability check.
126
+ * @param automationsDir - Directory to probe
127
+ * @returns Whether the directory is readable
128
+ */
129
+ export const defaultCodexDirReadable = async (automationsDir) => {
130
+ try {
131
+ await access(automationsDir, fsConstants.R_OK);
132
+ return true;
133
+ }
134
+ catch {
135
+ return false;
136
+ }
137
+ };
138
+ /**
139
+ * Default Claude `/schedule` reader — Node cannot invoke the interactive
140
+ * `/schedule` surface, so the default is honest unavailability.
141
+ * @returns Always null
142
+ */
143
+ export const defaultReadClaudeScheduleListing = async () => null;
144
+ /**
145
+ * Default Codex lister via the shared automation-status adapter.
146
+ * @param input - Prefix and optional directory override
147
+ * @returns Observed Codex automations
148
+ */
149
+ export const defaultListCodexAutomations = async (input) => {
150
+ const { listCodexAutomations } = await loadAdapterModule("automation-status-codex-adapter.mjs");
151
+ const observed = await listCodexAutomations(input);
152
+ return observed.map(toObservation);
153
+ };
154
+ /**
155
+ * Load the default Claude lister from the shared adapter.
156
+ * @returns Claude automation lister
157
+ */
158
+ export async function loadDefaultListClaudeAutomations() {
159
+ const { listClaudeAutomations } = await loadAdapterModule("automation-status-claude-adapter.mjs");
160
+ return ({ scheduleListing, automationPrefix }) => listClaudeAutomations({ scheduleListing, automationPrefix }).map(toObservation);
161
+ }
162
+ //# sourceMappingURL=ui-automations-adapters.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-automations-adapters.js","sourceRoot":"","sources":["../../src/cli/ui-automations-adapters.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Live-status probe for the console Automations section.
3
+ *
4
+ * Reads the harness scheduler (Codex `~/.codex/automations/` or Claude
5
+ * `/schedule`) and emits only `lisa-auto-<project>-` matches with their real
6
+ * cadence. READ-ONLY — never fabricates demo automations; absent or unreadable
7
+ * schedulers resolve to unknown with a reason.
8
+ * @module cli/ui-automations
9
+ */
10
+ import type { JsonValue } from "../sync/json-path.js";
11
+ import type { ProbeResult, StatusProbe } from "./ui-status.js";
12
+ /** Stable probe id consumed by `/api/status` and the Automations section. */
13
+ export declare const AUTOMATIONS_PROBE_ID = "automations";
14
+ /** One observed automation from a harness scheduler adapter. */
15
+ export interface HarnessAutomationObservation {
16
+ readonly automationId: string;
17
+ readonly observedCadence?: string;
18
+ readonly status?: string;
19
+ readonly lastRunAt?: string | null;
20
+ }
21
+ /** One automation entry shipped to the console (never invented). */
22
+ export interface HarnessAutomationEntry {
23
+ readonly [key: string]: JsonValue;
24
+ readonly id: string;
25
+ readonly cadence: string | null;
26
+ readonly runtime: "codex" | "claude";
27
+ readonly status: string | null;
28
+ readonly lastRunAt: string | null;
29
+ }
30
+ /** Structured value emitted when the scheduler is readable. */
31
+ export type AutomationsProbeValue = {
32
+ readonly [key: string]: JsonValue;
33
+ readonly prefix: string;
34
+ readonly runtime: "codex" | "claude";
35
+ /** Prefix-matching automations; typed as JsonValue[] for the probe transport. */
36
+ readonly automations: JsonValue[];
37
+ };
38
+ /** Resolved Lisa automation naming identity for the current project. */
39
+ export interface AutomationProjectIdentity {
40
+ readonly owner: string;
41
+ readonly repo: string;
42
+ readonly project: string;
43
+ readonly automationPrefix: string;
44
+ }
45
+ /** Resolve `lisa-auto-<project>-` for the served project root. */
46
+ export type ProjectIdentityResolver = (cwd: string, signal: AbortSignal) => Promise<AutomationProjectIdentity>;
47
+ /** List Codex automations matching a prefix (adapter seam). */
48
+ export type CodexAutomationLister = (input: {
49
+ readonly automationsDir?: string;
50
+ readonly automationPrefix: string;
51
+ }) => Promise<readonly HarnessAutomationObservation[]>;
52
+ /** List Claude `/schedule` automations matching a prefix (adapter seam). */
53
+ export type ClaudeAutomationLister = (input: {
54
+ readonly scheduleListing: unknown;
55
+ readonly automationPrefix: string;
56
+ }) => readonly HarnessAutomationObservation[];
57
+ /** Read the Claude `/schedule` listing when the runtime can expose it. */
58
+ export type ClaudeScheduleListingReader = (signal: AbortSignal) => Promise<unknown | null>;
59
+ /** Whether the Codex automations directory exists and is readable. */
60
+ export type CodexDirReadableCheck = (automationsDir: string, signal: AbortSignal) => Promise<boolean>;
61
+ /** Injectable collaborators for focused tests and default runtime wiring. */
62
+ export interface AutomationsProbeDependencies {
63
+ readonly cwd: string;
64
+ readonly automationsDir?: string;
65
+ readonly resolveIdentity?: ProjectIdentityResolver;
66
+ readonly listCodexAutomations?: CodexAutomationLister;
67
+ readonly listClaudeAutomations?: ClaudeAutomationLister;
68
+ readonly readClaudeScheduleListing?: ClaudeScheduleListingReader;
69
+ readonly codexAutomationsDirReadable?: CodexDirReadableCheck;
70
+ }
71
+ /** Inputs for {@link mapHarnessAutomations}. */
72
+ export interface MapHarnessAutomationsInput {
73
+ readonly prefix: string;
74
+ readonly runtime: "codex" | "claude";
75
+ readonly observations: readonly HarnessAutomationObservation[];
76
+ }
77
+ /**
78
+ * Map scheduler observations onto the live-status tri-state contract.
79
+ * @param input - Prefix, runtime label, and raw observations
80
+ * @returns Probe value with only prefix-matching automations
81
+ */
82
+ export declare function mapHarnessAutomations(input: MapHarnessAutomationsInput): ProbeResult<AutomationsProbeValue>;
83
+ /**
84
+ * Create the Automations live-status probe.
85
+ * @param dependencies - Project root plus injectable scheduler seams
86
+ * @returns Probe registered under {@link AUTOMATIONS_PROBE_ID}
87
+ */
88
+ export declare function createAutomationsProbe(dependencies: AutomationsProbeDependencies): StatusProbe<AutomationsProbeValue>;
89
+ //# sourceMappingURL=ui-automations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-automations.d.ts","sourceRoot":"","sources":["../../src/cli/ui-automations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,148 @@
1
+ import { defaultCodexDirReadable, defaultListCodexAutomations, defaultReadClaudeScheduleListing, defaultResolveIdentity, loadDefaultListClaudeAutomations, resolveDefaultCodexAutomationsDir, } from "./ui-automations-adapters.js";
2
+ /** Stable probe id consumed by `/api/status` and the Automations section. */
3
+ export const AUTOMATIONS_PROBE_ID = "automations";
4
+ const PROBE_TIMEOUT_MS = 8_000;
5
+ const IDENTITY_UNAVAILABLE = "identity-unavailable";
6
+ const SCHEDULER_UNAVAILABLE = "scheduler-unavailable";
7
+ const SCHEDULER_UNREADABLE = "scheduler-unreadable";
8
+ const SCHEDULER_UNAVAILABLE_MESSAGE = "No harness scheduler is configured (Codex automations directory absent and Claude /schedule listing unavailable)";
9
+ /**
10
+ * Map scheduler observations onto the live-status tri-state contract.
11
+ * @param input - Prefix, runtime label, and raw observations
12
+ * @returns Probe value with only prefix-matching automations
13
+ */
14
+ export function mapHarnessAutomations(input) {
15
+ const automations = input.observations
16
+ .filter(entry => entry.automationId.startsWith(input.prefix))
17
+ .map((entry) => ({
18
+ id: entry.automationId,
19
+ cadence: typeof entry.observedCadence === "string" &&
20
+ entry.observedCadence.trim().length > 0
21
+ ? entry.observedCadence
22
+ : null,
23
+ runtime: input.runtime,
24
+ status: typeof entry.status === "string" && entry.status.trim().length > 0
25
+ ? entry.status
26
+ : null,
27
+ lastRunAt: typeof entry.lastRunAt === "string" &&
28
+ entry.lastRunAt.trim().length > 0
29
+ ? entry.lastRunAt
30
+ : null,
31
+ }))
32
+ .sort((left, right) => left.id.localeCompare(right.id));
33
+ return {
34
+ state: "value",
35
+ value: {
36
+ prefix: input.prefix,
37
+ runtime: input.runtime,
38
+ automations,
39
+ },
40
+ };
41
+ }
42
+ /**
43
+ * Map thrown identity errors to unknown.
44
+ * @param error - Thrown value
45
+ * @returns Unknown identity result
46
+ */
47
+ function identityUnknown(error) {
48
+ const message = error instanceof Error && error.message.trim().length > 0
49
+ ? error.message
50
+ : "Unable to resolve repo identity for automation naming";
51
+ return { state: "unknown", reason: IDENTITY_UNAVAILABLE, message };
52
+ }
53
+ /**
54
+ * Map scheduler read failures to unknown.
55
+ * @param error - Thrown value
56
+ * @returns Unknown scheduler result
57
+ */
58
+ function schedulerUnreadable(error) {
59
+ const message = error instanceof Error && error.message.trim().length > 0
60
+ ? error.message
61
+ : "Harness scheduler could not be read";
62
+ return { state: "unknown", reason: SCHEDULER_UNREADABLE, message };
63
+ }
64
+ /**
65
+ * Create the Automations live-status probe.
66
+ * @param dependencies - Project root plus injectable scheduler seams
67
+ * @returns Probe registered under {@link AUTOMATIONS_PROBE_ID}
68
+ */
69
+ export function createAutomationsProbe(dependencies) {
70
+ const resolveIdentity = dependencies.resolveIdentity ?? defaultResolveIdentity;
71
+ const listCodex = dependencies.listCodexAutomations ?? defaultListCodexAutomations;
72
+ const readClaudeListing = dependencies.readClaudeScheduleListing ?? defaultReadClaudeScheduleListing;
73
+ const codexReadable = dependencies.codexAutomationsDirReadable ?? defaultCodexDirReadable;
74
+ const automationsDir = dependencies.automationsDir ?? resolveDefaultCodexAutomationsDir();
75
+ return {
76
+ id: AUTOMATIONS_PROBE_ID,
77
+ timeoutMs: PROBE_TIMEOUT_MS,
78
+ run: async (signal) => {
79
+ const base = {
80
+ cwd: dependencies.cwd,
81
+ signal,
82
+ resolveIdentity,
83
+ listCodex,
84
+ readClaudeListing,
85
+ codexReadable,
86
+ automationsDir,
87
+ };
88
+ return runAutomationsProbe(dependencies.listClaudeAutomations === undefined
89
+ ? base
90
+ : {
91
+ ...base,
92
+ listClaudeAutomations: dependencies.listClaudeAutomations,
93
+ });
94
+ },
95
+ };
96
+ }
97
+ /**
98
+ * Execute one automations probe cycle.
99
+ * @param input - Bound collaborators for this request
100
+ * @returns Probe result
101
+ */
102
+ async function runAutomationsProbe(input) {
103
+ const identity = await input.resolveIdentity(input.cwd, input.signal).then(value => ({ ok: true, value }), error => ({ ok: false, error }));
104
+ if (!identity.ok) {
105
+ return identityUnknown(identity.error);
106
+ }
107
+ if (await input.codexReadable(input.automationsDir, input.signal)) {
108
+ try {
109
+ return mapHarnessAutomations({
110
+ prefix: identity.value.automationPrefix,
111
+ runtime: "codex",
112
+ observations: await input.listCodex({
113
+ automationsDir: input.automationsDir,
114
+ automationPrefix: identity.value.automationPrefix,
115
+ }),
116
+ });
117
+ }
118
+ catch (error) {
119
+ return schedulerUnreadable(error);
120
+ }
121
+ }
122
+ const listing = await input.readClaudeListing(input.signal).then(value => ({ ok: true, value }), error => ({ ok: false, error }));
123
+ if (!listing.ok) {
124
+ return schedulerUnreadable(listing.error);
125
+ }
126
+ if (listing.value === null || listing.value === undefined) {
127
+ return {
128
+ state: "unknown",
129
+ reason: SCHEDULER_UNAVAILABLE,
130
+ message: SCHEDULER_UNAVAILABLE_MESSAGE,
131
+ };
132
+ }
133
+ try {
134
+ const listClaude = input.listClaudeAutomations ?? (await loadDefaultListClaudeAutomations());
135
+ return mapHarnessAutomations({
136
+ prefix: identity.value.automationPrefix,
137
+ runtime: "claude",
138
+ observations: listClaude({
139
+ scheduleListing: listing.value,
140
+ automationPrefix: identity.value.automationPrefix,
141
+ }),
142
+ });
143
+ }
144
+ catch (error) {
145
+ return schedulerUnreadable(error);
146
+ }
147
+ }
148
+ //# sourceMappingURL=ui-automations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui-automations.js","sourceRoot":"","sources":["../../src/cli/ui-automations.ts"],"names":[],"mappings":"AAWA,OAAO,EACL,uBAAuB,EACvB,2BAA2B,EAC3B,gCAAgC,EAChC,sBAAsB,EACtB,gCAAgC,EAChC,iCAAiC,GAClC,MAAM,8BAA8B,CAAC;AAEtC,6EAA6E;AAC7E,MAAM,CAAC,MAAM,oBAAoB,GAAG,aAAa,CAAC;AAElD,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAC/B,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AACpD,MAAM,qBAAqB,GAAG,uBAAuB,CAAC;AACtD,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AACpD,MAAM,6BAA6B,GACjC,kHAAkH,CAAC;AAoFrH;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAiC;IAEjC,MAAM,WAAW,GAA6B,KAAK,CAAC,YAAY;SAC7D,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;SAC5D,GAAG,CACF,CAAC,KAAK,EAA0B,EAAE,CAAC,CAAC;QAClC,EAAE,EAAE,KAAK,CAAC,YAAY;QACtB,OAAO,EACL,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ;YACzC,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YACrC,CAAC,CAAC,KAAK,CAAC,eAAe;YACvB,CAAC,CAAC,IAAI;QACV,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,MAAM,EACJ,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YAChE,CAAC,CAAC,KAAK,CAAC,MAAM;YACd,CAAC,CAAC,IAAI;QACV,SAAS,EACP,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;YACnC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YAC/B,CAAC,CAAC,KAAK,CAAC,SAAS;YACjB,CAAC,CAAC,IAAI;KACX,CAAC,CACH;SACA,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAE1D,OAAO;QACL,KAAK,EAAE,OAAO;QACd,KAAK,EAAE;YACL,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,WAAW;SACZ;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CAAC,KAAc;IACrC,MAAM,OAAO,GACX,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QACvD,CAAC,CAAC,KAAK,CAAC,OAAO;QACf,CAAC,CAAC,uDAAuD,CAAC;IAC9D,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACH,SAAS,mBAAmB,CAC1B,KAAc;IAEd,MAAM,OAAO,GACX,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QACvD,CAAC,CAAC,KAAK,CAAC,OAAO;QACf,CAAC,CAAC,qCAAqC,CAAC;IAC5C,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,oBAAoB,EAAE,OAAO,EAAE,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CACpC,YAA0C;IAE1C,MAAM,eAAe,GACnB,YAAY,CAAC,eAAe,IAAI,sBAAsB,CAAC;IACzD,MAAM,SAAS,GACb,YAAY,CAAC,oBAAoB,IAAI,2BAA2B,CAAC;IACnE,MAAM,iBAAiB,GACrB,YAAY,CAAC,yBAAyB,IAAI,gCAAgC,CAAC;IAC7E,MAAM,aAAa,GACjB,YAAY,CAAC,2BAA2B,IAAI,uBAAuB,CAAC;IACtE,MAAM,cAAc,GAClB,YAAY,CAAC,cAAc,IAAI,iCAAiC,EAAE,CAAC;IAErE,OAAO;QACL,EAAE,EAAE,oBAAoB;QACxB,SAAS,EAAE,gBAAgB;QAC3B,GAAG,EAAE,KAAK,EAAC,MAAM,EAAC,EAAE;YAClB,MAAM,IAAI,GAA6B;gBACrC,GAAG,EAAE,YAAY,CAAC,GAAG;gBACrB,MAAM;gBACN,eAAe;gBACf,SAAS;gBACT,iBAAiB;gBACjB,aAAa;gBACb,cAAc;aACf,CAAC;YACF,OAAO,mBAAmB,CACxB,YAAY,CAAC,qBAAqB,KAAK,SAAS;gBAC9C,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC;oBACE,GAAG,IAAI;oBACP,qBAAqB,EAAE,YAAY,CAAC,qBAAqB;iBAC1D,CACN,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC;AAcD;;;;GAIG;AACH,KAAK,UAAU,mBAAmB,CAChC,KAA+B;IAE/B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CACxE,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,KAAK,EAAE,CAAC,EACvC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAc,EAAE,KAAK,EAAE,CAAC,CACzC,CAAC;IACF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,MAAM,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAClE,IAAI,CAAC;YACH,OAAO,qBAAqB,CAAC;gBAC3B,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,gBAAgB;gBACvC,OAAO,EAAE,OAAO;gBAChB,YAAY,EAAE,MAAM,KAAK,CAAC,SAAS,CAAC;oBAClC,cAAc,EAAE,KAAK,CAAC,cAAc;oBACpC,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAC,gBAAgB;iBAClD,CAAC;aACH,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAC9D,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,IAAa,EAAE,KAAK,EAAE,CAAC,EACvC,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,KAAc,EAAE,KAAK,EAAE,CAAC,CACzC,CAAC;IACF,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;QAChB,OAAO,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC1D,OAAO;YACL,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,qBAAqB;YAC7B,OAAO,EAAE,6BAA6B;SACvC,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,UAAU,GACd,KAAK,CAAC,qBAAqB,IAAI,CAAC,MAAM,gCAAgC,EAAE,CAAC,CAAC;QAC5E,OAAO,qBAAqB,CAAC;YAC3B,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,gBAAgB;YACvC,OAAO,EAAE,QAAQ;YACjB,YAAY,EAAE,UAAU,CAAC;gBACvB,eAAe,EAAE,OAAO,CAAC,KAAK;gBAC9B,gBAAgB,EAAE,QAAQ,CAAC,KAAK,CAAC,gBAAgB;aAClD,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;AACH,CAAC"}
@@ -3,8 +3,13 @@ import { type JsonObject } from "../sync/json-path.js";
3
3
  import { type RemoteEnvironmentStatus } from "./remote-environment.js";
4
4
  import { type StatusProbe } from "./ui-status.js";
5
5
  export { createGithubAuthProbe, runProbe, type GitRemoteReader, type GithubAuthCheck, type ProbeResult, type StatusProbe, } from "./ui-status.js";
6
+ export { createGithubRepoProbe } from "./ui-github-repo.js";
7
+ export { createEnabledPluginsProbe, buildEnabledPluginsValue, listMarketplacePluginsFromDisk, type EnabledPluginRow, type EnabledPluginsValue, type MarketplacePlugin, } from "./ui-enabled-plugins.js";
8
+ export { createDeployPipelineProbe, DEPLOY_PIPELINE_PROBE_ID, type DeployPipelineStage, type DeployPipelineValue, } from "./ui-deploy-pipeline.js";
9
+ export { createDetectedStacksProbe, DETECTED_STACKS_PROBE_ID, } from "./ui-detected-stacks.js";
6
10
  export { createLisaVersionProbe, mapLisaVersionCheck, type LisaVersionValue, } from "./ui-lisa-version.js";
7
11
  export { createCiQualityJobsProbe, computeCiQualityJobs, parseCiWorkflowInputs, CI_QUALITY_JOBS_PROBE_ID, type CiQualityJobEntry, type CiQualityJobsValue, type CiWorkflowInputs, type RepoSecretsPresence, } from "./ui-ci-quality-jobs.js";
12
+ export { createObservabilityProviderProbes } from "./ui-observability-providers.js";
8
13
  export { inspectRemoteEnvironment } from "./remote-environment.js";
9
14
  /** Default port for the settings console. */
10
15
  export declare const DEFAULT_UI_PORT = 4780;
@@ -1 +1 @@
1
- {"version":3,"file":"ui-cmd.d.ts","sourceRoot":"","sources":["../../src/cli/ui-cmd.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,qBAAqB,EACrB,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,WAAW,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,6CAA6C;AAC7C,eAAO,MAAM,eAAe,OAAO,CAAC;AAKpC,iCAAiC;AACjC,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,sDAAsD;AACtD,MAAM,WAAW,qBAAqB;IACpC,gDAAgD;IAChD,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CAC1C;AAYD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUnD;AAmBD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,EAClB,iBAAiB,GAAE,uBAIlB,GACA,MAAM,CAQR;AAgKD;;;;;;GAMG;AACH,wBAAsB,KAAK,CACzB,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,GAAE,YAAiB,EAC1B,YAAY,GAAE,qBAA0B,GACvC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAsCtB"}
1
+ {"version":3,"file":"ui-cmd.d.ts","sourceRoot":"","sources":["../../src/cli/ui-cmd.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAIlC,OAAO,EAAgB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGrE,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAMjC,OAAO,EAKL,KAAK,WAAW,EACjB,MAAM,gBAAgB,CAAC;AAKxB,OAAO,EACL,qBAAqB,EACrB,QAAQ,EACR,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,WAAW,GACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,8BAA8B,EAC9B,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,GACvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,yBAAyB,EACzB,wBAAwB,EACxB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,KAAK,gBAAgB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,GACzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,iCAAiC,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAEnE,6CAA6C;AAC7C,eAAO,MAAM,eAAe,OAAO,CAAC;AAKpC,iCAAiC;AACjC,MAAM,WAAW,YAAY;IAC3B,4EAA4E;IAC5E,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,sDAAsD;AACtD,MAAM,WAAW,qBAAqB;IACpC,gDAAgD;IAChD,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;CAC1C;AAYD;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAUnD;AAmBD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,UAAU,EAClB,iBAAiB,GAAE,uBAIlB,GACA,MAAM,CAQR;AAgKD;;;;;;GAMG;AACH,wBAAsB,KAAK,CACzB,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,OAAO,GAAE,YAAiB,EAC1B,YAAY,GAAE,qBAA0B,GACvC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CA4CtB"}
@@ -18,12 +18,23 @@ import { deepMerge, readJsonOrNull } from "../utils/index.js";
18
18
  import { printSyncReport } from "./sync-cmd.js";
19
19
  import { inspectRemoteEnvironment, } from "./remote-environment.js";
20
20
  import { createCiQualityJobsProbe } from "./ui-ci-quality-jobs.js";
21
+ import { createDeployPipelineProbe } from "./ui-deploy-pipeline.js";
22
+ import { createDetectedStacksProbe } from "./ui-detected-stacks.js";
23
+ import { createGithubRepoProbe } from "./ui-github-repo.js";
21
24
  import { createLisaVersionProbe } from "./ui-lisa-version.js";
22
25
  import { createGithubAuthProbe, readStatusSnapshot, validateStatusProbes, } from "./ui-status.js";
26
+ import { createEnabledPluginsProbe } from "./ui-enabled-plugins.js";
27
+ import { createAutomationsProbe } from "./ui-automations.js";
28
+ import { createObservabilityProviderProbes } from "./ui-observability-providers.js";
23
29
  import { serveConfigWrite } from "./ui-config-write.js";
24
30
  export { createGithubAuthProbe, runProbe, } from "./ui-status.js";
31
+ export { createGithubRepoProbe } from "./ui-github-repo.js";
32
+ export { createEnabledPluginsProbe, buildEnabledPluginsValue, listMarketplacePluginsFromDisk, } from "./ui-enabled-plugins.js";
33
+ export { createDeployPipelineProbe, DEPLOY_PIPELINE_PROBE_ID, } from "./ui-deploy-pipeline.js";
34
+ export { createDetectedStacksProbe, DETECTED_STACKS_PROBE_ID, } from "./ui-detected-stacks.js";
25
35
  export { createLisaVersionProbe, mapLisaVersionCheck, } from "./ui-lisa-version.js";
26
36
  export { createCiQualityJobsProbe, computeCiQualityJobs, parseCiWorkflowInputs, CI_QUALITY_JOBS_PROBE_ID, } from "./ui-ci-quality-jobs.js";
37
+ export { createObservabilityProviderProbes } from "./ui-observability-providers.js";
27
38
  export { inspectRemoteEnvironment } from "./remote-environment.js";
28
39
  /** Default port for the settings console. */
29
40
  export const DEFAULT_UI_PORT = 4780;
@@ -250,8 +261,14 @@ export async function runUi(targetPath, options = {}, dependencies = {}) {
250
261
  const page = injectLiveConfig(html, config, remoteEnvironment);
251
262
  const probes = dependencies.probes ?? [
252
263
  createGithubAuthProbe(destDir),
264
+ createEnabledPluginsProbe(destDir),
265
+ createDetectedStacksProbe(destDir),
253
266
  createLisaVersionProbe(),
254
267
  createCiQualityJobsProbe(destDir, config),
268
+ createDeployPipelineProbe(destDir),
269
+ createGithubRepoProbe(destDir, config),
270
+ ...createObservabilityProviderProbes(),
271
+ createAutomationsProbe({ cwd: destDir }),
255
272
  ];
256
273
  const server = http.createServer(createUiRequestHandler(page, probes, destDir));
257
274
  await new Promise(resolve => {
@@ -1 +1 @@
1
- {"version":3,"file":"ui-cmd.js","sourceRoot":"","sources":["../../src/cli/ui-cmd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ui-cmd.js","sourceRoot":"","sources":["../../src/cli/ui-cmd.ts"],"names":[],"mappings":"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"}