@yigemo/choosefire 0.3.1 → 0.4.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/dist/commands.js CHANGED
@@ -2,7 +2,7 @@ import { getBooleanFlag, getRepeatedStringFlag, getStringFlag, } from './args.js
2
2
  import { authStatus, login, logout } from './auth.js';
3
3
  import { getAccountFinancialWorkspaceActivity, getAccountFinancialWorkspaceSnapshot, getAccountFinancialWorkspaceSummary, initializeAccountFinancialWorkspace, recordAccountFinancialWorkspaceFact, requestChooseFire, } from './http.js';
4
4
  import { randomUUID } from 'node:crypto';
5
- import { getFamilyWealthV2Activity, getFamilyWealthV2Overview, getFamilyWealthV2AssetAccountDetail, getFamilyWealthV2Summary, archiveFamilyWealthV2AssetAccount, archiveFamilyWealthV2Holding, createFamilyWealthV2AssetAccount, createFamilyWealthV2Holding, updateFamilyWealthV2AssetAccount, updateFamilyWealthV2Holding, appendFamilyWealthV2Valuation, replaceFamilyWealthV2Classification, recordFamilyWealthV2ExternalCashFlow, getFamilyWealthV2AccountTimeline, issueFamilyWealthV2McpDelegation, initializeFamilyWealthV2, revokeFamilyWealthV2McpDelegation, } from './family-wealth-v2-http.js';
5
+ import { getFamilyWealthV2Activity, getFamilyWealthV2Overview, getFamilyWealthV2AssetAccountDetail, getFamilyWealthV2Summary, archiveFamilyWealthV2AssetAccount, archiveFamilyWealthV2Holding, createFamilyWealthV2AssetAccount, createFamilyWealthV2Holding, updateFamilyWealthV2AssetAccount, updateFamilyWealthV2Holding, appendFamilyWealthV2Valuation, replaceFamilyWealthV2Classification, recordFamilyWealthV2ExternalCashFlow, createFamilyWealthV2InvestmentTransaction, updateFamilyWealthV2InvestmentTransaction, archiveFamilyWealthV2InvestmentTransaction, getFamilyWealthV2AccountActivityTimeline, issueFamilyWealthV2McpDelegation, initializeFamilyWealthV2, revokeFamilyWealthV2McpDelegation, } from './family-wealth-v2-http.js';
6
6
  export async function runCommand(config, parsed, dependencies = {}) {
7
7
  const [resource, action, maybeId] = parsed.positionals;
8
8
  if (!resource || resource === 'help' || getBooleanFlag(parsed.flags, 'help')) {
@@ -364,10 +364,60 @@ async function runTransactionCommand(config, action, parsed, dependencies) {
364
364
  const result = await recordFamilyWealthV2ExternalCashFlow(config, command, dependencies);
365
365
  return getBooleanFlag(parsed.flags, 'json') ? result : formatMutationReceipt(result);
366
366
  }
367
+ if (action === 'create' || action === 'update') {
368
+ assertWealthFlags(parsed, [
369
+ 'commandId', 'idempotencyKey', 'expectedWorkspaceVersion', 'transactionId',
370
+ 'accountId', 'holdingId', 'type', 'amount', 'currency', 'quantity', 'price',
371
+ 'tradeAt', 'settledAt', 'quality',
372
+ ...(action === 'update' ? ['expectedObjectRevision'] : []),
373
+ ]);
374
+ const commandId = getStringFlag(parsed.flags, 'commandId') ?? randomUUID();
375
+ const transactionId = requireFlag(parsed, 'transactionId', '--transaction-id');
376
+ const transaction = readInvestmentTransactionDraft(parsed);
377
+ const common = {
378
+ commandId,
379
+ idempotencyKey: requireFlag(parsed, 'idempotencyKey', '--idempotency-key'),
380
+ expectedWorkspaceVersion: requiredIntegerFlag(parsed, 'expectedWorkspaceVersion'),
381
+ source: { clientId: 'choosefire-cli', channel: 'cli' },
382
+ payload: { transactionId, transaction },
383
+ };
384
+ const result = action === 'create'
385
+ ? await createFamilyWealthV2InvestmentTransaction(config, {
386
+ ...common,
387
+ kind: 'investment_transaction.create.v2',
388
+ expectedObjectRevision: null,
389
+ }, dependencies)
390
+ : await updateFamilyWealthV2InvestmentTransaction(config, {
391
+ ...common,
392
+ kind: 'investment_transaction.update.v2',
393
+ expectedObjectRevision: requiredIntegerFlag(parsed, 'expectedObjectRevision'),
394
+ }, dependencies);
395
+ return getBooleanFlag(parsed.flags, 'json') ? result : formatMutationReceipt(result);
396
+ }
397
+ if (action === 'archive') {
398
+ assertWealthFlags(parsed, [
399
+ 'commandId', 'idempotencyKey', 'expectedWorkspaceVersion',
400
+ 'expectedObjectRevision', 'transactionId', 'reason',
401
+ ]);
402
+ const commandId = getStringFlag(parsed.flags, 'commandId') ?? randomUUID();
403
+ const result = await archiveFamilyWealthV2InvestmentTransaction(config, {
404
+ kind: 'investment_transaction.archive.v2',
405
+ commandId,
406
+ idempotencyKey: requireFlag(parsed, 'idempotencyKey', '--idempotency-key'),
407
+ expectedWorkspaceVersion: requiredIntegerFlag(parsed, 'expectedWorkspaceVersion'),
408
+ expectedObjectRevision: requiredIntegerFlag(parsed, 'expectedObjectRevision'),
409
+ source: { clientId: 'choosefire-cli', channel: 'cli' },
410
+ payload: {
411
+ transactionId: requireFlag(parsed, 'transactionId', '--transaction-id'),
412
+ reason: requireFlag(parsed, 'reason', '--reason'),
413
+ },
414
+ }, dependencies);
415
+ return getBooleanFlag(parsed.flags, 'json') ? result : formatMutationReceipt(result);
416
+ }
367
417
  if (action === 'timeline') {
368
- assertWealthFlags(parsed, ['accountId']);
369
- const result = await getFamilyWealthV2AccountTimeline(config, requireFlag(parsed, 'accountId', '--account-id'), dependencies);
370
- return getBooleanFlag(parsed.flags, 'json') ? result : formatAccountTimeline(result);
418
+ assertWealthFlags(parsed, ['accountId', 'holdingId']);
419
+ const result = await getFamilyWealthV2AccountActivityTimeline(config, requireFlag(parsed, 'accountId', '--account-id'), getStringFlag(parsed.flags, 'holdingId') ?? null, dependencies);
420
+ return getBooleanFlag(parsed.flags, 'json') ? result : formatAccountActivityTimeline(result);
371
421
  }
372
422
  throw new Error(`Unknown transaction command: ${action || ''}`);
373
423
  }
@@ -422,14 +472,43 @@ function formatWealthOverview(overview) {
422
472
  overview.warnings.length > 0 ? `提示:${overview.warnings.join(', ')}` : '数据状态:完整',
423
473
  ].join('\n');
424
474
  }
425
- function formatAccountTimeline(timeline) {
426
- if (timeline.cashFlows.length === 0) {
427
- return `账户:${timeline.accountId}\n现金流:暂无\n工作区版本:${timeline.workspaceVersion}`;
475
+ function readInvestmentTransactionDraft(parsed) {
476
+ const type = requireFlag(parsed, 'type', '--type');
477
+ const isTrade = ['buy', 'sell', 'subscribe', 'redeem'].includes(type);
478
+ const holdingId = getStringFlag(parsed.flags, 'holdingId') ?? null;
479
+ const quantity = getStringFlag(parsed.flags, 'quantity') ?? null;
480
+ const price = getStringFlag(parsed.flags, 'price') ?? null;
481
+ if (isTrade && (!holdingId || !quantity || !price)) {
482
+ throw new Error('Trade transactions require --holding-id, --quantity, and --price');
483
+ }
484
+ if (!isTrade && (quantity !== null || price !== null)) {
485
+ throw new Error('--quantity and --price are only valid for buy, sell, subscribe, and redeem');
486
+ }
487
+ const currency = requireFlag(parsed, 'currency', '--currency');
488
+ return {
489
+ accountId: requireFlag(parsed, 'accountId', '--account-id'),
490
+ holdingId,
491
+ type,
492
+ amount: { amount: requireFlag(parsed, 'amount', '--amount'), currency },
493
+ quantity,
494
+ price: price === null ? null : { amount: price, currency },
495
+ tradeAt: requireFlag(parsed, 'tradeAt', '--trade-at'),
496
+ settledAt: getStringFlag(parsed.flags, 'settledAt') ?? null,
497
+ quality: (getStringFlag(parsed.flags, 'quality') ?? 'confirmed'),
498
+ source: { clientId: 'choosefire-cli', channel: 'cli' },
499
+ };
500
+ }
501
+ function formatAccountActivityTimeline(timeline) {
502
+ if (timeline.items.length === 0) {
503
+ return `账户:${timeline.accountId}\n时间线:暂无\n工作区版本:${timeline.workspaceVersion}`;
428
504
  }
429
505
  return [
430
506
  `账户:${timeline.accountId}`,
507
+ ...(timeline.holdingId ? [`持仓:${timeline.holdingId}`] : []),
431
508
  `工作区版本:${timeline.workspaceVersion}`,
432
- ...timeline.cashFlows.map((flow) => `${flow.occurredAt} · ${flow.direction === 'in' ? '流入' : '流出'} ${flow.amount.amount} ${flow.amount.currency} · ${flow.precision} · ${flow.cashFlowId}`),
509
+ ...timeline.items.map((item) => item.kind === 'external_cash_flow'
510
+ ? `${item.eventAt} · ${item.cashFlow.direction === 'in' ? '流入' : '流出'} ${item.cashFlow.amount.amount} ${item.cashFlow.amount.currency} · 现金流 · ${item.cashFlow.cashFlowId}`
511
+ : `${item.eventAt} · ${item.transaction.type} ${item.transaction.amount.amount} ${item.transaction.amount.currency} · ${item.transaction.transactionId}`),
433
512
  ].join('\n');
434
513
  }
435
514
  function readAllocationLines(parsed, name, label) {
@@ -784,7 +863,10 @@ function help() {
784
863
  'choosefire wealth valuation-append --command-id <uuid> --snapshot-id <uuid> --scope-id <uuid> --amount <decimal> --currency <code> --as-of <iso> --expected-workspace-version <n> --idempotency-key <key> [--quality confirmed|estimated|unknown] [--json]',
785
864
  'choosefire wealth classify --command-id <uuid> --classification-revision-id <uuid> --scope-id <uuid> --expected-object-revision <n> --expected-workspace-version <n> --effective-from <iso> --asset-class <code=basis-points> --purpose <code=basis-points> --idempotency-key <key> [--json]',
786
865
  'choosefire transaction cash-flow --command-id <uuid> --cash-flow-id <uuid> --account-id <uuid> --direction in|out --amount <decimal> --currency <code> --occurred-at <iso> --expected-workspace-version <n> --idempotency-key <key> [--precision exact|estimated|unknown] [--json]',
787
- 'choosefire transaction timeline --account-id <uuid> [--json]',
866
+ 'choosefire transaction create --transaction-id <uuid> --account-id <uuid> --type <type> --amount <decimal> --currency <code> --trade-at <iso> --expected-workspace-version <n> --idempotency-key <key> [--holding-id <uuid>] [--quantity <decimal> --price <decimal>] [--settled-at <iso>] [--quality confirmed|estimated|unknown] [--json]',
867
+ 'choosefire transaction update --transaction-id <uuid> --account-id <uuid> --type <type> --amount <decimal> --currency <code> --trade-at <iso> --expected-object-revision <n> --expected-workspace-version <n> --idempotency-key <key> [--holding-id <uuid>] [--quantity <decimal> --price <decimal>] [--settled-at <iso>] [--quality confirmed|estimated|unknown] [--json]',
868
+ 'choosefire transaction archive --transaction-id <uuid> --reason <reason> --expected-object-revision <n> --expected-workspace-version <n> --idempotency-key <key> [--json]',
869
+ 'choosefire transaction timeline --account-id <uuid> [--holding-id <uuid>] [--json]',
788
870
  'choosefire mcp token issue --client-id <client-id> [--ttl-seconds 300] [--json]',
789
871
  'choosefire mcp token revoke --access-token <token> [--json]',
790
872
  'choosefire plan list --json',
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../src/commands.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export declare const FAMILY_WEALTH_V2_CONTRACT_ID: "choosefire-family-wealth.v2";
2
- export declare const FAMILY_WEALTH_V2_CONTRACT_AGGREGATE_SHA256: "6674c1519f2c624417763c6a04b272ed192d80808bb6a066d1c996506bd0b386";
2
+ export declare const FAMILY_WEALTH_V2_CONTRACT_AGGREGATE_SHA256: "c93e376036957ca8a7b57af66d71539fb9aeb351b453d1ed7b7b28c4b39cb2ff";
3
3
  export type FamilyWealthV2InitializeCommand = {
4
4
  kind: 'workspace.initialize.v2';
5
5
  commandId: string;
@@ -168,6 +168,58 @@ export type FamilyWealthV2ExternalCashFlowRecordCommand = {
168
168
  };
169
169
  };
170
170
  };
171
+ export type FamilyWealthV2InvestmentTransactionType = 'buy' | 'sell' | 'subscribe' | 'redeem' | 'dividend' | 'interest' | 'fee' | 'tax' | 'transfer_in' | 'transfer_out' | 'adjustment';
172
+ export type FamilyWealthV2InvestmentTransactionDraft = {
173
+ accountId: string;
174
+ holdingId: string | null;
175
+ type: FamilyWealthV2InvestmentTransactionType;
176
+ amount: {
177
+ amount: string;
178
+ currency: string;
179
+ };
180
+ quantity: string | null;
181
+ price: {
182
+ amount: string;
183
+ currency: string;
184
+ } | null;
185
+ tradeAt: string;
186
+ settledAt: string | null;
187
+ quality: 'confirmed' | 'estimated' | 'unknown';
188
+ source: FamilyWealthV2Source;
189
+ };
190
+ export type FamilyWealthV2InvestmentTransactionCreateCommand = {
191
+ kind: 'investment_transaction.create.v2';
192
+ commandId: string;
193
+ idempotencyKey: string;
194
+ expectedWorkspaceVersion: number;
195
+ expectedObjectRevision: null;
196
+ source: FamilyWealthV2Source;
197
+ payload: {
198
+ transactionId: string;
199
+ transaction: FamilyWealthV2InvestmentTransactionDraft;
200
+ };
201
+ };
202
+ export type FamilyWealthV2InvestmentTransactionUpdateCommand = Omit<FamilyWealthV2InvestmentTransactionCreateCommand, 'kind' | 'expectedObjectRevision'> & {
203
+ kind: 'investment_transaction.update.v2';
204
+ expectedObjectRevision: number;
205
+ };
206
+ export type FamilyWealthV2InvestmentTransactionArchiveCommand = {
207
+ kind: 'investment_transaction.archive.v2';
208
+ commandId: string;
209
+ idempotencyKey: string;
210
+ expectedWorkspaceVersion: number;
211
+ expectedObjectRevision: number;
212
+ source: FamilyWealthV2Source;
213
+ payload: {
214
+ transactionId: string;
215
+ reason: string;
216
+ };
217
+ };
218
+ export type FamilyWealthV2InvestmentTransaction = FamilyWealthV2InvestmentTransactionDraft & {
219
+ transactionId: string;
220
+ status: 'active';
221
+ revision: number;
222
+ };
171
223
  export type FamilyWealthV2WorkspaceOverview = {
172
224
  kind: 'workspace.overview.v2';
173
225
  contractVersion: 2;
@@ -251,6 +303,25 @@ export type FamilyWealthV2AccountTimeline = {
251
303
  revision: number;
252
304
  }>;
253
305
  };
306
+ export type FamilyWealthV2AccountActivityTimeline = {
307
+ kind: 'account.activity_timeline.v2';
308
+ contractVersion: 2;
309
+ projectionVersion: 1;
310
+ workspaceVersion: number;
311
+ asOf: string;
312
+ authority: FamilyWealthV2WorkspaceSummary['authority'];
313
+ accountId: string;
314
+ holdingId: string | null;
315
+ items: Array<{
316
+ kind: 'investment_transaction';
317
+ eventAt: string;
318
+ transaction: FamilyWealthV2InvestmentTransaction;
319
+ } | {
320
+ kind: 'external_cash_flow';
321
+ eventAt: string;
322
+ cashFlow: FamilyWealthV2AccountTimeline['cashFlows'][number];
323
+ }>;
324
+ };
254
325
  export type FamilyWealthV2AssetAccountDetail = {
255
326
  kind: 'asset_account.detail.v2';
256
327
  contractVersion: 2;
@@ -302,7 +373,7 @@ export type FamilyWealthV2CommandReceipt = {
302
373
  committedAt: string;
303
374
  cursor: string;
304
375
  affectedObjects: Array<{
305
- objectType: 'household' | 'workspace' | 'asset_account' | 'valuation_snapshot' | 'classification' | 'holding' | 'external_cash_flow';
376
+ objectType: 'household' | 'workspace' | 'asset_account' | 'valuation_snapshot' | 'classification' | 'holding' | 'external_cash_flow' | 'investment_transaction';
306
377
  objectId: string;
307
378
  }>;
308
379
  projectionHints: string[];
@@ -328,8 +399,8 @@ export type FamilyWealthV2WorkspaceSummary = {
328
399
  };
329
400
  cursor: string;
330
401
  capabilities: {
331
- readable: Array<'workspace.summary.v2' | 'activity.page.v2' | 'workspace.overview.v2' | 'asset_account.detail.v2' | 'account.timeline.v2'>;
332
- writable: Array<'asset_account.create.v2' | 'asset_account.update.v2' | 'asset_account.archive.v2' | 'valuation_snapshot.append.v2' | 'classification.replace.v2' | 'holding.create.v2' | 'holding.update.v2' | 'holding.archive.v2' | 'external_cash_flow.record.v2'>;
402
+ readable: Array<'workspace.summary.v2' | 'activity.page.v2' | 'workspace.overview.v2' | 'asset_account.detail.v2' | 'account.timeline.v2' | 'account.activity_timeline.v2'>;
403
+ writable: Array<'asset_account.create.v2' | 'asset_account.update.v2' | 'asset_account.archive.v2' | 'valuation_snapshot.append.v2' | 'classification.replace.v2' | 'holding.create.v2' | 'holding.update.v2' | 'holding.archive.v2' | 'external_cash_flow.record.v2' | 'investment_transaction.create.v2' | 'investment_transaction.update.v2' | 'investment_transaction.archive.v2'>;
333
404
  };
334
405
  };
335
406
  export type FamilyWealthV2ActivityPage = {
@@ -341,7 +412,7 @@ export type FamilyWealthV2ActivityPage = {
341
412
  items: Array<{
342
413
  operationId: string;
343
414
  commandId: string;
344
- operation: 'workspace.initialize.v2' | 'asset_account.create.v2' | 'asset_account.update.v2' | 'asset_account.archive.v2' | 'valuation_snapshot.append.v2' | 'classification.replace.v2' | 'holding.create.v2' | 'holding.update.v2' | 'holding.archive.v2' | 'external_cash_flow.record.v2';
415
+ operation: 'workspace.initialize.v2' | 'asset_account.create.v2' | 'asset_account.update.v2' | 'asset_account.archive.v2' | 'valuation_snapshot.append.v2' | 'classification.replace.v2' | 'holding.create.v2' | 'holding.update.v2' | 'holding.archive.v2' | 'external_cash_flow.record.v2' | 'investment_transaction.create.v2' | 'investment_transaction.update.v2' | 'investment_transaction.archive.v2';
345
416
  source: {
346
417
  clientId: string;
347
418
  channel: 'web' | 'cli';
@@ -389,7 +460,7 @@ export type FamilyWealthV2Unavailable = {
389
460
  requestId: string;
390
461
  retryable: false;
391
462
  };
392
- type SuccessSchemaName = 'WorkspaceInitializeSuccessV2' | 'WorkspaceSummarySuccessV2' | 'ActivityPageSuccessV2' | 'CommandSuccessV2' | 'WorkspaceOverviewSuccessV2' | 'AssetAccountDetailSuccessV2' | 'AccountTimelineSuccessV2';
463
+ type SuccessSchemaName = 'WorkspaceInitializeSuccessV2' | 'WorkspaceSummarySuccessV2' | 'ActivityPageSuccessV2' | 'CommandSuccessV2' | 'WorkspaceOverviewSuccessV2' | 'AssetAccountDetailSuccessV2' | 'AccountTimelineSuccessV2' | 'AccountActivityTimelineSuccessV2';
393
464
  export declare function validateFamilyWealthV2(schemaName: string, input: unknown): {
394
465
  valid: true;
395
466
  } | {
@@ -4,7 +4,7 @@ const require = createRequire(import.meta.url);
4
4
  const Ajv2020 = require('ajv/dist/2020').default;
5
5
  const addFormats = require('ajv-formats').default;
6
6
  export const FAMILY_WEALTH_V2_CONTRACT_ID = 'choosefire-family-wealth.v2';
7
- export const FAMILY_WEALTH_V2_CONTRACT_AGGREGATE_SHA256 = '6674c1519f2c624417763c6a04b272ed192d80808bb6a066d1c996506bd0b386';
7
+ export const FAMILY_WEALTH_V2_CONTRACT_AGGREGATE_SHA256 = 'c93e376036957ca8a7b57af66d71539fb9aeb351b453d1ed7b7b28c4b39cb2ff';
8
8
  const runtimeSchema = JSON.parse(readFileSync(new URL('../contracts/choosefire-family-wealth/v2/runtime-schemas/family-wealth.v2.schema.json', import.meta.url), 'utf8'));
9
9
  const ajv = new Ajv2020({
10
10
  strict: true,
@@ -1 +1 @@
1
- {"version":3,"file":"family-wealth-v2-contracts.js","sourceRoot":"","sources":["../src/family-wealth-v2-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,OAAO,GAAI,OAAO,CAAC,eAAe,CAEtC,CAAC,OAAO,CAAC;AACX,MAAM,UAAU,GAAI,OAAO,CAAC,aAAa,CAEvC,CAAC,OAAO,CAAC;AAEX,MAAM,CAAC,MAAM,4BAA4B,GAAG,6BAAsC,CAAC;AACnF,MAAM,CAAC,MAAM,0CAA0C,GACrD,kEAA2E,CAAC;AAyW9E,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAC9B,YAAY,CACV,IAAI,GAAG,CACL,uFAAuF,EACvF,MAAM,CAAC,IAAI,CAAC,GAAG,CAChB,EACD,MAAM,CACP,CACmE,CAAC;AACvE,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC;IACtB,MAAM,EAAE,IAAI;IACZ,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,KAAK;IAClB,gBAAgB,EAAE,KAAK;IACvB,WAAW,EAAE,KAAK;IAClB,eAAe,EAAE,IAAI;CACtB,CAAC,CAAC;AACH,UAAU,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;AAClC,GAAG,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;AAC7B,MAAM,UAAU,GAAG,IAAI,GAAG,EAA4B,CAAC;AAEvD,MAAM,UAAU,sBAAsB,CACpC,UAAkB,EAClB,KAAc;IAEd,IAAI,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;YACpD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,kBAAkB,UAAU,EAAE,CAAC,EAAE,CAAC;QACpE,CAAC;QACD,SAAS,GAAG,GAAG,CAAC,OAAO,CAAC;YACtB,IAAI,EAAE,GAAG,aAAa,CAAC,GAAG,WAAW,UAAU,EAAE;SAClD,CAAC,CAAC;QACH,UAAU,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;IACD,OAAO,SAAS,CAAC,KAAK,CAAC;QACrB,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE;QACjB,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,KAAc,EACd,UAA6B;IAE7B,MAAM,MAAM,GAAG,sBAAsB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,kCAAkC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IACD,OAAQ,KAAqB,CAAC,IAAI,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAc;IACrD,MAAM,MAAM,GAAG,sBAAsB,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;IACpE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,kCAAkC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,KAAoC,CAAC;AAC9C,CAAC;AAED,MAAM,OAAO,kCAAmC,SAAQ,KAAK;IAGtC;IAFZ,IAAI,GAAG,yBAAkC,CAAC;IAEnD,YAAqB,gBAA0B;QAC7C,KAAK,CAAC,kEAAkE,CAAC,CAAC;QADvD,qBAAgB,GAAhB,gBAAgB,CAAU;QAE7C,IAAI,CAAC,IAAI,GAAG,oCAAoC,CAAC;IACnD,CAAC;CACF;AAED,MAAM,UAAU,8BAA8B,CAC5C,UAAkB,EAClB,KAAc;IAEd,MAAM,KAAK,GAAG,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAC9C,IACE,UAAU,KAAK,GAAG;QAClB,KAAK,CAAC,IAAI,KAAK,oBAAoB;QACnC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,KAAK,KAAK,EACpC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO;QACL,IAAI,EAAE,oBAAoB;QAC1B,UAAU,EAAE,4BAA4B;QACxC,UAAU,EAAE,GAAG;QACf,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,OAAO;QAC5B,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,SAAS;QAChC,SAAS,EAAE,KAAK;KACjB,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,MAAwC;IAC5D,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CACvB,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,YAAY,IAAI,GAAG,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAC5E,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"family-wealth-v2-contracts.js","sourceRoot":"","sources":["../src/family-wealth-v2-contracts.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { CliConfig, WorkspaceScope } from './types.js';
2
- import { type FamilyWealthV2ActivityPage, type FamilyWealthV2AssetAccountDetail, type FamilyWealthV2AssetAccountArchiveCommand, type FamilyWealthV2AssetAccountCreateCommand, type FamilyWealthV2AssetAccountUpdateCommand, type FamilyWealthV2ClassificationReplaceCommand, type FamilyWealthV2ExternalCashFlowRecordCommand, type FamilyWealthV2AccountTimeline, type FamilyWealthV2CommandReceipt, type FamilyWealthV2ErrorCode, type FamilyWealthV2InitializeCommand, type FamilyWealthV2HoldingArchiveCommand, type FamilyWealthV2HoldingCreateCommand, type FamilyWealthV2HoldingUpdateCommand, type FamilyWealthV2McpDelegatedToken, type FamilyWealthV2ValuationAppendCommand, type FamilyWealthV2WorkspaceOverview, type FamilyWealthV2WorkspaceSummary } from './family-wealth-v2-contracts.js';
2
+ import { type FamilyWealthV2ActivityPage, type FamilyWealthV2AssetAccountDetail, type FamilyWealthV2AssetAccountArchiveCommand, type FamilyWealthV2AssetAccountCreateCommand, type FamilyWealthV2AssetAccountUpdateCommand, type FamilyWealthV2ClassificationReplaceCommand, type FamilyWealthV2ExternalCashFlowRecordCommand, type FamilyWealthV2AccountTimeline, type FamilyWealthV2AccountActivityTimeline, type FamilyWealthV2CommandReceipt, type FamilyWealthV2ErrorCode, type FamilyWealthV2InitializeCommand, type FamilyWealthV2InvestmentTransactionArchiveCommand, type FamilyWealthV2InvestmentTransactionCreateCommand, type FamilyWealthV2InvestmentTransactionUpdateCommand, type FamilyWealthV2HoldingArchiveCommand, type FamilyWealthV2HoldingCreateCommand, type FamilyWealthV2HoldingUpdateCommand, type FamilyWealthV2McpDelegatedToken, type FamilyWealthV2ValuationAppendCommand, type FamilyWealthV2WorkspaceOverview, type FamilyWealthV2WorkspaceSummary } from './family-wealth-v2-contracts.js';
3
3
  export type FamilyWealthV2HttpOptions = {
4
4
  fetch?: typeof fetch;
5
5
  timeoutMs?: number;
@@ -36,13 +36,13 @@ export declare class FamilyWealthV2RemoteUnavailableError extends Error {
36
36
  constructor();
37
37
  }
38
38
  export declare class FamilyWealthV2RemoteOutcomeUnknownError extends Error {
39
- readonly command: FamilyWealthV2InitializeCommand | FamilyWealthV2AssetAccountArchiveCommand | FamilyWealthV2AssetAccountCreateCommand | FamilyWealthV2AssetAccountUpdateCommand | FamilyWealthV2HoldingArchiveCommand | FamilyWealthV2HoldingCreateCommand | FamilyWealthV2HoldingUpdateCommand | FamilyWealthV2ValuationAppendCommand | FamilyWealthV2ClassificationReplaceCommand | FamilyWealthV2ExternalCashFlowRecordCommand;
39
+ readonly command: FamilyWealthV2InitializeCommand | FamilyWealthV2AssetAccountArchiveCommand | FamilyWealthV2AssetAccountCreateCommand | FamilyWealthV2AssetAccountUpdateCommand | FamilyWealthV2HoldingArchiveCommand | FamilyWealthV2HoldingCreateCommand | FamilyWealthV2HoldingUpdateCommand | FamilyWealthV2ValuationAppendCommand | FamilyWealthV2ClassificationReplaceCommand | FamilyWealthV2ExternalCashFlowRecordCommand | FamilyWealthV2InvestmentTransactionCreateCommand | FamilyWealthV2InvestmentTransactionUpdateCommand | FamilyWealthV2InvestmentTransactionArchiveCommand;
40
40
  readonly code: "REMOTE_OUTCOME_UNKNOWN";
41
41
  readonly recovery: {
42
42
  action: 'retry_exact_command';
43
- command: FamilyWealthV2InitializeCommand | FamilyWealthV2AssetAccountArchiveCommand | FamilyWealthV2AssetAccountCreateCommand | FamilyWealthV2AssetAccountUpdateCommand | FamilyWealthV2HoldingArchiveCommand | FamilyWealthV2HoldingCreateCommand | FamilyWealthV2HoldingUpdateCommand | FamilyWealthV2ValuationAppendCommand | FamilyWealthV2ClassificationReplaceCommand | FamilyWealthV2ExternalCashFlowRecordCommand;
43
+ command: FamilyWealthV2InitializeCommand | FamilyWealthV2AssetAccountArchiveCommand | FamilyWealthV2AssetAccountCreateCommand | FamilyWealthV2AssetAccountUpdateCommand | FamilyWealthV2HoldingArchiveCommand | FamilyWealthV2HoldingCreateCommand | FamilyWealthV2HoldingUpdateCommand | FamilyWealthV2ValuationAppendCommand | FamilyWealthV2ClassificationReplaceCommand | FamilyWealthV2ExternalCashFlowRecordCommand | FamilyWealthV2InvestmentTransactionCreateCommand | FamilyWealthV2InvestmentTransactionUpdateCommand | FamilyWealthV2InvestmentTransactionArchiveCommand;
44
44
  };
45
- constructor(command: FamilyWealthV2InitializeCommand | FamilyWealthV2AssetAccountArchiveCommand | FamilyWealthV2AssetAccountCreateCommand | FamilyWealthV2AssetAccountUpdateCommand | FamilyWealthV2HoldingArchiveCommand | FamilyWealthV2HoldingCreateCommand | FamilyWealthV2HoldingUpdateCommand | FamilyWealthV2ValuationAppendCommand | FamilyWealthV2ClassificationReplaceCommand | FamilyWealthV2ExternalCashFlowRecordCommand);
45
+ constructor(command: FamilyWealthV2InitializeCommand | FamilyWealthV2AssetAccountArchiveCommand | FamilyWealthV2AssetAccountCreateCommand | FamilyWealthV2AssetAccountUpdateCommand | FamilyWealthV2HoldingArchiveCommand | FamilyWealthV2HoldingCreateCommand | FamilyWealthV2HoldingUpdateCommand | FamilyWealthV2ValuationAppendCommand | FamilyWealthV2ClassificationReplaceCommand | FamilyWealthV2ExternalCashFlowRecordCommand | FamilyWealthV2InvestmentTransactionCreateCommand | FamilyWealthV2InvestmentTransactionUpdateCommand | FamilyWealthV2InvestmentTransactionArchiveCommand);
46
46
  }
47
47
  export declare function initializeFamilyWealthV2(config: CliConfig, command: FamilyWealthV2InitializeCommand, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2CommandReceipt>;
48
48
  export declare function getFamilyWealthV2Summary(config: CliConfig, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2WorkspaceSummary>;
@@ -61,6 +61,10 @@ export declare function appendFamilyWealthV2Valuation(config: CliConfig, command
61
61
  export declare function replaceFamilyWealthV2Classification(config: CliConfig, command: FamilyWealthV2ClassificationReplaceCommand, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2CommandReceipt>;
62
62
  export declare function recordFamilyWealthV2ExternalCashFlow(config: CliConfig, command: FamilyWealthV2ExternalCashFlowRecordCommand, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2CommandReceipt>;
63
63
  export declare function getFamilyWealthV2AccountTimeline(config: CliConfig, accountId: string, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2AccountTimeline>;
64
+ export declare function createFamilyWealthV2InvestmentTransaction(config: CliConfig, command: FamilyWealthV2InvestmentTransactionCreateCommand, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2CommandReceipt>;
65
+ export declare function updateFamilyWealthV2InvestmentTransaction(config: CliConfig, command: FamilyWealthV2InvestmentTransactionUpdateCommand, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2CommandReceipt>;
66
+ export declare function archiveFamilyWealthV2InvestmentTransaction(config: CliConfig, command: FamilyWealthV2InvestmentTransactionArchiveCommand, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2CommandReceipt>;
67
+ export declare function getFamilyWealthV2AccountActivityTimeline(config: CliConfig, accountId: string, holdingId?: string | null, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2AccountActivityTimeline>;
64
68
  export declare function getFamilyWealthV2Overview(config: CliConfig, options?: FamilyWealthV2HttpOptions): Promise<FamilyWealthV2WorkspaceOverview>;
65
69
  export declare function issueFamilyWealthV2McpDelegation(config: CliConfig, input: {
66
70
  clientId: string;
@@ -207,6 +207,43 @@ export function getFamilyWealthV2AccountTimeline(config, accountId, options = {}
207
207
  successSchema: 'AccountTimelineSuccessV2',
208
208
  }, options);
209
209
  }
210
+ export async function createFamilyWealthV2InvestmentTransaction(config, command, options = {}) {
211
+ return requestMutation(config, command, {
212
+ method: 'POST', path: `${ROOT}/investment-transactions`,
213
+ scope: 'workspace:write:fact', successSchema: 'CommandSuccessV2',
214
+ body: JSON.stringify(command),
215
+ }, options);
216
+ }
217
+ export async function updateFamilyWealthV2InvestmentTransaction(config, command, options = {}) {
218
+ return requestMutation(config, command, {
219
+ method: 'PUT', path: `${ROOT}/investment-transactions`,
220
+ scope: 'workspace:write:fact', successSchema: 'CommandSuccessV2',
221
+ body: JSON.stringify(command),
222
+ }, options);
223
+ }
224
+ export async function archiveFamilyWealthV2InvestmentTransaction(config, command, options = {}) {
225
+ return requestMutation(config, command, {
226
+ method: 'POST', path: `${ROOT}/investment-transactions/archive`,
227
+ scope: 'workspace:write:fact', successSchema: 'CommandSuccessV2',
228
+ body: JSON.stringify(command),
229
+ }, options);
230
+ }
231
+ export function getFamilyWealthV2AccountActivityTimeline(config, accountId, holdingId = null, options = {}) {
232
+ const validation = validateFamilyWealthV2('AccountActivityTimelineQueryV2', {
233
+ accountId, holdingId,
234
+ });
235
+ if (!validation.valid)
236
+ throw new TypeError(validation.errors.join('; '));
237
+ const suffix = holdingId === null
238
+ ? 'activity-timeline'
239
+ : `holdings/${encodeURIComponent(holdingId)}/activity-timeline`;
240
+ return requestFamilyWealthV2(config, {
241
+ method: 'GET',
242
+ path: `${ROOT}/asset-accounts/${encodeURIComponent(accountId)}/${suffix}`,
243
+ scope: 'workspace:read',
244
+ successSchema: 'AccountActivityTimelineSuccessV2',
245
+ }, options);
246
+ }
210
247
  export function getFamilyWealthV2Overview(config, options = {}) {
211
248
  return requestFamilyWealthV2(config, {
212
249
  method: 'GET',
@@ -261,7 +298,13 @@ async function requestMutation(config, command, definition, options) {
261
298
  ? 'ValuationSnapshotAppendCommandV2'
262
299
  : command.kind === 'external_cash_flow.record.v2'
263
300
  ? 'ExternalCashFlowRecordCommandV2'
264
- : 'ClassificationReplaceCommandV2';
301
+ : command.kind === 'investment_transaction.create.v2'
302
+ ? 'InvestmentTransactionCreateCommandV2'
303
+ : command.kind === 'investment_transaction.update.v2'
304
+ ? 'InvestmentTransactionUpdateCommandV2'
305
+ : command.kind === 'investment_transaction.archive.v2'
306
+ ? 'InvestmentTransactionArchiveCommandV2'
307
+ : 'ClassificationReplaceCommandV2';
265
308
  const validation = validateFamilyWealthV2(schemaName, command);
266
309
  if (!validation.valid)
267
310
  throw new TypeError(validation.errors.join('; '));