MCPcopy Create free account
hub / github.com/apache/maka / openInteractiveUsageStoresForWrite

Function openInteractiveUsageStoresForWrite

packages/storage/src/usage-stores.ts:263–283  ·  view source on GitHub ↗
(
  lease: StorageRootLease<'interactive', 'write'>,
)

Source from the content-addressed store, hash-verified

261}
262
263export async function openInteractiveUsageStoresForWrite(
264 lease: StorageRootLease<'interactive', 'write'>,
265): Promise<InteractiveUsageStoresWriter> {
266 const existing = writerByLease.get(lease);
267 if (existing) return existing;
268 const opening = writerOpeningByLease.get(lease);
269 if (opening) return opening;
270 const pending = runWithStorageRootLease(lease, 'interactive', 'write', async (root) => {
271 const repos = await openRepos(root, true);
272 const stores = createWriterFacade(lease, repos.telemetry, repos.modelCalls, repos.pricing);
273 writers.add(stores);
274 writerByLease.set(lease, stores);
275 return stores;
276 });
277 writerOpeningByLease.set(lease, pending);
278 try {
279 return await pending;
280 } finally {
281 if (writerOpeningByLease.get(lease) === pending) writerOpeningByLease.delete(lease);
282 }
283}
284
285async function openRepos(
286 root: string,

Calls 7

runWithStorageRootLeaseFunction · 0.85
openReposFunction · 0.85
createWriterFacadeFunction · 0.70
getMethod · 0.65
addMethod · 0.65
setMethod · 0.65
deleteMethod · 0.65

Tested by 2

withUsageAuthorityFunction · 0.72
withCoordinatorFunction · 0.72