@lark-base-open/base-database-cli 1.6.0 → 1.8.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/CHANGELOG.md +38 -0
- package/README.md +5 -1
- package/dist/agent-tools-guide.d.ts.map +1 -1
- package/dist/agent-tools-guide.js +5 -4
- package/dist/agent-tools-guide.js.map +1 -1
- package/dist/agent-tools.d.ts +1 -0
- package/dist/agent-tools.d.ts.map +1 -1
- package/dist/agent-tools.js +3 -1
- package/dist/agent-tools.js.map +1 -1
- package/dist/app-builder/core.d.mts.map +1 -1
- package/dist/app-builder/core.mjs +8 -4
- package/dist/app-builder/core.mjs.map +1 -1
- package/dist/app-builder/package.json +1 -1
- package/dist/archive.d.ts.map +1 -1
- package/dist/archive.js +15 -1
- package/dist/archive.js.map +1 -1
- package/dist/auth.d.ts +6 -1
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +32 -11
- package/dist/auth.js.map +1 -1
- package/dist/bot-handoff.d.ts +16 -0
- package/dist/bot-handoff.d.ts.map +1 -0
- package/dist/bot-handoff.js +165 -0
- package/dist/bot-handoff.js.map +1 -0
- package/dist/build-info.d.ts +3 -0
- package/dist/build-info.d.ts.map +1 -0
- package/dist/build-info.js +63 -0
- package/dist/build-info.js.map +1 -0
- package/dist/check.d.ts.map +1 -1
- package/dist/check.js +13 -1
- package/dist/check.js.map +1 -1
- package/dist/contract-conversion.d.ts +1 -0
- package/dist/contract-conversion.d.ts.map +1 -1
- package/dist/contract-conversion.js +11 -0
- package/dist/contract-conversion.js.map +1 -1
- package/dist/contract-dependencies.d.ts +16 -0
- package/dist/contract-dependencies.d.ts.map +1 -0
- package/dist/contract-dependencies.js +52 -0
- package/dist/contract-dependencies.js.map +1 -0
- package/dist/dev-url.d.ts.map +1 -1
- package/dist/dev-url.js +6 -4
- package/dist/dev-url.js.map +1 -1
- package/dist/distribution-commands.d.ts.map +1 -1
- package/dist/distribution-commands.js +10 -5
- package/dist/distribution-commands.js.map +1 -1
- package/dist/function-contracts.d.ts.map +1 -1
- package/dist/function-contracts.js +10 -15
- package/dist/function-contracts.js.map +1 -1
- package/dist/init-journal.d.ts +10 -0
- package/dist/init-journal.d.ts.map +1 -1
- package/dist/init-journal.js +5 -2
- package/dist/init-journal.js.map +1 -1
- package/dist/init.d.ts +29 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +201 -19
- package/dist/init.js.map +1 -1
- package/dist/lark-cli.d.ts +10 -0
- package/dist/lark-cli.d.ts.map +1 -1
- package/dist/lark-cli.js +135 -23
- package/dist/lark-cli.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +17 -2
- package/dist/program.js.map +1 -1
- package/dist/sdk-codegen.d.ts +3 -1
- package/dist/sdk-codegen.d.ts.map +1 -1
- package/dist/sdk-codegen.js +37 -13
- package/dist/sdk-codegen.js.map +1 -1
- package/dist/sdk-compatibility.js +1 -1
- package/dist/sdk-compatibility.js.map +1 -1
- package/dist/source-format.d.ts +1 -0
- package/dist/source-format.d.ts.map +1 -1
- package/dist/source-format.js +5 -2
- package/dist/source-format.js.map +1 -1
- package/package.json +1 -1
- package/skills/lark-base-database/SKILL.md +3 -1
- package/skills/lark-base-database/references/agent-tools.md +10 -2
- package/skills/lark-base-database/references/base-sql-errors.generated.md +2 -0
- package/skills/lark-base-database/references/base-table-design.md +37 -0
- package/skills/lark-base-database/references/collaborator-handoff.md +62 -0
- package/skills/lark-base-database/references/database-function.md +1 -1
- package/skills/lark-base-database/references/development.md +13 -1
- package/skills/lark-base-database/references/faas.md +6 -3
- package/skills/lark-base-database/references/mutations.md +1 -1
- package/skills/lark-base-database/references/permission-design.md +1 -0
- package/skills/lark-base-database/references/release.md +1 -1
- package/skills/lark-base-database/references/style-guide.md +1 -1
- package/skills/lark-base-database/references/workspace.md +22 -7
- package/templates/database-starter-v2/README.md +1 -1
- package/templates/database-starter-v2/package-lock.json +9 -9
- package/templates/database-starter-v2/page/package.json +1 -1
- package/templates/database-starter-v2/server/package.json +1 -1
package/dist/init.js
CHANGED
|
@@ -6,12 +6,13 @@ import { createHash } from 'node:crypto';
|
|
|
6
6
|
import { InitJournal, InitFailureError, assertNoInitReceipt, } from './init-journal.js';
|
|
7
7
|
import { readInitSchema, InitSchemaError } from './init-schema.js';
|
|
8
8
|
import { createFieldsWithRetry } from './init-field-retry.js';
|
|
9
|
-
import { isRecord } from './lark-cli-error.js';
|
|
9
|
+
import { isRecord, userAuthorizationHint } from './lark-cli-error.js';
|
|
10
10
|
import { starterRoot as legacyStarterRoot } from './assets.js';
|
|
11
11
|
import { DATABASE_FUNCTIONS_DIRECTORY, LEGACY_DATABASE_FUNCTIONS_DIRECTORY, databaseFunctionsDirectory, } from './project-layout.js';
|
|
12
12
|
import { CONFIG_FILE_NAME, LEGACY_TEMPLATE, readConfig, writeConfig, } from './config.js';
|
|
13
13
|
import { ONLINE_RUNTIME_PROFILE, resolveRuntimeProfile, } from './environment.js';
|
|
14
|
-
import { responseData, runLarkCli, resolveLarkProfileEnvironment, } from './lark-cli.js';
|
|
14
|
+
import { currentCliUserOpenId, responseData, runLarkCli, resolveLarkIdentity, resolveLarkProfileEnvironment, } from './lark-cli.js';
|
|
15
|
+
import { grantBaseAdmin, grantAppAdmin, resolveHandoffTarget, validateGrantAdmin, } from './bot-handoff.js';
|
|
15
16
|
import { writePageTitle } from './page-title.js';
|
|
16
17
|
const WRITE_INTERVAL_MS = 2_000;
|
|
17
18
|
function requiredString(value, label) {
|
|
@@ -485,7 +486,7 @@ function buildInitPlan(options, schema, resources) {
|
|
|
485
486
|
},
|
|
486
487
|
};
|
|
487
488
|
}
|
|
488
|
-
function prepareResume(journal, options, schema, env) {
|
|
489
|
+
function prepareResume(journal, options, schema, env, beforeRemote) {
|
|
489
490
|
for (const step of journal.receipt.steps) {
|
|
490
491
|
if (step.kind === 'write' && ['running', 'unknown'].includes(step.status))
|
|
491
492
|
recoveryBlocked(journal, step.id, `Write outcome is unknown for ${step.id}; recovery cannot continue`);
|
|
@@ -497,6 +498,8 @@ function prepareResume(journal, options, schema, env) {
|
|
|
497
498
|
!['not_attempted', 'succeeded'].includes(step.status))
|
|
498
499
|
recoveryBlocked(journal, step.id, 'Local scaffolding may be incomplete and will not be overwritten');
|
|
499
500
|
}
|
|
501
|
+
// 以上都是纯本地门禁;通过后、首个远端读取前解析并校验建站身份。
|
|
502
|
+
beforeRemote();
|
|
500
503
|
const receipt = journal.receipt;
|
|
501
504
|
const fieldRetries = new Map();
|
|
502
505
|
let remoteTables = [];
|
|
@@ -737,6 +740,7 @@ export async function initializeProject(options) {
|
|
|
737
740
|
throw new Error('--table-ids requires --base-token');
|
|
738
741
|
}
|
|
739
742
|
const planOptions = { ...options, tableIds: selectedTableIds };
|
|
743
|
+
const grantAdmin = validateGrantAdmin(options.grantAdmin);
|
|
740
744
|
let schema;
|
|
741
745
|
try {
|
|
742
746
|
schema = schemaPath ? readInitSchema(schemaPath) : undefined;
|
|
@@ -753,6 +757,15 @@ export async function initializeProject(options) {
|
|
|
753
757
|
});
|
|
754
758
|
}
|
|
755
759
|
const { env, larkProfile } = resolveLarkProfileEnvironment(await runtimeProfile.commandEnvironment(), options.larkProfile, undefined, runtimeProfile);
|
|
760
|
+
// 建站身份由 resolveLarkIdentity 统一解析(显式 --as > lark-cli 声明 > user),进程内只解析一次;
|
|
761
|
+
// 续跑在取得执行锁之后才解析,被本地门禁拦截的请求不调用 lark-cli。
|
|
762
|
+
const buildIdentity = () => {
|
|
763
|
+
const resolved = resolveLarkIdentity(env);
|
|
764
|
+
if (grantAdmin && resolved !== 'bot')
|
|
765
|
+
throw new Error('--grant-admin only applies when building as bot (--as bot); a user build already owns the created Base and app');
|
|
766
|
+
return resolved;
|
|
767
|
+
};
|
|
768
|
+
let identity;
|
|
756
769
|
let selectedBaseToken;
|
|
757
770
|
let selectedBaseUrl;
|
|
758
771
|
let selectedBaseName = databaseName;
|
|
@@ -773,7 +786,37 @@ export async function initializeProject(options) {
|
|
|
773
786
|
...(larkProfile ? { larkProfile } : {}),
|
|
774
787
|
planHash: plan.planHash,
|
|
775
788
|
}, plan.steps, plan.resources, env);
|
|
776
|
-
|
|
789
|
+
const resumed = journal;
|
|
790
|
+
const resolveResumeIdentity = () => {
|
|
791
|
+
identity = buildIdentity();
|
|
792
|
+
assertResumeIdentity(resumed, identity);
|
|
793
|
+
};
|
|
794
|
+
// 已完成的初始化只在交接未完成时允许续跑,且只补授权、不发任何建站写入。
|
|
795
|
+
if (journal.receipt.status === 'succeeded') {
|
|
796
|
+
if (!handoffPending(journal.receipt))
|
|
797
|
+
throw new InitFailureError('Initialization is already complete; recovery is not needed', {
|
|
798
|
+
ok: false,
|
|
799
|
+
status: 'blocked',
|
|
800
|
+
phase: 'resume-preflight',
|
|
801
|
+
journal: journal.path,
|
|
802
|
+
error: {
|
|
803
|
+
message: 'Initialization is already complete; recovery is not needed',
|
|
804
|
+
},
|
|
805
|
+
nextAction: 'Nothing to resume: the initialization and its admin handoff are complete. Continue with the next development step.',
|
|
806
|
+
});
|
|
807
|
+
resolveResumeIdentity();
|
|
808
|
+
return resumeHandoffOnly(journal, identity, grantAdmin, env, {
|
|
809
|
+
environment: runtimeProfile.name,
|
|
810
|
+
workspace,
|
|
811
|
+
larkProfile,
|
|
812
|
+
});
|
|
813
|
+
}
|
|
814
|
+
resumePreparation = prepareResume(journal, planOptions, schema, env, resolveResumeIdentity);
|
|
815
|
+
}
|
|
816
|
+
else {
|
|
817
|
+
identity = buildIdentity();
|
|
818
|
+
if (!existingBaseToken || !existingAppToken)
|
|
819
|
+
assertHandoffTarget(identity, grantAdmin, env);
|
|
777
820
|
}
|
|
778
821
|
if (existingBaseToken) {
|
|
779
822
|
selectedBaseToken = requiredString(existingBaseToken, '--base-token');
|
|
@@ -787,7 +830,7 @@ export async function initializeProject(options) {
|
|
|
787
830
|
if (!schema)
|
|
788
831
|
throw new Error('Schema is required');
|
|
789
832
|
const [first, ...remaining] = schema.tables;
|
|
790
|
-
journal ??= startJournal(workspace, planOptions, larkProfile, env, schema, {
|
|
833
|
+
journal ??= startJournal(workspace, planOptions, larkProfile, env, identity, schema, {
|
|
791
834
|
tables: [],
|
|
792
835
|
});
|
|
793
836
|
if (!first)
|
|
@@ -802,6 +845,7 @@ export async function initializeProject(options) {
|
|
|
802
845
|
selectedBaseUrl = baseUrl(currentBase);
|
|
803
846
|
selectedBaseName = baseName(currentBase) ?? databaseName;
|
|
804
847
|
tables = [saved];
|
|
848
|
+
ensureHandoff(journal, 'base', identity, grantAdmin, env);
|
|
805
849
|
}
|
|
806
850
|
else {
|
|
807
851
|
process.stderr.write(`Creating Base ${databaseName}...\n`);
|
|
@@ -824,6 +868,8 @@ export async function initializeProject(options) {
|
|
|
824
868
|
tables = [
|
|
825
869
|
{ name: first.name, tableId: tableId(createdBase, 'base-create') },
|
|
826
870
|
];
|
|
871
|
+
// 新建后立即交接:后续步骤失败时,接手的人也已能打开 Base 核对或续跑。
|
|
872
|
+
ensureHandoff(journal, 'base', identity, grantAdmin, env, createdBase);
|
|
827
873
|
}
|
|
828
874
|
for (const [index, table] of remaining.entries()) {
|
|
829
875
|
const stepId = `create-table:${index + 1}`;
|
|
@@ -878,21 +924,26 @@ export async function initializeProject(options) {
|
|
|
878
924
|
fields: remainingFields,
|
|
879
925
|
initialIndexes: retryIndexes ?? remainingFields.map((_, index) => index),
|
|
880
926
|
env,
|
|
881
|
-
execute: (indexes) =>
|
|
882
|
-
|
|
883
|
-
'
|
|
884
|
-
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
927
|
+
execute: (indexes) => {
|
|
928
|
+
const batch = indexes.map((index) => remainingFields[index]);
|
|
929
|
+
const needsGuide = batch.some((field) => field?.type === 'formula' || field?.type === 'lookup');
|
|
930
|
+
return runLarkCli([
|
|
931
|
+
'base',
|
|
932
|
+
'+field-create',
|
|
933
|
+
'--base-token',
|
|
934
|
+
selectedBaseToken,
|
|
935
|
+
'--table-id',
|
|
936
|
+
createdTable.tableId,
|
|
937
|
+
'--json',
|
|
938
|
+
JSON.stringify(batch),
|
|
939
|
+
...(needsGuide ? ['--i-have-read-guide'] : []),
|
|
940
|
+
], env);
|
|
941
|
+
},
|
|
891
942
|
}));
|
|
892
943
|
}
|
|
893
944
|
await pause();
|
|
894
945
|
}
|
|
895
|
-
journal ??= startJournal(workspace, planOptions, larkProfile, env, schema, {
|
|
946
|
+
journal ??= startJournal(workspace, planOptions, larkProfile, env, identity, schema, {
|
|
896
947
|
baseToken: selectedBaseToken,
|
|
897
948
|
tables,
|
|
898
949
|
});
|
|
@@ -933,6 +984,7 @@ export async function initializeProject(options) {
|
|
|
933
984
|
else {
|
|
934
985
|
if (journal.step('create-app').status === 'succeeded') {
|
|
935
986
|
selectedAppToken = requiredString(journal.receipt.resources.appToken, 'receipt application token');
|
|
987
|
+
ensureHandoff(journal, 'app', identity, grantAdmin, env);
|
|
936
988
|
}
|
|
937
989
|
else {
|
|
938
990
|
process.stderr.write(`Creating application and binding ${selectedTableIds ? 'selected' : 'all'} tables...\n`);
|
|
@@ -954,6 +1006,7 @@ export async function initializeProject(options) {
|
|
|
954
1006
|
appToken(response);
|
|
955
1007
|
});
|
|
956
1008
|
selectedAppToken = appToken(createdDatabase);
|
|
1009
|
+
ensureHandoff(journal, 'app', identity, grantAdmin, env);
|
|
957
1010
|
}
|
|
958
1011
|
}
|
|
959
1012
|
const encodedToken = encodeURIComponent(selectedAppToken);
|
|
@@ -1072,14 +1125,16 @@ export async function initializeProject(options) {
|
|
|
1072
1125
|
tables,
|
|
1073
1126
|
};
|
|
1074
1127
|
const baseAppUrl = catalogBaseAppUrl(catalog);
|
|
1128
|
+
const handoff = handoffSummary(journal.receipt, identity);
|
|
1075
1129
|
return {
|
|
1076
1130
|
ok: true,
|
|
1077
|
-
warnings: [],
|
|
1131
|
+
warnings: handoff ? handoffWarnings(handoff) : [],
|
|
1078
1132
|
initialization: {
|
|
1079
1133
|
journal: journal.path,
|
|
1080
1134
|
status: 'succeeded',
|
|
1081
1135
|
...(options.resume ? { resumed: true } : {}),
|
|
1082
1136
|
},
|
|
1137
|
+
...(handoff ? { handoff } : {}),
|
|
1083
1138
|
environment: runtimeProfile.name,
|
|
1084
1139
|
workspace,
|
|
1085
1140
|
...(larkProfile ? { larkProfile } : {}),
|
|
@@ -1144,7 +1199,7 @@ export async function initializeProject(options) {
|
|
|
1144
1199
|
action: 'generateContracts',
|
|
1145
1200
|
workingDirectory: workspace,
|
|
1146
1201
|
command: `${runtimeProfile.checkCommand.split(' ')[0]} contracts generate`,
|
|
1147
|
-
description: '
|
|
1202
|
+
description: 'Generate contracts before check; this command prepares locked dependencies as needed. The published SDK and a single root package-lock.json are required.',
|
|
1148
1203
|
},
|
|
1149
1204
|
{
|
|
1150
1205
|
action: 'check',
|
|
@@ -1172,12 +1227,139 @@ export async function initializeProject(options) {
|
|
|
1172
1227
|
journal?.close();
|
|
1173
1228
|
}
|
|
1174
1229
|
}
|
|
1175
|
-
function startJournal(workspace, options, larkProfile, env, schema, resources) {
|
|
1230
|
+
function startJournal(workspace, options, larkProfile, env, identity, schema, resources) {
|
|
1176
1231
|
const plan = buildInitPlan(options, schema, resources);
|
|
1177
1232
|
return new InitJournal(workspace, {
|
|
1178
1233
|
environment: options.environment,
|
|
1179
1234
|
...(larkProfile ? { larkProfile } : {}),
|
|
1180
1235
|
planHash: plan.planHash,
|
|
1236
|
+
identity,
|
|
1181
1237
|
}, plan.steps, plan.resources, env);
|
|
1182
1238
|
}
|
|
1239
|
+
// 续跑必须沿用建站身份:中途换身份会让后续写入与已建资源的属主/授权不一致。
|
|
1240
|
+
function assertResumeIdentity(journal, identity) {
|
|
1241
|
+
// 未记录身份的 receipt 来自引入身份记录之前,当时一律以 user 建站。
|
|
1242
|
+
const recorded = journal.receipt.identity ?? 'user';
|
|
1243
|
+
if (recorded !== identity)
|
|
1244
|
+
recoveryBlocked(journal, 'resume-preflight', `This initialization was started with the ${recorded} identity; resume it with --as ${recorded}`);
|
|
1245
|
+
}
|
|
1246
|
+
// handoffPending:只有以 bot 建站、且本次新建的资源尚未完成授权时,已完成的初始化才需要续跑。
|
|
1247
|
+
function handoffPending(receipt) {
|
|
1248
|
+
const { resources, handoff } = receipt;
|
|
1249
|
+
return (receipt.identity === 'bot' &&
|
|
1250
|
+
((resources.baseSource === 'created' && pendingGrant(handoff?.base)) ||
|
|
1251
|
+
(resources.appSource === 'created' && pendingGrant(handoff?.app))));
|
|
1252
|
+
}
|
|
1253
|
+
// bot 新建的资源属主是机器人:没有授权对象时建出来无人能打开,必须在任何写入前拦截。
|
|
1254
|
+
// 人用场景只引导登录(open_id 按应用区分,用户无从得知);--grant-admin 留给持有发起人 open_id 的宿主。
|
|
1255
|
+
function assertHandoffTarget(identity, grantAdmin, env) {
|
|
1256
|
+
if (identity !== 'bot' || grantAdmin || currentCliUserOpenId(env))
|
|
1257
|
+
return;
|
|
1258
|
+
const message = 'Building as bot needs someone to receive admin on the new Base and app, but no lark-cli user is logged in';
|
|
1259
|
+
const login = userAuthorizationHint(env) ?? 'Log in with: lark-cli auth login';
|
|
1260
|
+
throw new InitFailureError(message, {
|
|
1261
|
+
ok: false,
|
|
1262
|
+
status: 'blocked',
|
|
1263
|
+
phase: 'preflight',
|
|
1264
|
+
error: { message },
|
|
1265
|
+
nextAction: `${login}\nThen rerun the same init command. Do not ask the user for an open_id. No remote resources were created.`,
|
|
1266
|
+
});
|
|
1267
|
+
}
|
|
1268
|
+
function pendingGrant(grant) {
|
|
1269
|
+
return (!grant || (grant.status !== 'granted' && grant.status !== 'not_applicable'));
|
|
1270
|
+
}
|
|
1271
|
+
// handoffTarget 确定授权对象:显式 --grant-admin 优先,其次沿用 receipt 已记录的对象,最后才读当前
|
|
1272
|
+
// lark-cli 用户。已有授权成功后不允许换人,避免同一批资源交给两个人。
|
|
1273
|
+
function handoffTarget(journal, grantAdmin, env) {
|
|
1274
|
+
const { handoff } = journal.receipt;
|
|
1275
|
+
const target = grantAdmin
|
|
1276
|
+
? { openId: grantAdmin, source: 'grant_admin' }
|
|
1277
|
+
: (handoff?.target ?? resolveHandoffTarget(env, undefined));
|
|
1278
|
+
const granted = [handoff?.base, handoff?.app].find((grant) => grant?.status === 'granted' && grant.userOpenId)?.userOpenId;
|
|
1279
|
+
if (target && granted && granted !== target.openId)
|
|
1280
|
+
recoveryBlocked(journal, 'handoff', `Admin was already granted to ${granted}; resume with the same grantee instead of ${target.openId}`);
|
|
1281
|
+
if (target &&
|
|
1282
|
+
(handoff?.target?.openId !== target.openId ||
|
|
1283
|
+
handoff.target.source !== target.source))
|
|
1284
|
+
journal.recordHandoff({ target });
|
|
1285
|
+
return target;
|
|
1286
|
+
}
|
|
1287
|
+
function recordGrant(journal, resource, grant) {
|
|
1288
|
+
// 重试只覆盖本次结果;首次建 Base 时 lark-cli 已授权的其他用户仍需保留在报告中。
|
|
1289
|
+
const alsoGrantedOpenId = journal.receipt.handoff?.[resource]?.alsoGrantedOpenId;
|
|
1290
|
+
journal.recordHandoff({
|
|
1291
|
+
[resource]: {
|
|
1292
|
+
...(alsoGrantedOpenId ? { alsoGrantedOpenId } : {}),
|
|
1293
|
+
...grant,
|
|
1294
|
+
},
|
|
1295
|
+
});
|
|
1296
|
+
}
|
|
1297
|
+
// ensureHandoff:只在 bot 建站且资源由本次 init 新建时授权;非致命,结果记入 receipt,已授权的不重复执行。
|
|
1298
|
+
function ensureHandoff(journal, resource, identity, grantAdmin, env, createResponse) {
|
|
1299
|
+
const { resources, handoff } = journal.receipt;
|
|
1300
|
+
const isBase = resource === 'base';
|
|
1301
|
+
const source = isBase ? resources.baseSource : resources.appSource;
|
|
1302
|
+
const token = isBase ? resources.baseToken : resources.appToken;
|
|
1303
|
+
if (identity !== 'bot' || source !== 'created' || !token)
|
|
1304
|
+
return;
|
|
1305
|
+
if (!pendingGrant(handoff?.[resource]))
|
|
1306
|
+
return;
|
|
1307
|
+
const target = handoffTarget(journal, grantAdmin, env);
|
|
1308
|
+
recordGrant(journal, resource, isBase
|
|
1309
|
+
? grantBaseAdmin(token, target, env, createResponse)
|
|
1310
|
+
: grantAppAdmin(token, target, env));
|
|
1311
|
+
}
|
|
1312
|
+
function handoffSummary(receipt, identity) {
|
|
1313
|
+
if (identity !== 'bot')
|
|
1314
|
+
return undefined;
|
|
1315
|
+
const grant = (created, recorded) => {
|
|
1316
|
+
if (!created)
|
|
1317
|
+
return { status: 'not_applicable' };
|
|
1318
|
+
if (!recorded)
|
|
1319
|
+
return {
|
|
1320
|
+
status: 'failed',
|
|
1321
|
+
hint: 'Admin handoff was not attempted; rerun the same init command with --resume.',
|
|
1322
|
+
};
|
|
1323
|
+
return recorded;
|
|
1324
|
+
};
|
|
1325
|
+
return {
|
|
1326
|
+
identity: 'bot',
|
|
1327
|
+
...(receipt.handoff?.target ? { target: receipt.handoff.target } : {}),
|
|
1328
|
+
base: {
|
|
1329
|
+
...grant(receipt.resources.baseSource === 'created', receipt.handoff?.base),
|
|
1330
|
+
perm: 'full_access',
|
|
1331
|
+
},
|
|
1332
|
+
app: {
|
|
1333
|
+
...grant(receipt.resources.appSource === 'created', receipt.handoff?.app),
|
|
1334
|
+
role: 'admin',
|
|
1335
|
+
},
|
|
1336
|
+
};
|
|
1337
|
+
}
|
|
1338
|
+
function handoffWarnings(handoff) {
|
|
1339
|
+
return [handoff.base, handoff.app].flatMap((grant) => grant.status === 'granted' || grant.status === 'not_applicable'
|
|
1340
|
+
? []
|
|
1341
|
+
: [grant.hint ?? `Admin handoff ${grant.status}`]);
|
|
1342
|
+
}
|
|
1343
|
+
function resumeHandoffOnly(journal, identity, grantAdmin, env, context) {
|
|
1344
|
+
const { resources } = journal.receipt;
|
|
1345
|
+
ensureHandoff(journal, 'base', identity, grantAdmin, env);
|
|
1346
|
+
ensureHandoff(journal, 'app', identity, grantAdmin, env);
|
|
1347
|
+
const handoff = handoffSummary(journal.receipt, identity);
|
|
1348
|
+
return {
|
|
1349
|
+
ok: true,
|
|
1350
|
+
warnings: handoffWarnings(handoff),
|
|
1351
|
+
initialization: {
|
|
1352
|
+
journal: journal.path,
|
|
1353
|
+
status: 'succeeded',
|
|
1354
|
+
resumed: true,
|
|
1355
|
+
handoffOnly: true,
|
|
1356
|
+
},
|
|
1357
|
+
handoff,
|
|
1358
|
+
environment: context.environment,
|
|
1359
|
+
workspace: context.workspace,
|
|
1360
|
+
...(context.larkProfile ? { larkProfile: context.larkProfile } : {}),
|
|
1361
|
+
...(resources.baseToken ? { baseToken: resources.baseToken } : {}),
|
|
1362
|
+
...(resources.appToken ? { appToken: resources.appToken } : {}),
|
|
1363
|
+
};
|
|
1364
|
+
}
|
|
1183
1365
|
//# sourceMappingURL=init.js.map
|
package/dist/init.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":"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"}
|
package/dist/lark-cli.d.ts
CHANGED
|
@@ -3,6 +3,15 @@ import type { CommandResult } from './types.js';
|
|
|
3
3
|
export declare function responseLogId(response: CommandResult): unknown;
|
|
4
4
|
export declare function isMissingLarkCommand(error: unknown, command: 'config' | 'auth'): boolean;
|
|
5
5
|
export declare function resolveLarkCliExecutable(env: NodeJS.ProcessEnv, cwd?: string, platform?: NodeJS.Platform): string;
|
|
6
|
+
declare const ALLOWED_IDENTITIES: readonly ['user', 'bot'];
|
|
7
|
+
export type LarkIdentity = (typeof ALLOWED_IDENTITIES)[number];
|
|
8
|
+
export declare function setExplicitIdentity(identity: string | undefined): void;
|
|
9
|
+
export declare function resetLarkIdentityForTests(): void;
|
|
10
|
+
export declare function resolveLarkIdentity(env: NodeJS.ProcessEnv, cwd?: string): LarkIdentity;
|
|
11
|
+
export declare function currentCliUserOpenId(env: NodeJS.ProcessEnv, cwd?: string): string | undefined;
|
|
12
|
+
/** Set from Commander's parsed command, never from raw argv or business inputs. */
|
|
13
|
+
export declare function setLarkCliAgentTrace(version: string, command: string): void;
|
|
14
|
+
export declare function larkCliEnvironment(env: NodeJS.ProcessEnv): NodeJS.ProcessEnv;
|
|
6
15
|
export interface RunLarkCliOptions {
|
|
7
16
|
passthroughFailures?: boolean;
|
|
8
17
|
}
|
|
@@ -15,4 +24,5 @@ export declare function resolveLarkProfileEnvironment(source: NodeJS.ProcessEnv,
|
|
|
15
24
|
export declare function runProjectLarkCli(args: string[], profile?: RuntimeProfile, larkProfile?: string): Promise<void>;
|
|
16
25
|
export declare function responseData(response: CommandResult): Record<string, unknown>;
|
|
17
26
|
export declare function runLarkCliOutput(method: 'GET' | 'POST', path: string, output: string, env: NodeJS.ProcessEnv, cwd?: string): void;
|
|
27
|
+
export {};
|
|
18
28
|
//# sourceMappingURL=lark-cli.d.ts.map
|
package/dist/lark-cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lark-cli.d.ts","sourceRoot":"","sources":["../src/lark-cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lark-cli.d.ts","sourceRoot":"","sources":["../src/lark-cli.ts"],"names":[],"mappings":"AAoCA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAKhD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAE9D;AAmCD,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,QAAQ,GAAG,MAAM,GACzB,OAAO,CAMT;AAsGD,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,GAAE,MAAsB,EAC3B,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CA8CR;AAGD,QAAA,MAAM,kBAAkB,YAAI,MAAM,EAAE,KAAK,CAAU,CAAC;AACpD,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAU/D,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAOtE;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CAIhD;AA6CD,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,CAAC,EAAE,MAAM,GACX,YAAY,CA0Bd;AAID,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,CAAC,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CASpB;AAyCD,mFAAmF;AACnF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAE3E;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAmB5E;AAED,MAAM,WAAW,iBAAiB;IAGhC,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,CAAC,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,GAAE,iBAAsB,GAC9B,aAAa,CA0Ff;AA+OD,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,GAClB,MAAM,CAAC,UAAU,CAcnB;AAYD,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,QAAQ,CAAC,EAAE,MAAM,EACjB,UAAU,CAAC,EAAE,MAAM,EACnB,cAAc,CAAC,EAAE,cAAc,GAC9B;IAAE,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAwDlD;AAkED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,GAAE,cAAuC,EAChD,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAK7E;AAED,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,KAAK,GAAG,MAAM,EACtB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,GAAG,CAAC,EAAE,MAAM,GACX,IAAI,CAqCN"}
|