@akasecurity/ai-tc-claude-code 0.9.7 → 0.9.8

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.
@@ -492,13 +492,12 @@ var require_ignore = __commonJS({
492
492
  });
493
493
 
494
494
  // ../../packages/plugin-sdk/src/config.ts
495
- import { existsSync as existsSync5 } from "fs";
496
- import { join as join8 } from "path";
495
+ import { existsSync as existsSync6 } from "fs";
496
+ import { join as join10 } from "path";
497
497
 
498
- // ../../packages/persistence/src/database.ts
499
- import { randomUUID as randomUUID10 } from "crypto";
500
- import { join as join2, sep } from "path";
501
- import { DatabaseSync } from "node:sqlite";
498
+ // ../../packages/persistence/src/control-plane-credential.ts
499
+ import { chmodSync as chmodSync2, lstatSync as lstatSync2, readFileSync, rmSync as rmSync2, statSync } from "fs";
500
+ import { join } from "path";
502
501
 
503
502
  // ../../packages/schema/src/exception-scope.ts
504
503
  var MINUTE_MS = 6e4;
@@ -15963,6 +15962,124 @@ var ConfigScanRecord = external_exports.object({
15963
15962
  findings: external_exports.array(ConfigPostureFindingInput).optional()
15964
15963
  });
15965
15964
 
15965
+ // ../../packages/schema/src/zod/control-plane.ts
15966
+ var ATTACHED_CREDENTIAL_SPEC_VERSION = 1;
15967
+ var AttachedCredential = external_exports.object({
15968
+ specVersion: external_exports.literal(ATTACHED_CREDENTIAL_SPEC_VERSION),
15969
+ // The control-plane endpoint this credential was minted against.
15970
+ endpoint: external_exports.string().min(1),
15971
+ // The bearer credential itself. Never logged, never rendered — status
15972
+ // surfaces show `keyPrefix` and nothing else.
15973
+ apiKey: external_exports.string().min(1),
15974
+ // First few characters of the key, safe to display so a user can match the
15975
+ // credential against their organization's key list.
15976
+ keyPrefix: external_exports.string().min(1).max(16).optional(),
15977
+ mintedAt: external_exports.iso.datetime().optional()
15978
+ });
15979
+ var MAX_DATE_MS = 253402300799999;
15980
+ var MAX_INT4 = 2147483647;
15981
+ var StorePosturePack = external_exports.object({
15982
+ packId: external_exports.string().min(1),
15983
+ // 'namespace/packId'
15984
+ version: external_exports.string().min(1),
15985
+ enabled: external_exports.boolean(),
15986
+ // Stringified pass-through of the local store's `installed_packs.updated_at`
15987
+ // — the column format is store-version-dependent (epoch millis vs ISO), so
15988
+ // the wire shape assumes neither.
15989
+ updatedAt: external_exports.string().nullable()
15990
+ }).meta({ id: "StorePosturePack" });
15991
+ var StorePosturePolicyCounts = external_exports.object({
15992
+ total: external_exports.number().int().min(0),
15993
+ disabled: external_exports.number().int().min(0),
15994
+ // Exhaustive per-action map; the builder pre-fills every action with 0.
15995
+ //
15996
+ // Spelled out member-by-member rather than `z.record(ActionTaken, …)`. Zod
15997
+ // enforces exhaustiveness either way, but z.record emits `propertyNames` +
15998
+ // `additionalProperties` into a generated schema document, and a type
15999
+ // generator renders THAT with every key optional — a sender built against
16000
+ // the generated type would typecheck and still be rejected at runtime. An
16001
+ // explicit object emits `properties` + `required`, so generated types
16002
+ // demand all five.
16003
+ //
16004
+ // `satisfies Record<ActionTaken, …>` keeps the link to the enum: adding an
16005
+ // ActionTaken member is a COMPILE error here instead of silent drift.
16006
+ // `.strict()` is load-bearing — it rejects an unknown action key, which a
16007
+ // bare object would silently STRIP, accepting a miscounted map as valid.
16008
+ byAction: external_exports.object({
16009
+ warn: external_exports.number().int().min(0),
16010
+ redact: external_exports.number().int().min(0),
16011
+ block: external_exports.number().int().min(0),
16012
+ allow: external_exports.number().int().min(0),
16013
+ log: external_exports.number().int().min(0)
16014
+ }).strict()
16015
+ }).meta({ id: "StorePosturePolicyCounts" });
16016
+ var StorePosturePlugin = external_exports.object({
16017
+ /** Package name of the reporting plugin. */
16018
+ package: external_exports.string().min(1).max(200),
16019
+ version: external_exports.string().min(1).max(64),
16020
+ /** Version of the bundled core, when the build records one separately. */
16021
+ ossVersion: external_exports.string().max(64).nullable(),
16022
+ /**
16023
+ * `version` of the policy bundle this machine last fetched. Bounded at 200
16024
+ * rather than the 64 a bare sha256 hex digest needs today, so a later
16025
+ * format with an algorithm prefix does not start rejecting the channel.
16026
+ */
16027
+ policyBundleVersion: external_exports.string().max(200).nullable(),
16028
+ /** Epoch millis, on the CLIENT clock, of that fetch. */
16029
+ policyFetchedAt: external_exports.number().int().min(0).max(MAX_DATE_MS).nullable()
16030
+ }).meta({ id: "StorePosturePlugin" });
16031
+ var StorePostureSnapshot = external_exports.object({
16032
+ deviceId: external_exports.guid(),
16033
+ hostname: external_exports.string().min(1).max(253),
16034
+ // Epoch millis on the CLIENT clock. Bounded by what a receiving store
16035
+ // accepts (see MAX_DATE_MS), not by what a JavaScript Date can hold.
16036
+ capturedAt: external_exports.number().int().min(0).max(MAX_DATE_MS),
16037
+ // False is a measurement, not an error state: "no local store exists on
16038
+ // this machine".
16039
+ storePresent: external_exports.boolean(),
16040
+ schemaVersion: external_exports.number().int().min(0).max(MAX_INT4).nullable(),
16041
+ // PRAGMA user_version
16042
+ findingsTotal: external_exports.number().int().min(0).max(MAX_INT4),
16043
+ // Epoch millis, bounded like `capturedAt` — see MAX_DATE_MS on what that
16044
+ // bound does and does not do. Worth stating for these two specifically:
16045
+ // they are read from the local store's own ROWS rather than from this
16046
+ // machine's clock, so a damaged or hand-edited store is enough to produce
16047
+ // an out-of-range value with no clock skew involved.
16048
+ findingsFirstAt: external_exports.number().int().min(0).max(MAX_DATE_MS).nullable(),
16049
+ findingsLastAt: external_exports.number().int().min(0).max(MAX_DATE_MS).nullable(),
16050
+ packs: external_exports.array(StorePosturePack).max(500),
16051
+ policyCounts: StorePosturePolicyCounts,
16052
+ // OPTIONAL, not nullable: a reporter that predates this member keeps
16053
+ // getting its 200 without a payload change.
16054
+ plugin: StorePosturePlugin.optional()
16055
+ }).meta({ id: "StorePostureSnapshot" });
16056
+ var CAPTURE_VERSION_PREFIX = "capture/";
16057
+ var RecordAuditEventRequest = AuditEventInput.extend({
16058
+ inspections: external_exports.array(ToolCallInspection).default([])
16059
+ }).refine((v) => v.inspections.every((i) => !i.ruleVersion.startsWith(CAPTURE_VERSION_PREFIX)), {
16060
+ message: `inspections[].ruleVersion must not start with \`${CAPTURE_VERSION_PREFIX}\` \u2014 that namespace is reserved for capture definitions the control plane mints itself`,
16061
+ path: ["inspections"]
16062
+ }).meta({ id: "RecordAuditEventRequest" });
16063
+ var IngestAck = external_exports.object({
16064
+ accepted: external_exports.number().int().nonnegative(),
16065
+ duplicates: external_exports.number().int().nonnegative()
16066
+ });
16067
+ var PRINTABLE = /^[^\p{Cc}\p{Cf}]*$/u;
16068
+ var printable = (max) => external_exports.string().max(max).regex(PRINTABLE, "must not contain control characters");
16069
+ var PluginWhoami = external_exports.object({
16070
+ tenantName: printable(200),
16071
+ userEmail: printable(320),
16072
+ role: printable(64),
16073
+ keyKind: printable(64),
16074
+ serverTime: printable(64)
16075
+ });
16076
+ var ControlPlaneErrorBody = external_exports.object({
16077
+ error: external_exports.object({
16078
+ code: external_exports.string().optional(),
16079
+ message: external_exports.string().optional()
16080
+ }).optional()
16081
+ });
16082
+
15966
16083
  // ../../packages/schema/src/zod/registry.ts
15967
16084
  var Namespace = external_exports.string().regex(/^[a-z][a-z0-9-]*$/);
15968
16085
  var PackId = external_exports.string().regex(/^[a-z][a-z0-9-]*$/);
@@ -17606,14 +17723,6 @@ var SetupHandoffOffer = external_exports.object({
17606
17723
  path: ["liveKeys"]
17607
17724
  });
17608
17725
 
17609
- // ../../packages/persistence/src/ids.ts
17610
- import { createHash } from "crypto";
17611
-
17612
- // ../../packages/persistence/src/internal/snapshot.ts
17613
- import { randomUUID } from "crypto";
17614
- import { existsSync, readdirSync, renameSync as renameSync2, rmSync as rmSync2, statSync } from "fs";
17615
- import { basename, dirname, join } from "path";
17616
-
17617
17726
  // ../../packages/persistence/src/paths.ts
17618
17727
  import {
17619
17728
  chmodSync,
@@ -17626,7 +17735,18 @@ import {
17626
17735
  } from "fs";
17627
17736
  import { threadId } from "worker_threads";
17628
17737
 
17738
+ // ../../packages/persistence/src/database.ts
17739
+ import { randomUUID as randomUUID10 } from "crypto";
17740
+ import { join as join3, sep } from "path";
17741
+ import { DatabaseSync } from "node:sqlite";
17742
+
17743
+ // ../../packages/persistence/src/ids.ts
17744
+ import { createHash } from "crypto";
17745
+
17629
17746
  // ../../packages/persistence/src/internal/snapshot.ts
17747
+ import { randomUUID } from "crypto";
17748
+ import { existsSync, readdirSync, renameSync as renameSync2, rmSync as rmSync3, statSync as statSync2 } from "fs";
17749
+ import { basename, dirname, join as join2 } from "path";
17630
17750
  var STALE_PARTIAL_MS = 5 * 6e4;
17631
17751
  var SNAPSHOT_STAGING_SUFFIX = ".partial";
17632
17752
  var STAGED_NAME_SUFFIX = `.bak${SNAPSHOT_STAGING_SUFFIX}`;
@@ -17700,9 +17820,9 @@ import {
17700
17820
  closeSync,
17701
17821
  existsSync as existsSync2,
17702
17822
  openSync,
17703
- readFileSync,
17704
- rmSync as rmSync3,
17705
- statSync as statSync2,
17823
+ readFileSync as readFileSync2,
17824
+ rmSync as rmSync4,
17825
+ statSync as statSync3,
17706
17826
  writeFileSync as writeFileSync2
17707
17827
  } from "fs";
17708
17828
  import { hostname as hostname3 } from "os";
@@ -17713,23 +17833,27 @@ import { createHash as createHash3 } from "crypto";
17713
17833
 
17714
17834
  // ../../packages/persistence/src/fingerprint.ts
17715
17835
  import { createHmac, randomBytes } from "crypto";
17716
- import { existsSync as existsSync3, readFileSync as readFileSync2 } from "fs";
17717
- import { join as join3 } from "path";
17836
+ import { existsSync as existsSync3, readFileSync as readFileSync3 } from "fs";
17837
+ import { join as join4 } from "path";
17718
17838
  import { DatabaseSync as DatabaseSync2 } from "node:sqlite";
17719
17839
 
17720
17840
  // ../../packages/persistence/src/local-layout.ts
17721
17841
  import { renameSync as renameSync3 } from "fs";
17722
17842
  import { mkdir } from "fs/promises";
17723
17843
  import { homedir } from "os";
17724
- import { join as join4 } from "path";
17844
+ import { join as join5 } from "path";
17725
17845
 
17726
17846
  // ../../packages/persistence/src/managed-settings.ts
17727
- import { readFileSync as readFileSync3 } from "fs";
17847
+ import { readFileSync as readFileSync4 } from "fs";
17728
17848
  import { posix, win32 } from "path";
17729
17849
 
17730
17850
  // ../../packages/persistence/src/settings.ts
17731
- import { readFileSync as readFileSync4 } from "fs";
17732
- import { join as join5 } from "path";
17851
+ import { readFileSync as readFileSync5 } from "fs";
17852
+ import { join as join6 } from "path";
17853
+
17854
+ // ../../packages/persistence/src/store-symlinks.ts
17855
+ import { existsSync as existsSync4, lstatSync as lstatSync3, readlinkSync, realpathSync, statSync as statSync4 } from "fs";
17856
+ import { dirname as dirname2, join as join7, resolve } from "path";
17733
17857
 
17734
17858
  // ../../packages/persistence/src/vault/crypto.ts
17735
17859
  import {
@@ -17743,15 +17867,15 @@ import {
17743
17867
  // ../../packages/persistence/src/vault/key-provider.ts
17744
17868
  import { execFileSync } from "child_process";
17745
17869
  import { randomBytes as randomBytes2 } from "crypto";
17746
- import { chmodSync as chmodSync2, readFileSync as readFileSync5, renameSync as renameSync4, rmSync as rmSync4, statSync as statSync3, writeFileSync as writeFileSync3 } from "fs";
17747
- import { join as join6 } from "path";
17870
+ import { chmodSync as chmodSync3, readFileSync as readFileSync6, renameSync as renameSync4, rmSync as rmSync5, statSync as statSync5, writeFileSync as writeFileSync3 } from "fs";
17871
+ import { join as join8 } from "path";
17748
17872
 
17749
17873
  // ../../packages/persistence/src/vault/vault.ts
17750
17874
  import { randomBytes as randomBytes3, randomUUID as randomUUID12 } from "crypto";
17751
17875
 
17752
17876
  // ../../packages/persistence/src/warn-era-cap.ts
17753
- import { existsSync as existsSync4, writeFileSync as writeFileSync4 } from "fs";
17754
- import { join as join7 } from "path";
17877
+ import { existsSync as existsSync5, writeFileSync as writeFileSync4 } from "fs";
17878
+ import { join as join9 } from "path";
17755
17879
 
17756
17880
  // ../../packages/plugin-sdk/src/provider-env.ts
17757
17881
  var booleanish = external_exports.string().optional().transform((v) => {
@@ -17772,9 +17896,9 @@ var providerEnvShape = {
17772
17896
  var ProviderEnvSchema = external_exports.object(providerEnvShape);
17773
17897
 
17774
17898
  // ../../packages/plugin-sdk/src/config-inventory.ts
17775
- import { readdirSync as readdirSync2, readFileSync as readFileSync7, realpathSync, statSync as statSync5 } from "fs";
17899
+ import { readdirSync as readdirSync2, readFileSync as readFileSync8, realpathSync as realpathSync2, statSync as statSync7 } from "fs";
17776
17900
  import { homedir as homedir2 } from "os";
17777
- import { basename as basename3, join as join10 } from "path";
17901
+ import { basename as basename3, join as join12 } from "path";
17778
17902
 
17779
17903
  // ../../packages/detections/src/egress/registry.ts
17780
17904
  var EXTRACTOR_VERSION = "1";
@@ -18532,36 +18656,36 @@ var CPU_CORROBORATION_SHARE = 0.2;
18532
18656
  var CORROBORATION_FLOOR_MS = BUDGET_MS * CPU_CORROBORATION_SHARE;
18533
18657
 
18534
18658
  // ../../packages/plugin-sdk/src/repo.ts
18535
- import { existsSync as existsSync6, readFileSync as readFileSync6, statSync as statSync4 } from "fs";
18536
- import { basename as basename2, dirname as dirname2, isAbsolute, join as join9, sep as sep2 } from "path";
18659
+ import { existsSync as existsSync7, readFileSync as readFileSync7, statSync as statSync6 } from "fs";
18660
+ import { basename as basename2, dirname as dirname3, isAbsolute, join as join11, sep as sep2 } from "path";
18537
18661
 
18538
18662
  // ../../packages/plugin-sdk/src/events.ts
18539
18663
  import { createHash as createHash4, randomUUID as randomUUID13 } from "crypto";
18540
18664
 
18541
18665
  // ../../packages/plugin-sdk/src/isolated-scan.ts
18542
- import { existsSync as existsSync7 } from "fs";
18666
+ import { existsSync as existsSync8 } from "fs";
18543
18667
  import { fileURLToPath } from "url";
18544
18668
  import { Worker } from "worker_threads";
18545
18669
 
18546
18670
  // ../../packages/plugin-sdk/src/ignore-layers.ts
18547
18671
  var import_ignore = __toESM(require_ignore(), 1);
18548
- import { readFileSync as readFileSync8 } from "fs";
18549
- import { join as join11 } from "path";
18672
+ import { readFileSync as readFileSync9 } from "fs";
18673
+ import { join as join13 } from "path";
18550
18674
 
18551
18675
  // ../../packages/plugin-sdk/src/inventory-resolver.ts
18552
18676
  import { arch, hostname as hostname4, platform, release } from "os";
18553
18677
 
18554
18678
  // ../../packages/plugin-sdk/src/nudge.ts
18555
- import { mkdirSync as mkdirSync2, readFileSync as readFileSync9, writeFileSync as writeFileSync5 } from "fs";
18556
- import { join as join12 } from "path";
18679
+ import { mkdirSync as mkdirSync2, readFileSync as readFileSync10, writeFileSync as writeFileSync5 } from "fs";
18680
+ import { join as join14 } from "path";
18557
18681
 
18558
18682
  // ../../packages/plugin-sdk/src/paths.ts
18559
- import { readdirSync as readdirSync3, realpathSync as realpathSync2 } from "fs";
18560
- import { basename as basename4, dirname as dirname3, sep as sep3 } from "path";
18683
+ import { readdirSync as readdirSync3, realpathSync as realpathSync3 } from "fs";
18684
+ import { basename as basename4, dirname as dirname4, sep as sep3 } from "path";
18561
18685
 
18562
18686
  // ../../packages/plugin-sdk/src/project-files.ts
18563
- import { existsSync as existsSync8, readdirSync as readdirSync4 } from "fs";
18564
- import { basename as basename5, join as join13 } from "path";
18687
+ import { existsSync as existsSync9, readdirSync as readdirSync4 } from "fs";
18688
+ import { basename as basename5, join as join15 } from "path";
18565
18689
 
18566
18690
  // ../../packages/plugin-sdk/src/provider-env-antigravity.ts
18567
18691
  var optionalBaseUrl2 = external_exports.preprocess((v) => {
@@ -18596,8 +18720,8 @@ import { randomUUID as randomUUID14 } from "crypto";
18596
18720
  var THIRTY_DAYS_MS = 30 * 24 * 60 * 60 * 1e3;
18597
18721
 
18598
18722
  // ../../packages/plugin-sdk/src/throttle.ts
18599
- import { mkdirSync as mkdirSync3, statSync as statSync6, writeFileSync as writeFileSync6 } from "fs";
18600
- import { join as join14 } from "path";
18723
+ import { mkdirSync as mkdirSync3, statSync as statSync8, writeFileSync as writeFileSync6 } from "fs";
18724
+ import { join as join16 } from "path";
18601
18725
 
18602
18726
  // ../../packages/setup-wizard/src/onboard-posture.ts
18603
18727
  function parsePosture(json2) {
@@ -18636,7 +18760,7 @@ function parseCurrent(json2) {
18636
18760
 
18637
18761
  // ../../packages/setup-wizard/src/remediation/rotation-checklist.ts
18638
18762
  import { writeFileSync as writeFileSync7 } from "fs";
18639
- import { join as join15 } from "path";
18763
+ import { join as join17 } from "path";
18640
18764
 
18641
18765
  // ../../packages/setup-wizard/src/triage/gate-display.ts
18642
18766
  var ACTION_RANK = {
@@ -18663,9 +18787,9 @@ var RANK = Object.fromEntries(
18663
18787
  );
18664
18788
 
18665
18789
  // ../../packages/setup-wizard/src/triage/plan-file.ts
18666
- import { mkdtempSync, readFileSync as readFileSync10, rmdirSync, rmSync as rmSync5, writeFileSync as writeFileSync8 } from "fs";
18790
+ import { mkdtempSync, readFileSync as readFileSync11, rmdirSync, rmSync as rmSync6, writeFileSync as writeFileSync8 } from "fs";
18667
18791
  import { tmpdir } from "os";
18668
- import { basename as basename6, dirname as dirname4, join as join16 } from "path";
18792
+ import { basename as basename6, dirname as dirname5, join as join18 } from "path";
18669
18793
  var SuppressionEntrySchema = external_exports.object({
18670
18794
  ruleId: external_exports.string(),
18671
18795
  category: DetectionCategory,