@cortexkit/antigravity-auth-core 3.0.13 → 3.0.14
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/common-auth-embedded/claustrum/enrollment.d.ts +9 -0
- package/dist/common-auth-embedded/claustrum/enrollment.js +15 -8
- package/dist/common-auth-embedded/claustrum/hub.js +86 -42
- package/dist/common-auth-embedded/fs/refresh-file-lock.js +16 -3
- package/dist/common-auth-embedded/source-output.json +18 -18
- package/dist/transform/gemini.d.ts.map +1 -1
- package/dist/transform/gemini.js +54 -6
- package/dist/transform/gemini.js.map +1 -1
- package/package.json +1 -1
|
@@ -107,6 +107,15 @@ export interface EnrollmentAncestorOptions {
|
|
|
107
107
|
* sticky ancestors are accepted. Windows uses the shared safe-parent policy.
|
|
108
108
|
*/
|
|
109
109
|
export declare function refuseWritableAncestor(parent: string, options?: EnrollmentAncestorOptions): Promise<void>;
|
|
110
|
+
/**
|
|
111
|
+
* Create `directory` owner-only, or make an existing one owner-only. POSIX:
|
|
112
|
+
* every component it creates gets mode 0700, a directory another user owns is
|
|
113
|
+
* refused, and one that group or others can reach is tightened to 0700.
|
|
114
|
+
* Windows: private-files creates missing components owner-only and verifies
|
|
115
|
+
* existing ones without modifying them. `what` names the directory in the
|
|
116
|
+
* ownership refusal.
|
|
117
|
+
*/
|
|
118
|
+
export declare function ensureClaustrumPrivateDirectory(directory: string, options?: EnrollmentAncestorOptions, what?: string): Promise<void>;
|
|
110
119
|
export declare function readClaustrumEnrollmentStatus(paths: ClaustrumEnrollmentPaths, proposedName: string): Promise<ClaustrumEnrollmentStatus>;
|
|
111
120
|
/**
|
|
112
121
|
* Resolve the host's account mode from its enrollment files. It never changes
|
|
@@ -358,8 +358,15 @@ export async function refuseWritableAncestor(parent, options = {}) {
|
|
|
358
358
|
throw new ClaustrumConsumerError('unsafe-file', `Claustrum enrollment parent refused: ${error.path} (${error.reason ?? error.code}). Use a folder that other users cannot write or replace.`);
|
|
359
359
|
}
|
|
360
360
|
}
|
|
361
|
-
/**
|
|
362
|
-
|
|
361
|
+
/**
|
|
362
|
+
* Create `directory` owner-only, or make an existing one owner-only. POSIX:
|
|
363
|
+
* every component it creates gets mode 0700, a directory another user owns is
|
|
364
|
+
* refused, and one that group or others can reach is tightened to 0700.
|
|
365
|
+
* Windows: private-files creates missing components owner-only and verifies
|
|
366
|
+
* existing ones without modifying them. `what` names the directory in the
|
|
367
|
+
* ownership refusal.
|
|
368
|
+
*/
|
|
369
|
+
export async function ensureClaustrumPrivateDirectory(directory, options = {}, what = 'enrollment directory') {
|
|
363
370
|
if (windowsPrivateFiles) {
|
|
364
371
|
await ensureWindowsDirectory(directory, false, ancestorPolicyOptions(options));
|
|
365
372
|
return;
|
|
@@ -368,14 +375,14 @@ async function ensurePrivateDirectory(directory, options = {}) {
|
|
|
368
375
|
const metadata = await stat(directory);
|
|
369
376
|
const uid = process.geteuid?.();
|
|
370
377
|
if (uid !== undefined && metadata.uid !== uid) {
|
|
371
|
-
throw new ClaustrumConsumerError('unsafe-file',
|
|
378
|
+
throw new ClaustrumConsumerError('unsafe-file', `Claustrum ${what} must be owned by the current user`);
|
|
372
379
|
}
|
|
373
380
|
if ((metadata.mode & 0o077) !== 0)
|
|
374
381
|
await chmod(directory, 0o700);
|
|
375
382
|
}
|
|
376
383
|
async function writeStateAtomic(path, state, ancestorOptions = {}) {
|
|
377
384
|
const parent = dirname(path);
|
|
378
|
-
await
|
|
385
|
+
await ensureClaustrumPrivateDirectory(parent, ancestorOptions);
|
|
379
386
|
await refuseWritableAncestor(parent, ancestorOptions);
|
|
380
387
|
const bytes = `${JSON.stringify(state)}\n`;
|
|
381
388
|
if (Buffer.byteLength(bytes) > ENROLLMENT_FILE_MAX_BYTES) {
|
|
@@ -578,7 +585,7 @@ export class ClaustrumEnrollmentManager {
|
|
|
578
585
|
return statusFromState(blocked);
|
|
579
586
|
}
|
|
580
587
|
async reconcile() {
|
|
581
|
-
await
|
|
588
|
+
await ensureClaustrumPrivateDirectory(dirname(this.#paths.statePath), this.#ancestorOptions);
|
|
582
589
|
const lock = await acquireRefreshFileLock({
|
|
583
590
|
name: 'ceremony',
|
|
584
591
|
path: this.#paths.statePath,
|
|
@@ -715,7 +722,7 @@ export class ClaustrumEnrollmentManager {
|
|
|
715
722
|
}
|
|
716
723
|
// The vault returns the token exactly once: it reaches disk before the
|
|
717
724
|
// pending metadata (and its secret) is replaced.
|
|
718
|
-
await
|
|
725
|
+
await ensureClaustrumPrivateDirectory(dirname(this.#paths.tokenPath), this.#ancestorOptions);
|
|
719
726
|
await refuseWritableAncestor(dirname(this.#paths.tokenPath), this.#ancestorOptions);
|
|
720
727
|
await this.#writeTokenFile(this.#paths.tokenPath, {
|
|
721
728
|
token: outcome.token,
|
|
@@ -754,7 +761,7 @@ export class ClaustrumEnrollmentManager {
|
|
|
754
761
|
}
|
|
755
762
|
/** Reset local terminal metadata without connecting to the credential daemon. */
|
|
756
763
|
export async function resetClaustrumEnrollmentState(paths, proposedName) {
|
|
757
|
-
await
|
|
764
|
+
await ensureClaustrumPrivateDirectory(dirname(paths.statePath));
|
|
758
765
|
const lock = await acquireRefreshFileLock({
|
|
759
766
|
name: 'ceremony',
|
|
760
767
|
path: paths.statePath,
|
|
@@ -817,7 +824,7 @@ async function removeIfPresent(path) {
|
|
|
817
824
|
* wrong owner, not owner-only) refuses with `unsafe-file` and both files stay.
|
|
818
825
|
*/
|
|
819
826
|
export async function disconnectClaustrumEnrollment(paths, proposedName) {
|
|
820
|
-
await
|
|
827
|
+
await ensureClaustrumPrivateDirectory(dirname(paths.statePath));
|
|
821
828
|
const lock = await acquireRefreshFileLock({
|
|
822
829
|
// The same lock as the ceremony, so a token written by a concurrent
|
|
823
830
|
// reconcile() can never land after this removes the files.
|
|
@@ -12,12 +12,13 @@
|
|
|
12
12
|
// never replaces a view another process committed after this hub listed.
|
|
13
13
|
import { createHash } from 'node:crypto';
|
|
14
14
|
import { readdir, stat } from 'node:fs/promises';
|
|
15
|
-
import { join } from 'node:path';
|
|
15
|
+
import { dirname, join } from 'node:path';
|
|
16
16
|
import { createLogger } from '../logger/index.js';
|
|
17
17
|
import { combineAbortSignals } from '../util/any-signal.js';
|
|
18
18
|
import { ClaustrumUnreachableError } from './availability.js';
|
|
19
19
|
import { createHubMember, DEFAULT_CONNECT_TIMEOUT_MS, } from './consumer.js';
|
|
20
20
|
import { ClaustrumScopedCustody, } from './custody.js';
|
|
21
|
+
import { ensureClaustrumPrivateDirectory } from './enrollment.js';
|
|
21
22
|
import { ClaustrumConsumerError } from './errors.js';
|
|
22
23
|
import { DEFAULT_ROUTE_PREFIX, decodedVaultRoster, forgetPendingVaultDiscovery, isVaultRosterLockRefusal, readVaultRoster, refreshVaultRoster, vaultRosterSeed, } from './roster.js';
|
|
23
24
|
import { drainShutdown, shutdownWarning } from './shutdown.js';
|
|
@@ -585,10 +586,11 @@ export class ClaustrumDiscoveryHub {
|
|
|
585
586
|
}
|
|
586
587
|
/**
|
|
587
588
|
* Read each member's base view, list once, then commit each member's share
|
|
588
|
-
* of the listing to its roster
|
|
589
|
-
*
|
|
590
|
-
*
|
|
591
|
-
*
|
|
589
|
+
* of the listing to its roster (all members at once, each under its own
|
|
590
|
+
* roster's locks), push it into the member, and retain the union. Each
|
|
591
|
+
* publication step checks first that the generation it started in is
|
|
592
|
+
* still current. A member that this list did not commit is marked pending,
|
|
593
|
+
* so a later tick lists again.
|
|
592
594
|
*/
|
|
593
595
|
async #discover(run) {
|
|
594
596
|
if (!(await this.#readAuthority()))
|
|
@@ -598,12 +600,17 @@ export class ClaustrumDiscoveryHub {
|
|
|
598
600
|
run.generation = generation;
|
|
599
601
|
if (!this.#live(generation))
|
|
600
602
|
return undefined;
|
|
603
|
+
// Folders that could not be made owner-only fail every member's commit,
|
|
604
|
+
// as an unreadable base fails its member's: each is marked pending.
|
|
605
|
+
const folders = await this.#ensureRosterDirectories().then(() => undefined, (error) => error instanceof Error ? error : new Error(String(error)));
|
|
601
606
|
// What each member's file held before the list. Another process may
|
|
602
607
|
// commit while this list runs; the base-view rule then keeps its newer
|
|
603
|
-
// roster rather than replacing it with this older listing.
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
608
|
+
// roster rather than replacing it with this older listing. Each file is
|
|
609
|
+
// read on its own, so the reads run together.
|
|
610
|
+
const bases = new Map(await Promise.all([...this.#members.values()].map(async (entry) => [
|
|
611
|
+
entry,
|
|
612
|
+
await readVaultRoster(entry.path).then((file) => (file ? { file } : {}), (error) => error instanceof Error ? error : new Error(String(error))),
|
|
613
|
+
])));
|
|
607
614
|
if (!this.#live(generation))
|
|
608
615
|
return undefined;
|
|
609
616
|
let inventory;
|
|
@@ -619,43 +626,28 @@ export class ClaustrumDiscoveryHub {
|
|
|
619
626
|
this.#markPending(entry);
|
|
620
627
|
throw error;
|
|
621
628
|
}
|
|
629
|
+
if (!this.#live(generation))
|
|
630
|
+
return undefined;
|
|
631
|
+
// Every member's commit starts at once and none waits for another: each
|
|
632
|
+
// touches only its own roster file and takes only that file's locks (its
|
|
633
|
+
// discovery lease, then its write lock, as `refreshVaultRoster` always
|
|
634
|
+
// does), so no commit ever holds two members' locks and no order between
|
|
635
|
+
// members is needed. The results are then published in member order.
|
|
636
|
+
const members = this.#open();
|
|
637
|
+
const commits = await Promise.all(members.map((entry) => entry.hooks && !entry.closed
|
|
638
|
+
? this.#commit(entry, entry.hooks, inventory, folders ?? bases.get(entry), generation)
|
|
639
|
+
: undefined));
|
|
640
|
+
if (!this.#live(generation))
|
|
641
|
+
return undefined;
|
|
622
642
|
const errors = new Map();
|
|
623
643
|
let complete = true;
|
|
624
|
-
for (const entry of
|
|
625
|
-
if (!this.#live(generation))
|
|
626
|
-
return undefined;
|
|
644
|
+
for (const [index, entry] of members.entries()) {
|
|
627
645
|
const hooks = entry.hooks;
|
|
628
|
-
|
|
646
|
+
const commit = commits[index];
|
|
647
|
+
if (!hooks || !commit)
|
|
629
648
|
continue;
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
credentials: inventory.credentials.filter((credential) => credential.member === entry.provider),
|
|
633
|
-
skipped: inventory.skipped.filter((record) => record.member === entry.provider),
|
|
634
|
-
};
|
|
635
|
-
const base = bases.get(entry);
|
|
636
|
-
let roster;
|
|
637
|
-
try {
|
|
638
|
-
if (!base)
|
|
639
|
-
throw closed('Claustrum hub member has no base view');
|
|
640
|
-
if (base instanceof Error)
|
|
641
|
-
throw base;
|
|
642
|
-
// A member's first roster under this key carries the declines and
|
|
643
|
-
// order of its newest roster under an older key.
|
|
644
|
-
const seed = base.file ? undefined : await this.#seed(entry);
|
|
645
|
-
roster = await refreshVaultRoster({
|
|
646
|
-
path: entry.path,
|
|
647
|
-
custody: { discover: async () => share },
|
|
648
|
-
// Generation g's commit checks that g is still current, not only
|
|
649
|
-
// that vault mode is on, so off-then-on cannot let it into g+1.
|
|
650
|
-
isActive: () => this.#live(generation) && this.#active === true,
|
|
651
|
-
signal: generation.controller.signal,
|
|
652
|
-
projection: () => ({ ...hooks.projection(), ...(seed && { seed }) }),
|
|
653
|
-
listedOver: { view: base.file?.view },
|
|
654
|
-
});
|
|
655
|
-
}
|
|
656
|
-
catch (error) {
|
|
657
|
-
if (!this.#live(generation))
|
|
658
|
-
return undefined;
|
|
649
|
+
if ('error' in commit) {
|
|
650
|
+
const { error } = commit;
|
|
659
651
|
complete = false;
|
|
660
652
|
this.#markPending(entry);
|
|
661
653
|
// Another writer holding or taking this roster's locks is not this
|
|
@@ -668,6 +660,7 @@ export class ClaustrumDiscoveryHub {
|
|
|
668
660
|
errors.set(entry.provider, error);
|
|
669
661
|
continue;
|
|
670
662
|
}
|
|
663
|
+
const { roster } = commit;
|
|
671
664
|
if (!this.#live(generation))
|
|
672
665
|
return undefined;
|
|
673
666
|
// Not this list's roster: vault mode went off, the file was removed
|
|
@@ -707,6 +700,57 @@ export class ClaustrumDiscoveryHub {
|
|
|
707
700
|
this.#discoveredAt = (this.#options.now ?? Date.now)();
|
|
708
701
|
return { errors };
|
|
709
702
|
}
|
|
703
|
+
/**
|
|
704
|
+
* Commit one member's share of `inventory` to its roster file over the
|
|
705
|
+
* base view read before the list. Every failure is returned, not thrown,
|
|
706
|
+
* so one member's failure leaves the other members' commits running.
|
|
707
|
+
*/
|
|
708
|
+
async #commit(entry, hooks, inventory, base, generation) {
|
|
709
|
+
const share = {
|
|
710
|
+
...inventory,
|
|
711
|
+
credentials: inventory.credentials.filter((credential) => credential.member === entry.provider),
|
|
712
|
+
skipped: inventory.skipped.filter((record) => record.member === entry.provider),
|
|
713
|
+
};
|
|
714
|
+
try {
|
|
715
|
+
if (!base)
|
|
716
|
+
throw closed('Claustrum hub member has no base view');
|
|
717
|
+
if (base instanceof Error)
|
|
718
|
+
throw base;
|
|
719
|
+
// A member's first roster under this key carries the declines and
|
|
720
|
+
// order of its newest roster under an older key.
|
|
721
|
+
const seed = base.file ? undefined : await this.#seed(entry);
|
|
722
|
+
const roster = await refreshVaultRoster({
|
|
723
|
+
path: entry.path,
|
|
724
|
+
custody: { discover: async () => share },
|
|
725
|
+
// Generation g's commit checks that g is still current, not only
|
|
726
|
+
// that vault mode is on, so off-then-on cannot let it into g+1.
|
|
727
|
+
isActive: () => this.#live(generation) && this.#active === true,
|
|
728
|
+
signal: generation.controller.signal,
|
|
729
|
+
projection: () => ({ ...hooks.projection(), ...(seed && { seed }) }),
|
|
730
|
+
listedOver: { view: base.file?.view },
|
|
731
|
+
});
|
|
732
|
+
return { roster };
|
|
733
|
+
}
|
|
734
|
+
catch (error) {
|
|
735
|
+
return { error };
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
/**
|
|
739
|
+
* Create the roster folders under the state folder (`rosters`, this host
|
|
740
|
+
* generation and this key) owner-only, as every other Claustrum private
|
|
741
|
+
* folder is: 0700 on POSIX, tightening a folder an earlier release left
|
|
742
|
+
* open, and private-files on Windows. Each is handled on its own so an
|
|
743
|
+
* existing open parent is tightened too. Without this, the first roster
|
|
744
|
+
* lock would create them with the process umask, usually 0755.
|
|
745
|
+
*/
|
|
746
|
+
async #ensureRosterDirectories() {
|
|
747
|
+
for (const directory of [
|
|
748
|
+
dirname(this.#generationDirectory),
|
|
749
|
+
this.#generationDirectory,
|
|
750
|
+
join(this.#generationDirectory, this.#key),
|
|
751
|
+
])
|
|
752
|
+
await ensureClaustrumPrivateDirectory(directory, {}, 'roster directory');
|
|
753
|
+
}
|
|
710
754
|
/**
|
|
711
755
|
* The preferences a member's first roster under this key starts from: the
|
|
712
756
|
* declines and order of the newest roster of the same host generation and
|
|
@@ -358,8 +358,19 @@ export async function acquireRefreshFileLockWithClock(options) {
|
|
|
358
358
|
return 'missing';
|
|
359
359
|
throw error;
|
|
360
360
|
}
|
|
361
|
-
if (windowsPrivateFiles)
|
|
362
|
-
|
|
361
|
+
if (windowsPrivateFiles) {
|
|
362
|
+
try {
|
|
363
|
+
await verifyPrivate(evictPath, 'directory', true);
|
|
364
|
+
}
|
|
365
|
+
catch (error) {
|
|
366
|
+
// The marker's holder can remove it between the stat above and this
|
|
367
|
+
// check. Absence means the marker is free, as when the stat finds
|
|
368
|
+
// nothing; every other refusal still escapes.
|
|
369
|
+
if (error.code === 'ENOENT')
|
|
370
|
+
return 'missing';
|
|
371
|
+
throw error;
|
|
372
|
+
}
|
|
373
|
+
}
|
|
363
374
|
if (evictStat.mtimeMs + EVICT_TTL > now())
|
|
364
375
|
return 'fresh';
|
|
365
376
|
if (options.onStep)
|
|
@@ -386,11 +397,13 @@ export async function acquireRefreshFileLockWithClock(options) {
|
|
|
386
397
|
catch (error) {
|
|
387
398
|
if (error.code === 'EEXIST') {
|
|
388
399
|
if (windowsPrivateFiles) {
|
|
389
|
-
await verifyPrivate(evictPath, 'directory', true);
|
|
390
400
|
try {
|
|
401
|
+
await verifyPrivate(evictPath, 'directory', true);
|
|
391
402
|
await readPrivateText(evictOwnerPath, true);
|
|
392
403
|
}
|
|
393
404
|
catch (ownerError) {
|
|
405
|
+
// A marker removed by its holder after the failed create is free:
|
|
406
|
+
// report it as unavailable for now so the caller retries.
|
|
394
407
|
if (ownerError.code !== 'ENOENT')
|
|
395
408
|
throw ownerError;
|
|
396
409
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schema": 1,
|
|
3
3
|
"package": "@cortexkit/common-auth",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.28.0",
|
|
5
5
|
"artifactStatus": "published",
|
|
6
6
|
"publicRoots": {
|
|
7
7
|
"./store": {
|
|
@@ -37,15 +37,15 @@
|
|
|
37
37
|
"import": "./dist/pi-slot/index.js"
|
|
38
38
|
}
|
|
39
39
|
},
|
|
40
|
-
"input": "tools/common-auth-build/inputs/cortexkit-common-auth-0.
|
|
41
|
-
"tarballSha256": "
|
|
42
|
-
"sri": "sha512-
|
|
40
|
+
"input": "tools/common-auth-build/inputs/cortexkit-common-auth-0.28.0.tgz",
|
|
41
|
+
"tarballSha256": "8070e3c1882238d78ac5e955fb140484e08d9f97ed0f2d5d40f35928c60fbbc5",
|
|
42
|
+
"sri": "sha512-PRyppMdE3y8dTzF3iQHcFruo5ksPPhgSQExe7g4Ij/oPynDLbalSQqBaInKdSV/v5qyrY0iJs/D0Yu7fbWh3NQ==",
|
|
43
43
|
"canonicalFiles": 147,
|
|
44
|
-
"canonicalBytes":
|
|
44
|
+
"canonicalBytes": 985409,
|
|
45
45
|
"generator": {
|
|
46
46
|
"path": "packages/opencode/scripts/embed-common-auth.ts",
|
|
47
47
|
"version": 3,
|
|
48
|
-
"sha256": "
|
|
48
|
+
"sha256": "32e05acc65fbec2114dce8a43e29e3eca2d6f02594f20e3f6e7bc3b1ec9b8aa3"
|
|
49
49
|
},
|
|
50
50
|
"files": [
|
|
51
51
|
{
|
|
@@ -259,17 +259,17 @@
|
|
|
259
259
|
{
|
|
260
260
|
"source": "package/dist/claustrum/enrollment.d.ts",
|
|
261
261
|
"output": "claustrum/enrollment.d.ts",
|
|
262
|
-
"bytes":
|
|
263
|
-
"sourceSha256": "
|
|
264
|
-
"outputSha256": "
|
|
262
|
+
"bytes": 8530,
|
|
263
|
+
"sourceSha256": "8e44065db1b28f930f01b9c267aacb23e2f4f9d5d7d358b815fdc8c5080450ff",
|
|
264
|
+
"outputSha256": "8e44065db1b28f930f01b9c267aacb23e2f4f9d5d7d358b815fdc8c5080450ff",
|
|
265
265
|
"transform": "verbatim"
|
|
266
266
|
},
|
|
267
267
|
{
|
|
268
268
|
"source": "package/dist/claustrum/enrollment.js",
|
|
269
269
|
"output": "claustrum/enrollment.js",
|
|
270
|
-
"bytes":
|
|
271
|
-
"sourceSha256": "
|
|
272
|
-
"outputSha256": "
|
|
270
|
+
"bytes": 36868,
|
|
271
|
+
"sourceSha256": "7dab3edbc03542bcd75578449f6c3b92959671f0669332c62b2ad4525aa9c829",
|
|
272
|
+
"outputSha256": "7dab3edbc03542bcd75578449f6c3b92959671f0669332c62b2ad4525aa9c829",
|
|
273
273
|
"transform": "verbatim"
|
|
274
274
|
},
|
|
275
275
|
{
|
|
@@ -315,9 +315,9 @@
|
|
|
315
315
|
{
|
|
316
316
|
"source": "package/dist/claustrum/hub.js",
|
|
317
317
|
"output": "claustrum/hub.js",
|
|
318
|
-
"bytes":
|
|
319
|
-
"sourceSha256": "
|
|
320
|
-
"outputSha256": "
|
|
318
|
+
"bytes": 43086,
|
|
319
|
+
"sourceSha256": "f156151cba0a628828a9c28cdeea757a4c959e4398a79c423001b2b2857c2ec7",
|
|
320
|
+
"outputSha256": "f156151cba0a628828a9c28cdeea757a4c959e4398a79c423001b2b2857c2ec7",
|
|
321
321
|
"transform": "verbatim"
|
|
322
322
|
},
|
|
323
323
|
{
|
|
@@ -603,9 +603,9 @@
|
|
|
603
603
|
{
|
|
604
604
|
"source": "package/dist/fs/refresh-file-lock.js",
|
|
605
605
|
"output": "fs/refresh-file-lock.js",
|
|
606
|
-
"bytes":
|
|
607
|
-
"sourceSha256": "
|
|
608
|
-
"outputSha256": "
|
|
606
|
+
"bytes": 30833,
|
|
607
|
+
"sourceSha256": "c0e4de79b0c0bb8fac09b13c5cf861eaa008434b336e87ce761d7f0713203a90",
|
|
608
|
+
"outputSha256": "c0e4de79b0c0bb8fac09b13c5cf861eaa008434b336e87ce761d7f0713203a90",
|
|
609
609
|
"transform": "verbatim"
|
|
610
610
|
},
|
|
611
611
|
{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../src/transform/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,YAAY,EACb,MAAM,YAAY,CAAA;AAkDnB,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,mCAAmC,CAAC,EAAE,OAAO,CAAA;IAC7C,4FAA4F;IAC5F,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;
|
|
1
|
+
{"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../src/transform/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,YAAY,EACb,MAAM,YAAY,CAAA;AAkDnB,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,mCAAmC,CAAC,EAAE,OAAO,CAAA;IAC7C,4FAA4F;IAC5F,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B;AAwOD,wBAAgB,cAAc,CAC5B,MAAM,EAAE,OAAO,EACf,OAAO,GAAE,mBAAwB,GAChC,OAAO,CA0LT;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAGpD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAErD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAG7D;AAED;;GAEG;AACH,wBAAgB,0BAA0B,CACxC,eAAe,EAAE,OAAO,EACxB,aAAa,EAAE,YAAY,GAC1B,cAAc,CAKhB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,eAAe,EAAE,OAAO,EACxB,cAAc,CAAC,EAAE,MAAM,GACtB,cAAc,CAOhB;AAED;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AAkBD;;;;;;;;;GASG;AACH,wBAAgB,0BAA0B,IAAI,WAAW,CAcxD;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,cAAc,EACvB,aAAa,GAAE,mBAAwB,GACtC;IAAE,gBAAgB,EAAE,MAAM,CAAC;IAAC,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAAE,CA4I5D;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAA;IACb,qEAAqE;IACrE,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,kEAAkE;IAClE,iBAAiB,CAAC,EAAE,YAAY,CAAA;IAChC,oDAAoD;IACpD,kBAAkB,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,OAAO,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC3E,kCAAkC;IAClC,YAAY,CAAC,EAAE,kBAAkB,CAAA;CAClC;AAED,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,EAAE,MAAM,CAAA;IACxB,kBAAkB,EAAE,MAAM,EAAE,CAAA;IAC5B,qDAAqD;IACrD,oBAAoB,EAAE,MAAM,CAAA;IAC5B,uFAAuF;IACvF,oBAAoB,EAAE,MAAM,CAAA;CAC7B;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,sBAAsB,GAC9B,qBAAqB,CAsEvB;AAED,MAAM,WAAW,eAAe;IAC9B,oBAAoB,EAAE,MAAM,CAAA;IAC5B,oBAAoB,EAAE,MAAM,CAAA;CAC7B;AAuCD,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,cAAc,GACtB,eAAe,CA2GjB"}
|
package/dist/transform/gemini.js
CHANGED
|
@@ -58,6 +58,41 @@ function isSchemaObject(value) {
|
|
|
58
58
|
function describeValue(value) {
|
|
59
59
|
return JSON.stringify(value) ?? String(value);
|
|
60
60
|
}
|
|
61
|
+
const ALLOWED_JSON_SCHEMA_TYPES = new Set([
|
|
62
|
+
'string',
|
|
63
|
+
'number',
|
|
64
|
+
'integer',
|
|
65
|
+
'boolean',
|
|
66
|
+
'array',
|
|
67
|
+
'object',
|
|
68
|
+
'null',
|
|
69
|
+
]);
|
|
70
|
+
function normalizeNullableTypeArray(schema) {
|
|
71
|
+
if (!Array.isArray(schema.type))
|
|
72
|
+
return schema;
|
|
73
|
+
if (schema.type.length === 0 ||
|
|
74
|
+
schema.type.some((type) => typeof type !== 'string' ||
|
|
75
|
+
!ALLOWED_JSON_SCHEMA_TYPES.has(type.toLowerCase()))) {
|
|
76
|
+
return schema;
|
|
77
|
+
}
|
|
78
|
+
const types = [
|
|
79
|
+
...new Set(schema.type.map((type) => type.toLowerCase())),
|
|
80
|
+
];
|
|
81
|
+
const nonNull = types.filter((type) => type !== 'null');
|
|
82
|
+
if (nonNull.length > 1) {
|
|
83
|
+
// Leave genuine multi-type unions to the existing provider validation.
|
|
84
|
+
// Throwing here would classify a schema defect as a transport failure and
|
|
85
|
+
// penalize accounts; choosing a branch would silently narrow the tool.
|
|
86
|
+
return schema;
|
|
87
|
+
}
|
|
88
|
+
return {
|
|
89
|
+
...schema,
|
|
90
|
+
type: nonNull[0] ?? 'null',
|
|
91
|
+
...(nonNull.length === 1 && types.includes('null')
|
|
92
|
+
? { nullable: true }
|
|
93
|
+
: {}),
|
|
94
|
+
};
|
|
95
|
+
}
|
|
61
96
|
function sameSchemaValue(left, right) {
|
|
62
97
|
if (left === right)
|
|
63
98
|
return true;
|
|
@@ -81,18 +116,30 @@ function mergeSchemaAllOf(schema, hints) {
|
|
|
81
116
|
const descriptions = [];
|
|
82
117
|
const metadata = {};
|
|
83
118
|
let unambiguous = allOf.length > 0;
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
119
|
+
let allBranchesNullable = true;
|
|
120
|
+
const isBaseContributing = base.type !== undefined ||
|
|
121
|
+
base.nullable !== undefined ||
|
|
122
|
+
base.properties !== undefined;
|
|
123
|
+
for (const rawBranch of branches) {
|
|
124
|
+
if (!isSchemaObject(rawBranch)) {
|
|
125
|
+
unambiguous = false;
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
128
|
+
const branch = normalizeNullableTypeArray(rawBranch);
|
|
129
|
+
if ((branch.type !== undefined &&
|
|
130
|
+
String(branch.type).toUpperCase() !== 'OBJECT') ||
|
|
88
131
|
(branch.properties !== undefined && !isSchemaObject(branch.properties))) {
|
|
89
132
|
unambiguous = false;
|
|
90
133
|
break;
|
|
91
134
|
}
|
|
135
|
+
const isContributing = rawBranch !== base || isBaseContributing;
|
|
136
|
+
if (isContributing && branch.nullable !== true) {
|
|
137
|
+
allBranchesNullable = false;
|
|
138
|
+
}
|
|
92
139
|
// Metadata comes from the first occurrence; dropped keywords cannot make
|
|
93
140
|
// otherwise compatible object intersections lose their later properties.
|
|
94
141
|
for (const [key, value] of Object.entries(branch)) {
|
|
95
|
-
if (!['properties', 'required', 'description'].includes(key) &&
|
|
142
|
+
if (!['properties', 'required', 'description', 'nullable'].includes(key) &&
|
|
96
143
|
!Object.hasOwn(metadata, key))
|
|
97
144
|
metadata[key] = value;
|
|
98
145
|
}
|
|
@@ -116,6 +163,7 @@ function mergeSchemaAllOf(schema, hints) {
|
|
|
116
163
|
...metadata,
|
|
117
164
|
type: 'object',
|
|
118
165
|
properties,
|
|
166
|
+
...(allBranchesNullable ? { nullable: true } : {}),
|
|
119
167
|
...(required.size ? { required: [...required] } : {}),
|
|
120
168
|
...(descriptions.length ? { description: descriptions.join(' ') } : {}),
|
|
121
169
|
};
|
|
@@ -200,7 +248,7 @@ export function toGeminiSchema(schema, options = {}) {
|
|
|
200
248
|
return schema;
|
|
201
249
|
}
|
|
202
250
|
const numericConstraintHints = [];
|
|
203
|
-
const inputSchema = mergeSchemaAllOf(schema, numericConstraintHints);
|
|
251
|
+
const inputSchema = normalizeNullableTypeArray(mergeSchemaAllOf(schema, numericConstraintHints));
|
|
204
252
|
const schemaType = typeof inputSchema.type === 'string'
|
|
205
253
|
? inputSchema.type.toUpperCase()
|
|
206
254
|
: undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../src/transform/gemini.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../src/transform/gemini.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED