@solongate/proxy 0.81.14 → 0.81.16

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/index.js CHANGED
@@ -7271,7 +7271,7 @@ function LivePanel({ active: active2 }) {
7271
7271
  const [sel, setSel] = useState2(0);
7272
7272
  const [actionMsg, setActionMsg] = useState2(null);
7273
7273
  const notifiedRef = useRef2(/* @__PURE__ */ new Set());
7274
- const notifyReady = useRef2(false);
7274
+ const openedAtRef = useRef2(Date.now());
7275
7275
  const activePolicyRef = useRef2(null);
7276
7276
  const [mode, setMode] = useState2("stream");
7277
7277
  const [pickIdx, setPickIdx] = useState2(0);
@@ -7479,14 +7479,10 @@ function LivePanel({ active: active2 }) {
7479
7479
  useEffect2(() => {
7480
7480
  if (!active2) return;
7481
7481
  const notable = mergedRef.current.filter((e) => e.decision !== "ALLOW" || e.dlp || e.burst);
7482
- if (!notifyReady.current) {
7483
- for (const e of notable) notifiedRef.current.add(e.id);
7484
- notifyReady.current = true;
7485
- return;
7486
- }
7487
7482
  for (const e of notable) {
7488
7483
  if (notifiedRef.current.has(e.id)) continue;
7489
7484
  notifiedRef.current.add(e.id);
7485
+ if (!(e.at > openedAtRef.current)) continue;
7490
7486
  const who = e.agent ? ` \xB7 ${truncate2(e.agent, 20)}` : "";
7491
7487
  if (e.dlp) fireAlert("sec:" + e.id, "DLP hit", `SECRET in ${e.tool}${who}: ${truncate2(e.detail, 60)}`, "bad");
7492
7488
  else if (e.decision !== "ALLOW") fireAlert("sec:" + e.id, "Call denied", `DENY ${e.tool}${who}: ${truncate2(e.rule ?? e.detail, 60)}`, "bad");
@@ -15244,7 +15240,7 @@ ${msg.content.text}`;
15244
15240
 
15245
15241
  // src/index.ts
15246
15242
  init_cli_utils();
15247
- var CLI_SUBCOMMANDS = /* @__PURE__ */ new Set(["login", "logout", "shield", "create", "inject", "pull", "push", "list", "ls", "logs-server", "local-logs", "policy", "ratelimit", "dlp", "stats", "audit", "agents", "agent", "doctor", "watch", "keys", "mcp", "alerts", "webhooks", "dataroom", "ui", "dashboard", "tui"]);
15243
+ var CLI_SUBCOMMANDS = /* @__PURE__ */ new Set(["login", "logout", "shield", "create", "inject", "pull", "push", "list", "ls", "logs-server", "local-logs", "policy", "ratelimit", "dlp", "stats", "audit", "agents", "agent", "doctor", "watch", "keys", "mcp", "alerts", "webhooks", "dataroom"]);
15248
15244
  var IS_HUMAN_CLI = process.argv.length <= 2 || CLI_SUBCOMMANDS.has(process.argv[2] ?? "");
15249
15245
  if (!IS_HUMAN_CLI) {
15250
15246
  console.log = (...args) => {
@@ -15288,7 +15284,7 @@ async function main5() {
15288
15284
  printWelcome();
15289
15285
  return;
15290
15286
  }
15291
- if (subcommand === "dataroom" || subcommand === "ui" || subcommand === "dashboard" || subcommand === "tui") {
15287
+ if (subcommand === "dataroom") {
15292
15288
  const { launchTui: launchTui2 } = await Promise.resolve().then(() => (init_tui(), tui_exports));
15293
15289
  await launchTui2();
15294
15290
  return;
package/dist/tui/index.js CHANGED
@@ -681,7 +681,7 @@ function LivePanel({ active: active2 }) {
681
681
  const [sel, setSel] = useState2(0);
682
682
  const [actionMsg, setActionMsg] = useState2(null);
683
683
  const notifiedRef = useRef2(/* @__PURE__ */ new Set());
684
- const notifyReady = useRef2(false);
684
+ const openedAtRef = useRef2(Date.now());
685
685
  const activePolicyRef = useRef2(null);
686
686
  const [mode, setMode] = useState2("stream");
687
687
  const [pickIdx, setPickIdx] = useState2(0);
@@ -889,14 +889,10 @@ function LivePanel({ active: active2 }) {
889
889
  useEffect2(() => {
890
890
  if (!active2) return;
891
891
  const notable = mergedRef.current.filter((e) => e.decision !== "ALLOW" || e.dlp || e.burst);
892
- if (!notifyReady.current) {
893
- for (const e of notable) notifiedRef.current.add(e.id);
894
- notifyReady.current = true;
895
- return;
896
- }
897
892
  for (const e of notable) {
898
893
  if (notifiedRef.current.has(e.id)) continue;
899
894
  notifiedRef.current.add(e.id);
895
+ if (!(e.at > openedAtRef.current)) continue;
900
896
  const who = e.agent ? ` \xB7 ${truncate(e.agent, 20)}` : "";
901
897
  if (e.dlp) fireAlert("sec:" + e.id, "DLP hit", `SECRET in ${e.tool}${who}: ${truncate(e.detail, 60)}`, "bad");
902
898
  else if (e.decision !== "ALLOW") fireAlert("sec:" + e.id, "Call denied", `DENY ${e.tool}${who}: ${truncate(e.rule ?? e.detail, 60)}`, "bad");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@solongate/proxy",
3
- "version": "0.81.14",
3
+ "version": "0.81.16",
4
4
  "description": "AI tool security proxy: protect any AI tool server with customizable policies, path/command constraints, rate limiting, and audit logging. No code changes required.",
5
5
  "type": "module",
6
6
  "bin": {