@formigio/fazemos-cli 0.10.78 → 0.10.80
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/dist/auth.d.ts +31 -3
- package/dist/auth.js +109 -19
- package/dist/auth.js.map +1 -1
- package/dist/authConfig.d.ts +43 -0
- package/dist/authConfig.js +54 -0
- package/dist/authConfig.js.map +1 -0
- package/dist/commands/preflight.js +14 -13
- package/dist/commands/preflight.js.map +1 -1
- package/dist/config.d.ts +53 -13
- package/dist/config.js +22 -1
- package/dist/config.js.map +1 -1
- package/dist/index.js +71 -36
- package/dist/index.js.map +1 -1
- package/dist/oidc.d.ts +111 -0
- package/dist/oidc.js +283 -0
- package/dist/oidc.js.map +1 -0
- package/dist/preflight/roster.d.ts +3 -0
- package/dist/preflight/roster.js +1 -0
- package/dist/preflight/roster.js.map +1 -1
- package/dist/preflight/row2_roleRegistration.d.ts +7 -0
- package/dist/preflight/row2_roleRegistration.js +73 -1
- package/dist/preflight/row2_roleRegistration.js.map +1 -1
- package/dist/preflight/schema.d.ts +9 -4
- package/dist/preflight/schema.js +5 -0
- package/dist/preflight/schema.js.map +1 -1
- package/package.json +1 -1
package/dist/auth.d.ts
CHANGED
|
@@ -1,7 +1,35 @@
|
|
|
1
|
-
export
|
|
1
|
+
export interface BrowserLoginResult {
|
|
2
2
|
email: string;
|
|
3
|
-
expiresIn: number
|
|
4
|
-
}
|
|
3
|
+
expiresIn: number;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Sign in through the Cognito hosted UI — authorization code + PKCE, with the
|
|
7
|
+
* code caught on a loopback listener. This is the only interactive login the
|
|
8
|
+
* CLI has; the CLI's app client has ALLOW_USER_PASSWORD_AUTH switched off, so
|
|
9
|
+
* there is no password path to fall back to even by accident.
|
|
10
|
+
*
|
|
11
|
+
* The auth config is refetched on every login rather than read from the
|
|
12
|
+
* stored environment. It is one cheap unauthenticated request, it lets an
|
|
13
|
+
* environment configured before OIDC login backfill its CLI client id and
|
|
14
|
+
* hosted-UI domain instead of failing, and it means a pool rotation on the
|
|
15
|
+
* server is picked up without the operator re-running `fazemos init`.
|
|
16
|
+
*/
|
|
17
|
+
export declare function loginWithBrowser(opts?: {
|
|
18
|
+
/** Print the URL instead of launching a browser (SSH, headless boxes). */
|
|
19
|
+
noBrowser?: boolean;
|
|
20
|
+
/** Where progress is reported. Injected so tests can capture it. */
|
|
21
|
+
log?: (line: string) => void;
|
|
22
|
+
}): Promise<BrowserLoginResult>;
|
|
23
|
+
/**
|
|
24
|
+
* The hosted-UI logout URL for the current environment, or null when the
|
|
25
|
+
* environment has never completed an OIDC login (so there is no hosted-UI
|
|
26
|
+
* session to end).
|
|
27
|
+
*
|
|
28
|
+
* `fazemos auth logout` always clears the local tokens; visiting this URL
|
|
29
|
+
* additionally drops the browser's Cognito session, which is what stops the
|
|
30
|
+
* next `auth login` from signing straight back in without a prompt.
|
|
31
|
+
*/
|
|
32
|
+
export declare function hostedLogoutUrl(): string | null;
|
|
5
33
|
export declare function signup(email: string, password: string): Promise<{
|
|
6
34
|
email: string;
|
|
7
35
|
message: string;
|
package/dist/auth.js
CHANGED
|
@@ -1,26 +1,106 @@
|
|
|
1
1
|
import { CognitoIdentityProviderClient, InitiateAuthCommand, SignUpCommand, ConfirmSignUpCommand, AdminCreateUserCommand, AdminSetUserPasswordCommand, AdminInitiateAuthCommand, } from '@aws-sdk/client-cognito-identity-provider';
|
|
2
|
-
import { getEnv, setAuth, config } from './config.js';
|
|
2
|
+
import { getEnv, setAuth, updateEnvironment, config } from './config.js';
|
|
3
|
+
import { fetchAuthConfig } from './authConfig.js';
|
|
4
|
+
import { buildAuthorizeUrl, buildLogoutUrl, createPkcePair, createState, exchangeCodeForTokens, openBrowser, readEmailClaim, waitForCallback, } from './oidc.js';
|
|
3
5
|
function getClient() {
|
|
4
6
|
const env = getEnv();
|
|
5
7
|
return new CognitoIdentityProviderClient({ region: env.cognitoRegion });
|
|
6
8
|
}
|
|
7
|
-
|
|
9
|
+
/** How long to wait for the operator to finish signing in before giving up. */
|
|
10
|
+
const LOGIN_TIMEOUT_MS = 5 * 60 * 1000;
|
|
11
|
+
/**
|
|
12
|
+
* Sign in through the Cognito hosted UI — authorization code + PKCE, with the
|
|
13
|
+
* code caught on a loopback listener. This is the only interactive login the
|
|
14
|
+
* CLI has; the CLI's app client has ALLOW_USER_PASSWORD_AUTH switched off, so
|
|
15
|
+
* there is no password path to fall back to even by accident.
|
|
16
|
+
*
|
|
17
|
+
* The auth config is refetched on every login rather than read from the
|
|
18
|
+
* stored environment. It is one cheap unauthenticated request, it lets an
|
|
19
|
+
* environment configured before OIDC login backfill its CLI client id and
|
|
20
|
+
* hosted-UI domain instead of failing, and it means a pool rotation on the
|
|
21
|
+
* server is picked up without the operator re-running `fazemos init`.
|
|
22
|
+
*/
|
|
23
|
+
export async function loginWithBrowser(opts = {}) {
|
|
24
|
+
const log = opts.log ?? ((line) => console.log(line));
|
|
8
25
|
const env = getEnv();
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
throw new Error('Login failed — no tokens returned');
|
|
26
|
+
const authConfig = await fetchAuthConfig(env.apiUrl);
|
|
27
|
+
const cli = authConfig.cognito.clients.cli;
|
|
28
|
+
const hostedUiDomain = authConfig.cognito.hostedUiDomain;
|
|
29
|
+
if (!cli?.clientId || !hostedUiDomain) {
|
|
30
|
+
// The env-fallback branch of GET /auth/config produces exactly this: a
|
|
31
|
+
// 200 whose CLI client id is empty because the API could not read its SSM
|
|
32
|
+
// parameter. Say so, rather than sending Cognito an empty client_id and
|
|
33
|
+
// letting it answer with an unstyled error page.
|
|
34
|
+
throw new Error(`The API at ${env.apiUrl} did not advertise a CLI app client or hosted-UI domain. ` +
|
|
35
|
+
`Its /auth/config is running in the degraded env-only mode — check that the ` +
|
|
36
|
+
`stack published /fazemos/<env>/auth/public-config and that the API role can read it.`);
|
|
21
37
|
}
|
|
22
|
-
|
|
23
|
-
|
|
38
|
+
// Persist what we learned so `fazemos env` shows the truth and so a later
|
|
39
|
+
// refresh has the right client even if the API is unreachable.
|
|
40
|
+
updateEnvironment(env.name, {
|
|
41
|
+
cognitoPoolId: authConfig.cognito.userPoolId,
|
|
42
|
+
cognitoRegion: authConfig.cognito.region,
|
|
43
|
+
cognitoClientId: authConfig.cognito.clients.web.clientId || env.cognitoClientId,
|
|
44
|
+
cognitoCliClientId: cli.clientId,
|
|
45
|
+
hostedUiDomain,
|
|
46
|
+
});
|
|
47
|
+
const endpoints = { hostedUiDomain, clientId: cli.clientId };
|
|
48
|
+
const { verifier, challenge } = createPkcePair();
|
|
49
|
+
const state = createState();
|
|
50
|
+
const { code, redirectUri } = await waitForCallback({
|
|
51
|
+
state,
|
|
52
|
+
timeoutMs: LOGIN_TIMEOUT_MS,
|
|
53
|
+
onReady: (boundRedirectUri) => {
|
|
54
|
+
// The authorize URL can only be built once a port is bound: Cognito
|
|
55
|
+
// matches redirect_uri exactly, so it must carry the port we actually
|
|
56
|
+
// got, not the one we hoped for.
|
|
57
|
+
const url = buildAuthorizeUrl({
|
|
58
|
+
endpoints,
|
|
59
|
+
redirectUri: boundRedirectUri,
|
|
60
|
+
state,
|
|
61
|
+
codeChallenge: challenge,
|
|
62
|
+
});
|
|
63
|
+
if (opts.noBrowser) {
|
|
64
|
+
log(`Open this URL to sign in:\n\n ${url}\n`);
|
|
65
|
+
}
|
|
66
|
+
else if (openBrowser(url)) {
|
|
67
|
+
log(`Opening your browser to sign in...`);
|
|
68
|
+
log(`If it did not open, use this URL:\n\n ${url}\n`);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
log(`Could not launch a browser. Open this URL to sign in:\n\n ${url}\n`);
|
|
72
|
+
}
|
|
73
|
+
log(`Waiting for the redirect on ${boundRedirectUri} ...`);
|
|
74
|
+
},
|
|
75
|
+
});
|
|
76
|
+
const tokens = await exchangeCodeForTokens({
|
|
77
|
+
endpoints,
|
|
78
|
+
code,
|
|
79
|
+
redirectUri,
|
|
80
|
+
codeVerifier: verifier,
|
|
81
|
+
});
|
|
82
|
+
const email = readEmailClaim(tokens.idToken);
|
|
83
|
+
setAuth(env.name, email, tokens.idToken, tokens.refreshToken, tokens.expiresIn, cli.clientId);
|
|
84
|
+
return { email, expiresIn: tokens.expiresIn };
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* The hosted-UI logout URL for the current environment, or null when the
|
|
88
|
+
* environment has never completed an OIDC login (so there is no hosted-UI
|
|
89
|
+
* session to end).
|
|
90
|
+
*
|
|
91
|
+
* `fazemos auth logout` always clears the local tokens; visiting this URL
|
|
92
|
+
* additionally drops the browser's Cognito session, which is what stops the
|
|
93
|
+
* next `auth login` from signing straight back in without a prompt.
|
|
94
|
+
*/
|
|
95
|
+
export function hostedLogoutUrl() {
|
|
96
|
+
const env = getEnv();
|
|
97
|
+
const clientId = env.cognitoCliClientId;
|
|
98
|
+
if (!env.hostedUiDomain || !clientId)
|
|
99
|
+
return null;
|
|
100
|
+
// Any registered LogoutURL will do — the browser lands on a dead loopback
|
|
101
|
+
// port and shows a connection error, which is ugly, so point it at the
|
|
102
|
+
// hosted UI's own login page instead by reusing the callback origin.
|
|
103
|
+
return buildLogoutUrl({ hostedUiDomain: env.hostedUiDomain, clientId }, 'http://localhost:8976/logout');
|
|
24
104
|
}
|
|
25
105
|
export async function signup(email, password) {
|
|
26
106
|
const env = getEnv();
|
|
@@ -54,11 +134,18 @@ export async function refreshSession() {
|
|
|
54
134
|
const authData = config.get('auth')[env.name];
|
|
55
135
|
if (!authData?.refreshToken)
|
|
56
136
|
return null;
|
|
137
|
+
// A refresh token is bound to the app client that minted it. Since OIDC
|
|
138
|
+
// login that is the CLI client, not the web one, so the environment's
|
|
139
|
+
// cognitoClientId is the WRONG value for any session created by
|
|
140
|
+
// `auth login`. Prefer what the session recorded; fall back to the
|
|
141
|
+
// environment's CLI client, then to the legacy single client for sessions
|
|
142
|
+
// stored before either field existed.
|
|
143
|
+
const clientId = authData.clientId || env.cognitoCliClientId || env.cognitoClientId;
|
|
57
144
|
try {
|
|
58
145
|
const client = getClient();
|
|
59
146
|
const result = await client.send(new InitiateAuthCommand({
|
|
60
147
|
AuthFlow: 'REFRESH_TOKEN_AUTH',
|
|
61
|
-
ClientId:
|
|
148
|
+
ClientId: clientId,
|
|
62
149
|
AuthParameters: {
|
|
63
150
|
REFRESH_TOKEN: authData.refreshToken,
|
|
64
151
|
},
|
|
@@ -67,7 +154,7 @@ export async function refreshSession() {
|
|
|
67
154
|
if (!auth?.IdToken)
|
|
68
155
|
return null;
|
|
69
156
|
// Update stored tokens (refresh token is NOT returned on refresh — keep the existing one)
|
|
70
|
-
setAuth(env.name, authData.email, auth.IdToken, authData.refreshToken, auth.ExpiresIn || 3600);
|
|
157
|
+
setAuth(env.name, authData.email, auth.IdToken, authData.refreshToken, auth.ExpiresIn || 3600, clientId);
|
|
71
158
|
return auth.IdToken;
|
|
72
159
|
}
|
|
73
160
|
catch {
|
|
@@ -118,7 +205,10 @@ export async function adminLogin(email, password) {
|
|
|
118
205
|
if (!auth?.IdToken || !auth?.RefreshToken) {
|
|
119
206
|
throw new Error('Admin login failed — no tokens returned');
|
|
120
207
|
}
|
|
121
|
-
|
|
208
|
+
// Records the web client explicitly: admin-login goes through
|
|
209
|
+
// ADMIN_USER_PASSWORD_AUTH on cognitoClientId, so its refresh token is
|
|
210
|
+
// bound to that client and not to the CLI's.
|
|
211
|
+
setAuth(env.name, email, auth.IdToken, auth.RefreshToken, auth.ExpiresIn || 3600, env.cognitoClientId);
|
|
122
212
|
return { email, expiresIn: auth.ExpiresIn };
|
|
123
213
|
}
|
|
124
214
|
//# sourceMappingURL=auth.js.map
|
package/dist/auth.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,6BAA6B,EAC7B,mBAAmB,EACnB,aAAa,EACb,oBAAoB,EACpB,sBAAsB,EACtB,2BAA2B,EAC3B,wBAAwB,GACzB,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client for the API's unauthenticated `GET /auth/config`.
|
|
3
|
+
*
|
|
4
|
+
* The endpoint is the one place that knows which Cognito app client belongs
|
|
5
|
+
* to which surface, and where the hosted UI lives. Baking those into the CLI
|
|
6
|
+
* would mean a pool rotation needs a CLI release; fetching them means it does
|
|
7
|
+
* not. `fazemos init` writes the answer into the stored environment, and
|
|
8
|
+
* `auth login` refetches on every run so an environment configured before
|
|
9
|
+
* OIDC login backfills itself instead of erroring.
|
|
10
|
+
*
|
|
11
|
+
* See fazemos-api/src/routes/authConfig.ts for the server side.
|
|
12
|
+
*/
|
|
13
|
+
export interface AuthClientConfig {
|
|
14
|
+
clientId: string;
|
|
15
|
+
redirectUris: string[];
|
|
16
|
+
}
|
|
17
|
+
export interface AuthPublicConfig {
|
|
18
|
+
environment: string;
|
|
19
|
+
apiBaseUrl: string;
|
|
20
|
+
chatStreamUrl: string;
|
|
21
|
+
cognito: {
|
|
22
|
+
region: string;
|
|
23
|
+
userPoolId: string;
|
|
24
|
+
issuer: string;
|
|
25
|
+
hostedUiDomain: string;
|
|
26
|
+
scopes: string[];
|
|
27
|
+
clients: {
|
|
28
|
+
web: AuthClientConfig;
|
|
29
|
+
cli: AuthClientConfig;
|
|
30
|
+
mobile: AuthClientConfig;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Fetch and shape-check the public auth config.
|
|
36
|
+
*
|
|
37
|
+
* Throws with the reason rather than returning null: every caller needs the
|
|
38
|
+
* payload to proceed, and a null would only be turned into a vaguer message
|
|
39
|
+
* one frame up. The shape check is deliberately shallow — enough to catch an
|
|
40
|
+
* HTML error page or a 503 body being treated as config, not a full schema
|
|
41
|
+
* validation the server already guarantees.
|
|
42
|
+
*/
|
|
43
|
+
export declare function fetchAuthConfig(apiUrl: string, timeoutMs?: number): Promise<AuthPublicConfig>;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Client for the API's unauthenticated `GET /auth/config`.
|
|
3
|
+
*
|
|
4
|
+
* The endpoint is the one place that knows which Cognito app client belongs
|
|
5
|
+
* to which surface, and where the hosted UI lives. Baking those into the CLI
|
|
6
|
+
* would mean a pool rotation needs a CLI release; fetching them means it does
|
|
7
|
+
* not. `fazemos init` writes the answer into the stored environment, and
|
|
8
|
+
* `auth login` refetches on every run so an environment configured before
|
|
9
|
+
* OIDC login backfills itself instead of erroring.
|
|
10
|
+
*
|
|
11
|
+
* See fazemos-api/src/routes/authConfig.ts for the server side.
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Fetch and shape-check the public auth config.
|
|
15
|
+
*
|
|
16
|
+
* Throws with the reason rather than returning null: every caller needs the
|
|
17
|
+
* payload to proceed, and a null would only be turned into a vaguer message
|
|
18
|
+
* one frame up. The shape check is deliberately shallow — enough to catch an
|
|
19
|
+
* HTML error page or a 503 body being treated as config, not a full schema
|
|
20
|
+
* validation the server already guarantees.
|
|
21
|
+
*/
|
|
22
|
+
export async function fetchAuthConfig(apiUrl, timeoutMs = 10_000) {
|
|
23
|
+
const url = `${apiUrl.replace(/\/$/, '')}/auth/config`;
|
|
24
|
+
let res;
|
|
25
|
+
try {
|
|
26
|
+
res = await fetch(url, { signal: AbortSignal.timeout(timeoutMs) });
|
|
27
|
+
}
|
|
28
|
+
catch (err) {
|
|
29
|
+
const reason = err?.name === 'TimeoutError' ? `timed out after ${timeoutMs}ms` : err?.message || String(err);
|
|
30
|
+
throw new Error(`Could not reach ${url} (${reason})`);
|
|
31
|
+
}
|
|
32
|
+
if (!res.ok) {
|
|
33
|
+
// A 404 here is the specific, likely case worth naming: an API deployed
|
|
34
|
+
// before this endpoint existed. Anything else is a live failure.
|
|
35
|
+
if (res.status === 404) {
|
|
36
|
+
throw new Error(`${url} returned 404 — this API predates GET /auth/config. ` +
|
|
37
|
+
`Deploy an API with the endpoint, or configure the environment manually with ` +
|
|
38
|
+
`\`fazemos init <name> --api-url <url> --cognito-pool <id> --cognito-cli-client <id> --hosted-ui <domain>\`.`);
|
|
39
|
+
}
|
|
40
|
+
throw new Error(`${url} returned ${res.status} ${res.statusText}`);
|
|
41
|
+
}
|
|
42
|
+
let data;
|
|
43
|
+
try {
|
|
44
|
+
data = await res.json();
|
|
45
|
+
}
|
|
46
|
+
catch {
|
|
47
|
+
throw new Error(`${url} did not return JSON — is that the API base URL?`);
|
|
48
|
+
}
|
|
49
|
+
if (!data?.cognito?.userPoolId || !data?.cognito?.clients) {
|
|
50
|
+
throw new Error(`${url} returned an unrecognized shape (no cognito.userPoolId / cognito.clients).`);
|
|
51
|
+
}
|
|
52
|
+
return data;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=authConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authConfig.js","sourceRoot":"","sources":["../src/authConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAyBH;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAc,EAAE,SAAS,GAAG,MAAM;IACtE,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC;IAEvD,IAAI,GAAa,CAAC;IAClB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,MAAM,MAAM,GAAG,GAAG,EAAE,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,mBAAmB,SAAS,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7G,MAAM,IAAI,KAAK,CAAC,mBAAmB,GAAG,KAAK,MAAM,GAAG,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,wEAAwE;QACxE,iEAAiE;QACjE,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,GAAG,GAAG,sDAAsD;gBAC5D,8EAA8E;gBAC9E,6GAA6G,CAC9G,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,aAAa,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,IAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAsB,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,kDAAkD,CAAC,CAAC;IAC5E,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;QAC1D,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,4EAA4E,CAAC,CAAC;IACtG,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -124,6 +124,7 @@ async function runRowSet(opts) {
|
|
|
124
124
|
orgSlug,
|
|
125
125
|
projectSlug,
|
|
126
126
|
env,
|
|
127
|
+
roleScope: roleEntry?.scope,
|
|
127
128
|
}),
|
|
128
129
|
checkRow3aPersona({ agentName, orgId, projectId }),
|
|
129
130
|
checkRow3bPlaybook({
|
|
@@ -207,7 +208,7 @@ export async function runPreflight(target, opts) {
|
|
|
207
208
|
'Run from inside a workspace repo or specify --workspace <path>.';
|
|
208
209
|
if (opts.json) {
|
|
209
210
|
process.stdout.write(JSON.stringify({
|
|
210
|
-
schema_version: '1.
|
|
211
|
+
schema_version: '1.3',
|
|
211
212
|
target,
|
|
212
213
|
env: envName,
|
|
213
214
|
exit_code: 2,
|
|
@@ -226,7 +227,7 @@ export async function runPreflight(target, opts) {
|
|
|
226
227
|
catch (err) {
|
|
227
228
|
const msg = err instanceof RosterLoadError ? err.message : String(err);
|
|
228
229
|
if (opts.json) {
|
|
229
|
-
process.stdout.write(JSON.stringify({ schema_version: '1.
|
|
230
|
+
process.stdout.write(JSON.stringify({ schema_version: '1.3', target, env: envName, exit_code: 2, error: msg }) + '\n');
|
|
230
231
|
}
|
|
231
232
|
else {
|
|
232
233
|
console.error(chalk.red(`⚠ TOOLING-ERROR: ${msg}`));
|
|
@@ -238,7 +239,7 @@ export async function runPreflight(target, opts) {
|
|
|
238
239
|
if (!parsed) {
|
|
239
240
|
const msg = `Invalid target '${target}'. Use <org>/<project>/<role>, <org>/<project>, or <org>/<role>.`;
|
|
240
241
|
if (opts.json) {
|
|
241
|
-
process.stdout.write(JSON.stringify({ schema_version: '1.
|
|
242
|
+
process.stdout.write(JSON.stringify({ schema_version: '1.3', target, env: envName, exit_code: 2, error: msg }) + '\n');
|
|
242
243
|
}
|
|
243
244
|
else {
|
|
244
245
|
console.error(chalk.red(msg));
|
|
@@ -273,7 +274,7 @@ async function runSingleProject(parsed, registry, roster, opts, envName) {
|
|
|
273
274
|
};
|
|
274
275
|
if (opts.json) {
|
|
275
276
|
const out = {
|
|
276
|
-
schema_version: '1.
|
|
277
|
+
schema_version: '1.3',
|
|
277
278
|
target: `${orgSlug}/${projectSlug}/${roleSlug}`,
|
|
278
279
|
env: envName,
|
|
279
280
|
exit_code: 3,
|
|
@@ -305,7 +306,7 @@ async function runSingleProject(parsed, registry, roster, opts, envName) {
|
|
|
305
306
|
catch (err) {
|
|
306
307
|
const msg = err?.message ?? String(err);
|
|
307
308
|
if (opts.json) {
|
|
308
|
-
process.stdout.write(JSON.stringify({ schema_version: '1.
|
|
309
|
+
process.stdout.write(JSON.stringify({ schema_version: '1.3', target: `${orgSlug}/${projectSlug}/${roleSlug}`, env: envName, exit_code: 2, error: msg }) + '\n');
|
|
309
310
|
}
|
|
310
311
|
else {
|
|
311
312
|
console.error(chalk.red(`⚠ TOOLING-ERROR: ${msg}`));
|
|
@@ -339,7 +340,7 @@ async function runSingleProject(parsed, registry, roster, opts, envName) {
|
|
|
339
340
|
const exitCode = computeExitCode(rows, false);
|
|
340
341
|
if (opts.json) {
|
|
341
342
|
const out = {
|
|
342
|
-
schema_version: '1.
|
|
343
|
+
schema_version: '1.3',
|
|
343
344
|
target: `${orgSlug}/${projectSlug}/${roleSlug}`,
|
|
344
345
|
env: envName,
|
|
345
346
|
exit_code: exitCode,
|
|
@@ -370,7 +371,7 @@ async function runFanOutRole(parsed, registry, roster, opts, envName) {
|
|
|
370
371
|
`Add a filler for '${roleSlug}' in .fazemos/roles.json (or projects/<slug>/.fazemos/roles.json), then re-run.`;
|
|
371
372
|
if (opts.json) {
|
|
372
373
|
process.stdout.write(JSON.stringify({
|
|
373
|
-
schema_version: '1.
|
|
374
|
+
schema_version: '1.3',
|
|
374
375
|
target: `${orgSlug}/${roleSlug}`,
|
|
375
376
|
env: envName,
|
|
376
377
|
exit_code: 2,
|
|
@@ -387,7 +388,7 @@ async function runFanOutRole(parsed, registry, roster, opts, envName) {
|
|
|
387
388
|
const fixInstruction = `cd ${xwsEntry.workspace_path} && fazemos agents preflight ${orgSlug}/${roleSlug}`;
|
|
388
389
|
if (opts.json) {
|
|
389
390
|
const out = {
|
|
390
|
-
schema_version: '1.
|
|
391
|
+
schema_version: '1.3',
|
|
391
392
|
target: `${orgSlug}/${roleSlug}`,
|
|
392
393
|
env: envName,
|
|
393
394
|
exit_code: 3,
|
|
@@ -440,7 +441,7 @@ async function runFanOutRole(parsed, registry, roster, opts, envName) {
|
|
|
440
441
|
catch (err) {
|
|
441
442
|
const msg = err?.message ?? String(err);
|
|
442
443
|
if (opts.json) {
|
|
443
|
-
process.stdout.write(JSON.stringify({ schema_version: '1.
|
|
444
|
+
process.stdout.write(JSON.stringify({ schema_version: '1.3', target: `${orgSlug}/${roleSlug}`, env: envName, exit_code: 2, error: msg }) + '\n');
|
|
444
445
|
}
|
|
445
446
|
else {
|
|
446
447
|
console.error(chalk.red(`⚠ TOOLING-ERROR: ${msg}`));
|
|
@@ -539,7 +540,7 @@ async function runFanOutRole(parsed, registry, roster, opts, envName) {
|
|
|
539
540
|
}
|
|
540
541
|
else {
|
|
541
542
|
const out = {
|
|
542
|
-
schema_version: '1.
|
|
543
|
+
schema_version: '1.3',
|
|
543
544
|
target: `${orgSlug}/${roleSlug}`,
|
|
544
545
|
env: envName,
|
|
545
546
|
exit_code: finalCode,
|
|
@@ -579,7 +580,7 @@ async function runFanOutProject(parsed, registry, roster, opts, envName) {
|
|
|
579
580
|
if (declaredRoles.length === 0 && xwsEntries.length === 0) {
|
|
580
581
|
const msg = `Roster: 0 declared roles for project '${projectSlug}' in this workspace.`;
|
|
581
582
|
if (opts.json) {
|
|
582
|
-
process.stdout.write(JSON.stringify({ schema_version: '1.
|
|
583
|
+
process.stdout.write(JSON.stringify({ schema_version: '1.3', target: `${orgSlug}/${projectSlug}`, env: envName, exit_code: 2, error: msg }) + '\n');
|
|
583
584
|
}
|
|
584
585
|
else {
|
|
585
586
|
console.error(chalk.red(`⚠ TOOLING-ERROR: ${msg}`));
|
|
@@ -597,7 +598,7 @@ async function runFanOutProject(parsed, registry, roster, opts, envName) {
|
|
|
597
598
|
catch (err) {
|
|
598
599
|
const msg = err?.message ?? String(err);
|
|
599
600
|
if (opts.json) {
|
|
600
|
-
process.stdout.write(JSON.stringify({ schema_version: '1.
|
|
601
|
+
process.stdout.write(JSON.stringify({ schema_version: '1.3', target: `${orgSlug}/${projectSlug}`, env: envName, exit_code: 2, error: msg }) + '\n');
|
|
601
602
|
}
|
|
602
603
|
else {
|
|
603
604
|
console.error(chalk.red(`⚠ TOOLING-ERROR: ${msg}`));
|
|
@@ -674,7 +675,7 @@ async function runFanOutProject(parsed, registry, roster, opts, envName) {
|
|
|
674
675
|
}
|
|
675
676
|
else {
|
|
676
677
|
const out = {
|
|
677
|
-
schema_version: '1.
|
|
678
|
+
schema_version: '1.3',
|
|
678
679
|
target: `${orgSlug}/${projectSlug}`,
|
|
679
680
|
env: envName,
|
|
680
681
|
exit_code: finalCode,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../src/commands/preflight.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../src/commands/preflight.ts"],"names":[],"mappings":"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"}
|