agent-scenario-loop 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +119 -0
- package/app/profile-session.ts +812 -0
- package/core/config-template.json +41 -0
- package/dist/core/agent-summary.d.ts +15 -0
- package/dist/core/agent-summary.js +177 -0
- package/dist/core/artifact-contract.d.ts +151 -0
- package/dist/core/artifact-contract.js +897 -0
- package/dist/core/artifact-layout.d.ts +56 -0
- package/dist/core/artifact-layout.js +61 -0
- package/dist/core/artifact-writer.d.ts +44 -0
- package/dist/core/artifact-writer.js +55 -0
- package/dist/core/comparison.d.ts +133 -0
- package/dist/core/comparison.js +294 -0
- package/dist/core/evidence-interpreter.d.ts +28 -0
- package/dist/core/evidence-interpreter.js +69 -0
- package/dist/core/execution-plan.d.ts +44 -0
- package/dist/core/execution-plan.js +95 -0
- package/dist/core/planner.d.ts +132 -0
- package/dist/core/planner.js +812 -0
- package/dist/core/ports.d.ts +198 -0
- package/dist/core/ports.js +146 -0
- package/dist/core/run-index.d.ts +62 -0
- package/dist/core/run-index.js +143 -0
- package/dist/core/schema-validator.d.ts +86 -0
- package/dist/core/schema-validator.js +407 -0
- package/dist/index.d.ts +11 -0
- package/dist/index.js +27 -0
- package/dist/runner/agent-device-driver.d.ts +126 -0
- package/dist/runner/agent-device-driver.js +168 -0
- package/dist/runner/agent-device.d.ts +295 -0
- package/dist/runner/agent-device.js +1271 -0
- package/dist/runner/android-adb-driver.d.ts +175 -0
- package/dist/runner/android-adb-driver.js +399 -0
- package/dist/runner/android-adb.d.ts +254 -0
- package/dist/runner/android-adb.js +1618 -0
- package/dist/runner/argent-driver.d.ts +183 -0
- package/dist/runner/argent-driver.js +297 -0
- package/dist/runner/argent.d.ts +349 -0
- package/dist/runner/argent.js +1211 -0
- package/dist/runner/check-plan.d.ts +45 -0
- package/dist/runner/check-plan.js +210 -0
- package/dist/runner/cli.d.ts +20 -0
- package/dist/runner/cli.js +23 -0
- package/dist/runner/compare-latest.d.ts +99 -0
- package/dist/runner/compare-latest.js +233 -0
- package/dist/runner/compare.d.ts +58 -0
- package/dist/runner/compare.js +157 -0
- package/dist/runner/demo-loop.d.ts +45 -0
- package/dist/runner/demo-loop.js +170 -0
- package/dist/runner/example-android-live.d.ts +137 -0
- package/dist/runner/example-android-live.js +454 -0
- package/dist/runner/example-ios-live.d.ts +137 -0
- package/dist/runner/example-ios-live.js +471 -0
- package/dist/runner/host-doctor.d.ts +131 -0
- package/dist/runner/host-doctor.js +628 -0
- package/dist/runner/init-project.d.ts +88 -0
- package/dist/runner/init-project.js +263 -0
- package/dist/runner/ios-simctl-driver.d.ts +69 -0
- package/dist/runner/ios-simctl-driver.js +97 -0
- package/dist/runner/ios-simctl.d.ts +254 -0
- package/dist/runner/ios-simctl.js +1415 -0
- package/dist/runner/live-android.d.ts +137 -0
- package/dist/runner/live-android.js +539 -0
- package/dist/runner/live-comparison.d.ts +67 -0
- package/dist/runner/live-comparison.js +147 -0
- package/dist/runner/live-ios.d.ts +137 -0
- package/dist/runner/live-ios.js +460 -0
- package/dist/runner/live-proof-summary.d.ts +263 -0
- package/dist/runner/live-proof-summary.js +465 -0
- package/dist/runner/live-proof.d.ts +467 -0
- package/dist/runner/live-proof.js +920 -0
- package/dist/runner/local-env.d.ts +64 -0
- package/dist/runner/local-env.js +155 -0
- package/dist/runner/profile-android.d.ts +82 -0
- package/dist/runner/profile-android.js +671 -0
- package/dist/runner/profile-ios.d.ts +108 -0
- package/dist/runner/profile-ios.js +532 -0
- package/dist/runner/profile-mobile.d.ts +254 -0
- package/dist/runner/profile-mobile.js +1307 -0
- package/dist/runner/validate-project.d.ts +273 -0
- package/dist/runner/validate-project.js +1501 -0
- package/docs/adapters.md +145 -0
- package/docs/api.md +94 -0
- package/docs/authoring.md +196 -0
- package/docs/concepts.md +136 -0
- package/docs/consumer-rehearsal.md +115 -0
- package/docs/contracts.md +267 -0
- package/docs/live-proofs.md +270 -0
- package/docs/principles.md +46 -0
- package/examples/event-logs/app-startup-baseline.log +4 -0
- package/examples/event-logs/app-startup-current.log +4 -0
- package/examples/minimal-app/README.md +70 -0
- package/examples/mobile-app/README.md +302 -0
- package/examples/mobile-app/app.json +22 -0
- package/examples/mobile-app/asl/package-scripts.json +32 -0
- package/examples/mobile-app/asl.config.json +37 -0
- package/examples/mobile-app/event-logs/android-app-startup.log +4 -0
- package/examples/mobile-app/event-logs/android-open-close-cycle.log +12 -0
- package/examples/mobile-app/event-logs/android-scroll-settle.log +12 -0
- package/examples/mobile-app/event-logs/app-startup.log +4 -0
- package/examples/mobile-app/event-logs/open-close-cycle.log +12 -0
- package/examples/mobile-app/event-logs/scroll-settle.log +12 -0
- package/examples/mobile-app/index.ts +20 -0
- package/examples/mobile-app/metro.config.js +20 -0
- package/examples/mobile-app/package.json +62 -0
- package/examples/mobile-app/patches/expo-modules-jsi@56.0.10.patch +19 -0
- package/examples/mobile-app/plugins/with-ios-build-compat.js +271 -0
- package/examples/mobile-app/pnpm-lock.yaml +4440 -0
- package/examples/mobile-app/runner-manifests/evidence-provider.json +79 -0
- package/examples/mobile-app/runner-manifests/primary-runner.json +19 -0
- package/examples/mobile-app/scenarios/android/app-startup-video.json +73 -0
- package/examples/mobile-app/scenarios/android/app-startup.json +44 -0
- package/examples/mobile-app/scenarios/android/open-close-cycle.json +54 -0
- package/examples/mobile-app/scenarios/android/scroll-settle.json +49 -0
- package/examples/mobile-app/scenarios/ios/app-startup.json +44 -0
- package/examples/mobile-app/scenarios/ios/open-close-cycle.json +54 -0
- package/examples/mobile-app/scenarios/ios/scroll-settle.json +49 -0
- package/examples/mobile-app/scenarios/mobile/app-startup.json +91 -0
- package/examples/mobile-app/scenarios/mobile/open-close-cycle.json +160 -0
- package/examples/mobile-app/scenarios/mobile/scroll-settle.json +148 -0
- package/examples/mobile-app/scripts/asl-capture-accessibility-provider.mjs +112 -0
- package/examples/mobile-app/scripts/asl-capture-profiler-provider.mjs +127 -0
- package/examples/mobile-app/src/devtools/profile-session.ts +7 -0
- package/examples/mobile-app/src/example-screen.tsx +322 -0
- package/examples/mobile-app/tsconfig.json +16 -0
- package/examples/mobile-app/tsconfig.typecheck.json +13 -0
- package/examples/runners/README.md +44 -0
- package/examples/runners/adb-android.json +25 -0
- package/examples/runners/agent-device-android.json +27 -0
- package/examples/runners/agent-device-ios.json +27 -0
- package/examples/runners/argent-android.json +32 -0
- package/examples/runners/argent-ios.json +32 -0
- package/examples/runners/argent-react-profiler-provider.json +15 -0
- package/examples/runners/axe-accessibility-provider.json +24 -0
- package/examples/runners/manual-log-ingest.json +9 -0
- package/examples/runners/rozenite-profiler-provider.json +9 -0
- package/examples/runners/script-accessibility-provider.json +24 -0
- package/examples/runners/script-memory-provider.json +24 -0
- package/examples/runners/script-network-provider.json +24 -0
- package/examples/runners/script-profiler-provider.json +30 -0
- package/examples/runners/xcodebuildmcp-ios.json +29 -0
- package/examples/scenarios/ios/app-startup.json +28 -0
- package/examples/scenarios/ios/open-close-cycle.json +35 -0
- package/examples/scenarios/mobile/app-startup.json +72 -0
- package/examples/scenarios/mobile/media-open-close.json +141 -0
- package/examples/scenarios/mobile/open-close-cycle.json +135 -0
- package/examples/scenarios/mobile/scroll-settle.json +106 -0
- package/package.json +240 -0
- package/schemas/budget-verdict.schema.json +115 -0
- package/schemas/causal-run.schema.json +279 -0
- package/schemas/comparison.schema.json +196 -0
- package/schemas/health.schema.json +108 -0
- package/schemas/live-proof-set.schema.json +195 -0
- package/schemas/live-proof.schema.json +413 -0
- package/schemas/manifest.schema.json +204 -0
- package/schemas/metrics.schema.json +137 -0
- package/schemas/project-validation.schema.json +343 -0
- package/schemas/runner-capabilities.schema.json +217 -0
- package/schemas/scenario.schema.json +400 -0
- package/schemas/verdict.schema.json +88 -0
- package/templates/evidence-provider.json +83 -0
- package/templates/gitignore-snippet +9 -0
- package/templates/integration-readme.md +125 -0
- package/templates/mobile-scenario.json +133 -0
- package/templates/package-scripts.json +32 -0
- package/templates/primary-runner.json +19 -0
- package/templates/project.config.json +37 -0
- package/templates/scripts/asl-capture-accessibility-provider.mjs +112 -0
- package/templates/scripts/asl-capture-profiler-provider.mjs +127 -0
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
type CliArgs = {
|
|
3
|
+
config?: string | boolean;
|
|
4
|
+
out?: string | boolean;
|
|
5
|
+
platform?: string | boolean;
|
|
6
|
+
root?: string | boolean;
|
|
7
|
+
[key: string]: string | boolean | undefined;
|
|
8
|
+
};
|
|
9
|
+
type ProjectValidationPlan = {
|
|
10
|
+
healthStatus: string;
|
|
11
|
+
platform: string;
|
|
12
|
+
runId: string;
|
|
13
|
+
scenarioId: string;
|
|
14
|
+
scenarioPath: string;
|
|
15
|
+
};
|
|
16
|
+
type ProjectValidationAppHelper = {
|
|
17
|
+
missingExports: string[];
|
|
18
|
+
path: string;
|
|
19
|
+
status: 'present' | 'missing' | 'incomplete';
|
|
20
|
+
};
|
|
21
|
+
type ProjectValidationConfig = {
|
|
22
|
+
customDrivers: string[];
|
|
23
|
+
externalTargetDrivers: string[];
|
|
24
|
+
invalidFields: string[];
|
|
25
|
+
missingFields: string[];
|
|
26
|
+
missingSupportedDrivers: string[];
|
|
27
|
+
packageSupportedDrivers: string[];
|
|
28
|
+
path: string;
|
|
29
|
+
status: 'present' | 'missing' | 'incomplete';
|
|
30
|
+
supportedDrivers: string[];
|
|
31
|
+
};
|
|
32
|
+
type ProjectValidationScripts = {
|
|
33
|
+
invalidScripts: string[];
|
|
34
|
+
invalidPackageJsonScripts: string[];
|
|
35
|
+
missingPaths: string[];
|
|
36
|
+
missingPackageJsonScripts: string[];
|
|
37
|
+
mismatchedPackageJsonScripts: string[];
|
|
38
|
+
missingScripts: string[];
|
|
39
|
+
packageJsonPath: string;
|
|
40
|
+
packageJsonStatus: 'present' | 'missing' | 'incomplete';
|
|
41
|
+
path: string;
|
|
42
|
+
scriptNames: string[];
|
|
43
|
+
status: 'present' | 'missing' | 'incomplete';
|
|
44
|
+
unknownCommands: string[];
|
|
45
|
+
};
|
|
46
|
+
type ProjectValidationGitignore = {
|
|
47
|
+
configArtifactPatterns: string[];
|
|
48
|
+
missingConfigArtifactPatterns: string[];
|
|
49
|
+
missingPatterns: string[];
|
|
50
|
+
path: string;
|
|
51
|
+
requiredPatterns: string[];
|
|
52
|
+
snippetPath: string;
|
|
53
|
+
status: 'present' | 'missing' | 'incomplete';
|
|
54
|
+
};
|
|
55
|
+
type ProjectValidationNextAction = {
|
|
56
|
+
code: string;
|
|
57
|
+
message: string;
|
|
58
|
+
severity: 'error' | 'warning';
|
|
59
|
+
target: string;
|
|
60
|
+
};
|
|
61
|
+
type ProjectValidationResult = {
|
|
62
|
+
appHelper: ProjectValidationAppHelper;
|
|
63
|
+
config: ProjectValidationConfig;
|
|
64
|
+
configPath: string;
|
|
65
|
+
errors: string[];
|
|
66
|
+
gitignore: ProjectValidationGitignore;
|
|
67
|
+
nextActions: ProjectValidationNextAction[];
|
|
68
|
+
platform: string;
|
|
69
|
+
plans: ProjectValidationPlan[];
|
|
70
|
+
providerPaths: string[];
|
|
71
|
+
rootDir: string;
|
|
72
|
+
runnerPath: string;
|
|
73
|
+
scripts: ProjectValidationScripts;
|
|
74
|
+
scenarioCandidateDirectories: string[];
|
|
75
|
+
scenarioPaths: string[];
|
|
76
|
+
status: 'passed' | 'failed';
|
|
77
|
+
warnings: string[];
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Prints CLI usage.
|
|
81
|
+
*
|
|
82
|
+
* @param {{write: (message: string) => unknown}} [output]
|
|
83
|
+
* @returns {void}
|
|
84
|
+
*/
|
|
85
|
+
declare function usage(output?: {
|
|
86
|
+
write: (message: string) => unknown;
|
|
87
|
+
}): void;
|
|
88
|
+
/**
|
|
89
|
+
* Parses the small flag set for the project validator.
|
|
90
|
+
*
|
|
91
|
+
* @param {string[]} argv
|
|
92
|
+
* @returns {CliArgs}
|
|
93
|
+
*/
|
|
94
|
+
declare function parseArgs(argv: string[]): CliArgs;
|
|
95
|
+
/**
|
|
96
|
+
* Resolves scenario directories from project config plus the scaffold default.
|
|
97
|
+
*
|
|
98
|
+
* @param {{configPath: string, requestedPlatform: string, rootDir: string}} options
|
|
99
|
+
* @returns {string[]}
|
|
100
|
+
*/
|
|
101
|
+
declare function resolveScenarioDirectories({ configPath, requestedPlatform, rootDir, }: {
|
|
102
|
+
configPath: string;
|
|
103
|
+
requestedPlatform: string;
|
|
104
|
+
rootDir: string;
|
|
105
|
+
}): string[];
|
|
106
|
+
/**
|
|
107
|
+
* Lists scenario JSON files from resolved scenario directories.
|
|
108
|
+
*
|
|
109
|
+
* @param {string[]} scenarioCandidateDirectories
|
|
110
|
+
* @returns {string[]}
|
|
111
|
+
*/
|
|
112
|
+
declare function listScenarioFilesFromDirectories(scenarioCandidateDirectories: string[]): string[];
|
|
113
|
+
/**
|
|
114
|
+
* Lists scenario JSON files from configured scenario directories.
|
|
115
|
+
*
|
|
116
|
+
* @param {{configPath: string, requestedPlatform: string, rootDir: string}} options
|
|
117
|
+
* @returns {string[]}
|
|
118
|
+
*/
|
|
119
|
+
declare function listScenarioFiles({ configPath, requestedPlatform, rootDir, }: {
|
|
120
|
+
configPath: string;
|
|
121
|
+
requestedPlatform: string;
|
|
122
|
+
rootDir: string;
|
|
123
|
+
}): string[];
|
|
124
|
+
/**
|
|
125
|
+
* Resolves platforms that should be validated for one scenario.
|
|
126
|
+
*
|
|
127
|
+
* @param {{requestedPlatform: string, scenario: Record<string, unknown>}} options
|
|
128
|
+
* @returns {string[]}
|
|
129
|
+
*/
|
|
130
|
+
declare function resolvePlatforms({ requestedPlatform, scenario, }: {
|
|
131
|
+
requestedPlatform: string;
|
|
132
|
+
scenario: Record<string, unknown>;
|
|
133
|
+
}): string[];
|
|
134
|
+
/**
|
|
135
|
+
* Builds a stable run id for one project-validation plan check.
|
|
136
|
+
*
|
|
137
|
+
* @param {{platform: string, scenarioId: string}} options
|
|
138
|
+
* @returns {string}
|
|
139
|
+
*/
|
|
140
|
+
declare function buildValidationRunId({ platform, scenarioId, }: {
|
|
141
|
+
platform: string;
|
|
142
|
+
scenarioId: string;
|
|
143
|
+
}): string;
|
|
144
|
+
/**
|
|
145
|
+
* Validates that the generated app helper is present and still exposes the expected integration API.
|
|
146
|
+
*
|
|
147
|
+
* @param {string} rootDir
|
|
148
|
+
* @returns {ProjectValidationAppHelper}
|
|
149
|
+
*/
|
|
150
|
+
declare function validateAppHelper(rootDir: string): ProjectValidationAppHelper;
|
|
151
|
+
/**
|
|
152
|
+
* Finds known placeholder values in the initialized project config.
|
|
153
|
+
*
|
|
154
|
+
* @param {Record<string, unknown>} config
|
|
155
|
+
* @returns {string[]}
|
|
156
|
+
*/
|
|
157
|
+
declare function validateConfigPlaceholders(config: Record<string, unknown>): string[];
|
|
158
|
+
/**
|
|
159
|
+
* Validates required project config fields for live profile execution.
|
|
160
|
+
*
|
|
161
|
+
* @param {{configPath: string, requestedPlatform: string}} options
|
|
162
|
+
* @returns {ProjectValidationConfig}
|
|
163
|
+
*/
|
|
164
|
+
declare function validateProjectConfig({ configPath, requestedPlatform, }: {
|
|
165
|
+
configPath: string;
|
|
166
|
+
requestedPlatform: string;
|
|
167
|
+
}): ProjectValidationConfig;
|
|
168
|
+
/**
|
|
169
|
+
* Validates that runtime proof artifacts are ignored by the consuming app.
|
|
170
|
+
*
|
|
171
|
+
* @param {string} rootDir
|
|
172
|
+
* @param {string} [configPath]
|
|
173
|
+
* @returns {ProjectValidationGitignore}
|
|
174
|
+
*/
|
|
175
|
+
declare function validateGitignore(rootDir: string, configPath?: string): ProjectValidationGitignore;
|
|
176
|
+
/**
|
|
177
|
+
* Validates one generated package-script snippet against its expected lifecycle shape.
|
|
178
|
+
*
|
|
179
|
+
* @param {{command: string, scriptName: string}} options
|
|
180
|
+
* @returns {string | null}
|
|
181
|
+
*/
|
|
182
|
+
declare function validatePackageScriptShape({ command, scriptName, }: {
|
|
183
|
+
command: string;
|
|
184
|
+
scriptName: string;
|
|
185
|
+
}): string | null;
|
|
186
|
+
/**
|
|
187
|
+
* Validates the generated package-script snippets against installed CLI bins and project-local inputs.
|
|
188
|
+
*
|
|
189
|
+
* @param {{packageRoot?: string, rootDir: string}} options
|
|
190
|
+
* @returns {ProjectValidationScripts}
|
|
191
|
+
*/
|
|
192
|
+
declare function validatePackageScripts({ packageRoot, rootDir, }: {
|
|
193
|
+
packageRoot?: string;
|
|
194
|
+
rootDir: string;
|
|
195
|
+
}): ProjectValidationScripts;
|
|
196
|
+
/**
|
|
197
|
+
* Validates that generated snippets were intentionally merged into app package scripts.
|
|
198
|
+
*
|
|
199
|
+
* The generated snippet file owns canonical command shape. This check only
|
|
200
|
+
* proves the app exposes runnable script names so teams do not leave the
|
|
201
|
+
* snippets stranded under `asl/`.
|
|
202
|
+
*
|
|
203
|
+
* Direct installed-bin scripts are also compared against the generated
|
|
204
|
+
* snippets, catching stale merges while allowing source-tree wrappers.
|
|
205
|
+
*
|
|
206
|
+
* @param {{expectedScripts?: Record<string, unknown>, packageJsonPath: string}} options
|
|
207
|
+
* @returns {{invalidPackageJsonScripts: string[], missingPackageJsonScripts: string[], mismatchedPackageJsonScripts: string[], packageJsonStatus: 'present' | 'missing' | 'incomplete'}}
|
|
208
|
+
*/
|
|
209
|
+
declare function validatePackageJsonScripts({ expectedScripts, packageJsonPath, }: {
|
|
210
|
+
expectedScripts?: Record<string, unknown>;
|
|
211
|
+
packageJsonPath: string;
|
|
212
|
+
}): {
|
|
213
|
+
invalidPackageJsonScripts: string[];
|
|
214
|
+
missingPackageJsonScripts: string[];
|
|
215
|
+
mismatchedPackageJsonScripts: string[];
|
|
216
|
+
packageJsonStatus: 'present' | 'missing' | 'incomplete';
|
|
217
|
+
};
|
|
218
|
+
/**
|
|
219
|
+
* Validates project-local script files referenced by evidence-provider commands.
|
|
220
|
+
*
|
|
221
|
+
* @param {{providerPaths: string[]}} options
|
|
222
|
+
* @returns {string[]}
|
|
223
|
+
*/
|
|
224
|
+
declare function validateProviderCommandReferences({ providerPaths, }: {
|
|
225
|
+
providerPaths: string[];
|
|
226
|
+
}): string[];
|
|
227
|
+
/**
|
|
228
|
+
* Builds stable agent-readable next actions from project validation facts.
|
|
229
|
+
*
|
|
230
|
+
* @param {{appHelper: ProjectValidationAppHelper, config: ProjectValidationConfig, configPath: string, gitignore: ProjectValidationGitignore, plans: ProjectValidationPlan[], providerCommandMissingPaths: string[], requestedPlatform: string, rootDir: string, runnerPath: string, scenarioPaths: string[], scripts: ProjectValidationScripts, warnings: string[]}} options
|
|
231
|
+
* @returns {ProjectValidationNextAction[]}
|
|
232
|
+
*/
|
|
233
|
+
declare function buildNextActions({ appHelper, config, configPath, gitignore, plans, providerCommandMissingPaths, requestedPlatform, rootDir, runnerPath, scenarioPaths, scripts, warnings, }: {
|
|
234
|
+
appHelper: ProjectValidationAppHelper;
|
|
235
|
+
config: ProjectValidationConfig;
|
|
236
|
+
configPath: string;
|
|
237
|
+
gitignore: ProjectValidationGitignore;
|
|
238
|
+
plans: ProjectValidationPlan[];
|
|
239
|
+
providerCommandMissingPaths: string[];
|
|
240
|
+
requestedPlatform: string;
|
|
241
|
+
rootDir: string;
|
|
242
|
+
runnerPath: string;
|
|
243
|
+
scenarioPaths: string[];
|
|
244
|
+
scripts: ProjectValidationScripts;
|
|
245
|
+
warnings: string[];
|
|
246
|
+
}): ProjectValidationNextAction[];
|
|
247
|
+
/**
|
|
248
|
+
* Validates a generated or hand-authored Agent Scenario Loop project.
|
|
249
|
+
*
|
|
250
|
+
* @param {{rootDir?: string, configPath?: string, platform?: string}} [options]
|
|
251
|
+
* @returns {Promise<ProjectValidationResult>}
|
|
252
|
+
*/
|
|
253
|
+
declare function validateProject(options?: {
|
|
254
|
+
configPath?: string;
|
|
255
|
+
packageRoot?: string;
|
|
256
|
+
rootDir?: string;
|
|
257
|
+
platform?: string;
|
|
258
|
+
}): Promise<ProjectValidationResult>;
|
|
259
|
+
/**
|
|
260
|
+
* Formats project validation output for humans and agents.
|
|
261
|
+
*
|
|
262
|
+
* @param {ProjectValidationResult} result
|
|
263
|
+
* @returns {string}
|
|
264
|
+
*/
|
|
265
|
+
declare function formatResult(result: ProjectValidationResult): string;
|
|
266
|
+
/**
|
|
267
|
+
* Runs the project validation CLI.
|
|
268
|
+
*
|
|
269
|
+
* @returns {Promise<void>}
|
|
270
|
+
*/
|
|
271
|
+
declare function main(): Promise<void>;
|
|
272
|
+
export { buildValidationRunId, formatResult, listScenarioFiles, listScenarioFilesFromDirectories, main, parseArgs, resolveScenarioDirectories, resolvePlatforms, usage, buildNextActions, validateConfigPlaceholders, validateProjectConfig, validateGitignore, validatePackageJsonScripts, validateProject, validateAppHelper, validatePackageScriptShape, validatePackageScripts, validateProviderCommandReferences, };
|
|
273
|
+
export type { CliArgs, ProjectValidationAppHelper, ProjectValidationConfig, ProjectValidationGitignore, ProjectValidationNextAction, ProjectValidationPlan, ProjectValidationResult, ProjectValidationScripts, };
|