@shield-agent/kya 0.16.0 → 0.18.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.
Files changed (46) hide show
  1. package/.mcp.json +1 -1
  2. package/README.md +6 -4
  3. package/amp/settings.example.json +1 -1
  4. package/assets/activity-receipt.png +0 -0
  5. package/assets/report-activity.png +0 -0
  6. package/assets/report-certify.png +0 -0
  7. package/assets/report-changes.png +0 -0
  8. package/assets/report-gateway-backends.png +0 -0
  9. package/assets/report-gateway-listeners.png +0 -0
  10. package/assets/report-gateway-playground.png +0 -0
  11. package/assets/report-gateway-policies.png +0 -0
  12. package/assets/report-gateway-routes.png +0 -0
  13. package/assets/report-gateway.png +0 -0
  14. package/assets/report-overview.png +0 -0
  15. package/claude/claude_desktop_config.example.json +1 -1
  16. package/cline/cline_mcp_settings.example.json +1 -1
  17. package/copilot/mcp-config.example.json +1 -1
  18. package/dist/receipt/gate-page.d.ts +41 -2
  19. package/dist/receipt/gate-page.d.ts.map +1 -1
  20. package/dist/receipt/gate-page.js +59 -0
  21. package/dist/receipt/gate-page.js.map +1 -1
  22. package/dist/receipt/live-server.d.ts.map +1 -1
  23. package/dist/receipt/live-server.js +47 -2
  24. package/dist/receipt/live-server.js.map +1 -1
  25. package/dist/receipt/receipt-css.d.ts.map +1 -1
  26. package/dist/receipt/receipt-css.js +94 -44
  27. package/dist/receipt/receipt-css.js.map +1 -1
  28. package/dist/receipt/render-receipt.d.ts +17 -0
  29. package/dist/receipt/render-receipt.d.ts.map +1 -1
  30. package/dist/receipt/render-receipt.js +528 -270
  31. package/dist/receipt/render-receipt.js.map +1 -1
  32. package/droid/README.md +1 -1
  33. package/droid/mcp.example.json +1 -1
  34. package/gemini/settings.example.json +1 -1
  35. package/grok/README.md +1 -1
  36. package/kilo/kilo.example.json +1 -1
  37. package/kimi/mcp.example.json +1 -1
  38. package/kiro/mcp.example.json +1 -1
  39. package/manifest.json +1 -1
  40. package/mastracode/mcp.example.json +1 -1
  41. package/mcp.json +1 -1
  42. package/openai/codex.config.example.toml +1 -1
  43. package/opencode/opencode.example.json +1 -1
  44. package/package.json +1 -1
  45. package/qwen/settings.example.json +1 -1
  46. package/server.json +2 -2
package/.mcp.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "mcpServers": {
3
3
  "shield-kya": {
4
4
  "command": "npx",
5
- "args": ["--no-install", "@shield-agent/kya@0.16.0", "serve-mcp", "--stdio"],
5
+ "args": ["--no-install", "@shield-agent/kya@0.18.0", "serve-mcp", "--stdio"],
6
6
  "env": {
7
7
  "KYA_BASE_URL": "https://shield-agent.com",
8
8
  "KYA_API_KEY": "${KYA_API_KEY}",
package/README.md CHANGED
@@ -53,7 +53,9 @@ That **inits** `.kya/`, **wires** local MCP (`.mcp.json`, `mcp.json`, `.cursor/m
53
53
 
54
54
  ![Changes tab — what actually changed per session: files touched with redacted diff previews](https://raw.githubusercontent.com/The-Pixel-Boys/shield-kya/main/assets/report-changes.png)
55
55
 
56
- <!-- Local paths kept in package for offline viewers: assets/report-overview.png, assets/report-certify.png, assets/report-activity.png, assets/report-changes.png (legacy: assets/activity-receipt.png) -->
56
+ ![Gateway section — local MCP gate with listeners, routes, backends, policies, and a dry-run playground](https://raw.githubusercontent.com/The-Pixel-Boys/shield-kya/main/assets/report-gateway.png)
57
+
58
+ <!-- Local paths kept in package for offline viewers: assets/report-overview.png, assets/report-certify.png, assets/report-activity.png, assets/report-changes.png, assets/report-gateway.png (legacy: assets/activity-receipt.png) -->
57
59
 
58
60
  ```bash
59
61
  kya start --no-open # wire only
@@ -182,7 +184,7 @@ MCP Registry entry: `server.json` plus package `mcpName` `io.github.The-Pixel-Bo
182
184
  "mcpServers": {
183
185
  "shield-kya": {
184
186
  "command": "npx",
185
- "args": ["--no-install", "@shield-agent/kya@0.16.0", "serve-mcp", "--stdio"],
187
+ "args": ["--no-install", "@shield-agent/kya@0.18.0", "serve-mcp", "--stdio"],
186
188
  "env": {
187
189
  "KYA_BASE_URL": "http://127.0.0.1:8090",
188
190
  "KYA_API_KEY": "${KYA_API_KEY}",
@@ -222,7 +224,7 @@ Offline evaluate by default (no network, no hosted plane); an explicit config ho
222
224
 
223
225
  ```bash
224
226
  # Prefer a preinstalled package (no registry auto-install):
225
- npx --no-install @shield-agent/kya@0.16.0 serve-mcp --stdio
227
+ npx --no-install @shield-agent/kya@0.18.0 serve-mcp --stdio
226
228
  # Or after npm i -g / local install:
227
229
  kya serve-mcp --stdio
228
230
  ```
@@ -233,7 +235,7 @@ Copy `claude/claude_desktop_config.example.json` into Claude Desktop MCP setting
233
235
 
234
236
  ## OpenAI (Codex / Responses)
235
237
 
236
- **Codex CLI / IDE:** copy `openai/codex.config.example.toml` into `~/.codex/config.toml`. Local stdio uses `npx --no-install @shield-agent/kya@0.16.0 serve-mcp --stdio`. Hosted Codex uses `url = "https://shield-agent.com/mcp"` with `bearer_token_env_var = "KYA_API_KEY"`.
238
+ **Codex CLI / IDE:** copy `openai/codex.config.example.toml` into `~/.codex/config.toml`. Local stdio uses `npx --no-install @shield-agent/kya@0.18.0 serve-mcp --stdio`. Hosted Codex uses `url = "https://shield-agent.com/mcp"` with `bearer_token_env_var = "KYA_API_KEY"`.
237
239
 
238
240
  **Responses API:** see `openai/responses-mcp.example.json` (`server_url` + `Authorization: Bearer <KYA_API_KEY>`).
239
241
 
@@ -2,7 +2,7 @@
2
2
  "amp.mcpServers": {
3
3
  "shield-kya": {
4
4
  "command": "npx",
5
- "args": ["--no-install", "@shield-agent/kya@0.16.0", "serve-mcp", "--stdio"],
5
+ "args": ["--no-install", "@shield-agent/kya@0.18.0", "serve-mcp", "--stdio"],
6
6
  "env": {
7
7
  "KYA_BASE_URL": "https://shield-agent.com",
8
8
  "KYA_API_KEY": "${KYA_API_KEY}",
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -2,7 +2,7 @@
2
2
  "mcpServers": {
3
3
  "shield-kya": {
4
4
  "command": "npx",
5
- "args": ["--no-install", "@shield-agent/kya@0.16.0", "serve-mcp", "--stdio"],
5
+ "args": ["--no-install", "@shield-agent/kya@0.18.0", "serve-mcp", "--stdio"],
6
6
  "env": {
7
7
  "KYA_BASE_URL": "https://shield-agent.com",
8
8
  "KYA_API_KEY": "${KYA_API_KEY}",
@@ -2,7 +2,7 @@
2
2
  "mcpServers": {
3
3
  "shield-kya": {
4
4
  "command": "npx",
5
- "args": ["--no-install", "@shield-agent/kya@0.16.0", "serve-mcp", "--stdio"],
5
+ "args": ["--no-install", "@shield-agent/kya@0.18.0", "serve-mcp", "--stdio"],
6
6
  "env": {
7
7
  "KYA_BASE_URL": "https://shield-agent.com",
8
8
  "KYA_API_KEY": "${KYA_API_KEY}",
@@ -2,7 +2,7 @@
2
2
  "mcpServers": {
3
3
  "shield-kya": {
4
4
  "command": "npx",
5
- "args": ["--no-install", "@shield-agent/kya@0.16.0", "serve-mcp", "--stdio"],
5
+ "args": ["--no-install", "@shield-agent/kya@0.18.0", "serve-mcp", "--stdio"],
6
6
  "env": {
7
7
  "KYA_BASE_URL": "https://shield-agent.com",
8
8
  "KYA_API_KEY": "${KYA_API_KEY}",
@@ -1,9 +1,40 @@
1
1
  import { LOOPBACK_RULE } from "../gate/config-gen.js";
2
2
  import { type GateFailureMode } from "../gate/config.js";
3
3
  import type { TrailEvent } from "../trail.js";
4
- import { GATE_NOT_SETUP_QUICKSTART, loadGateCard, toolServerPrefix, type GateCard, type GateServerRow, type GateState } from "./gate-card.js";
4
+ import { GATE_NOT_SETUP_QUICKSTART, loadGateCard, toolServerPrefix, type GateCard, type GateServerRow, type GateServerWorst, type GateState } from "./gate-card.js";
5
5
  export { toolServerPrefix };
6
- export { GATE_NOT_SETUP_QUICKSTART, loadGateCard, type GateCard, type GateServerRow, type GateState, };
6
+ export { GATE_NOT_SETUP_QUICKSTART, loadGateCard, type GateCard, type GateServerRow, type GateServerWorst, type GateState, };
7
+ export interface GateListener {
8
+ readonly name: string;
9
+ readonly protocol: string;
10
+ readonly address: string;
11
+ readonly state: "running" | "stopped";
12
+ /** ISO timestamp when running; omitted when stopped. */
13
+ readonly uptime?: string;
14
+ /** Extra detail line, escaped before render. */
15
+ readonly detail?: string;
16
+ }
17
+ export interface GateRoute {
18
+ readonly pattern: string;
19
+ readonly backend: string;
20
+ readonly backendLabel: string;
21
+ readonly tier: "READ" | "WRITE" | "ADMIN" | undefined;
22
+ readonly denyCount: number;
23
+ readonly events: number;
24
+ readonly worst: GateServerWorst;
25
+ readonly deniedTools: readonly string[];
26
+ }
27
+ export interface GatePolicySummary {
28
+ readonly networkRule: string;
29
+ readonly failureMode: GateFailureMode;
30
+ readonly totalPolicies: number;
31
+ readonly verdicts: {
32
+ readonly allow: number;
33
+ readonly deny: number;
34
+ readonly hold: number;
35
+ readonly never: number;
36
+ };
37
+ }
7
38
  export interface GatePage extends GateCard {
8
39
  readonly failureMode: GateFailureMode;
9
40
  readonly otlpPort: number;
@@ -16,6 +47,14 @@ export interface GatePage extends GateCard {
16
47
  readonly servers: readonly GatePageServerRow[];
17
48
  /** Window events whose toolId matches a configured server (<id>__<tool>). */
18
49
  readonly gateEvents: readonly TrailEvent[];
50
+ /** MCP listener + OTLP receiver. */
51
+ readonly listeners: readonly GateListener[];
52
+ /** Tool-call route per configured server. */
53
+ readonly routes: readonly GateRoute[];
54
+ /** Network rule, failure mode, per-server policies, and window verdict mix. */
55
+ readonly policySummary: GatePolicySummary;
56
+ /** Recent distinct tool names for the playground sampler. */
57
+ readonly playgroundSamples: readonly string[];
19
58
  }
20
59
  export interface GatePageServerRow extends GateServerRow {
21
60
  readonly importedFrom: readonly string[];
@@ -1 +1 @@
1
- {"version":3,"file":"gate-page.d.ts","sourceRoot":"","sources":["../../src/receipt/gate-page.ts"],"names":[],"mappings":"AAOA,OAAO,EAAmB,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAgB,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EACL,yBAAyB,EACzB,YAAY,EACZ,gBAAgB,EAChB,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,SAAS,EACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAE5B,OAAO,EACL,yBAAyB,EACzB,YAAY,EACZ,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,SAAS,GACf,CAAC;AAEF,MAAM,WAAW,QAAS,SAAQ,QAAQ;IACxC,QAAQ,CAAC,WAAW,EAAE,eAAe,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,qDAAqD;IACrD,QAAQ,CAAC,SAAS,EAAE;QAAE,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAChF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAC;IAC/C,6EAA6E;IAC7E,QAAQ,CAAC,UAAU,EAAE,SAAS,UAAU,EAAE,CAAC;CAC5C;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACtD,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,MAAM,EAAE;QACf,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;QAC7D,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;KAC1C,CAAC;IACF,wFAAwF;IACxF,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IACxC,oFAAoF;IACpF,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wEAAwE;AACxE,OAAO,EAAE,aAAa,EAAE,CAAC;AAEzB,0DAA0D;AAC1D,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGrE;AAeD;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACf;IAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAM/C;AAED,+EAA+E;AAC/E,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,UAAU,EAAE,EAC7B,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,QAAQ,CAoEV"}
1
+ {"version":3,"file":"gate-page.d.ts","sourceRoot":"","sources":["../../src/receipt/gate-page.ts"],"names":[],"mappings":"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"}
@@ -102,6 +102,56 @@ export function loadGatePage(events, env = process.env) {
102
102
  ...(s.transport === "http" ? { url: s.url } : {}),
103
103
  };
104
104
  });
105
+ const running = card.state === "running";
106
+ const listeners = [
107
+ {
108
+ name: "MCP listener",
109
+ protocol: "MCP over HTTP",
110
+ address: card.url ? card.url : `port ${card.port ?? config.port}`,
111
+ state: running ? "running" : "stopped",
112
+ ...(running && card.startedAt ? { uptime: card.startedAt } : {}),
113
+ detail: "local proxy for host MCP clients",
114
+ },
115
+ {
116
+ name: "OTLP receiver",
117
+ protocol: "OTLP/HTTP",
118
+ address: `port ${state?.otlpPort ?? config.otlpPort}`,
119
+ state: running ? "running" : "stopped",
120
+ detail: "telemetry ingestion",
121
+ },
122
+ ];
123
+ const routes = rows.map((s) => ({
124
+ pattern: `${s.id}__*`,
125
+ backend: s.id,
126
+ backendLabel: s.serverFacet,
127
+ tier: s.policy.defaultTier,
128
+ denyCount: s.policy.denyPatterns.length,
129
+ events: s.events,
130
+ worst: s.worst,
131
+ deniedTools: s.deniedTools,
132
+ }));
133
+ const verdicts = { allow: 0, deny: 0, hold: 0, never: 0 };
134
+ for (const e of gateEvents) {
135
+ if (e.neverEvent || e.reasonCode === "NEVER_EVENT")
136
+ verdicts.never++;
137
+ else if (e.verdict.toUpperCase() === "DENY")
138
+ verdicts.deny++;
139
+ else if (e.verdict.toUpperCase() === "REQUIRE_APPROVE")
140
+ verdicts.hold++;
141
+ else if (e.verdict.toUpperCase() === "ALLOW")
142
+ verdicts.allow++;
143
+ }
144
+ const seenTools = new Set();
145
+ const playgroundSamples = [];
146
+ for (const e of [...gateEvents].sort((a, b) => b.ts.localeCompare(a.ts))) {
147
+ const tool = toolNameFromToolId(e.toolId);
148
+ if (!tool || seenTools.has(tool))
149
+ continue;
150
+ seenTools.add(tool);
151
+ playgroundSamples.push(tool);
152
+ if (playgroundSamples.length >= 6)
153
+ break;
154
+ }
105
155
  return {
106
156
  ...card,
107
157
  failureMode: config.failureMode,
@@ -110,6 +160,15 @@ export function loadGatePage(events, env = process.env) {
110
160
  binaryPath: binPath,
111
161
  servers: rows,
112
162
  gateEvents,
163
+ listeners,
164
+ routes,
165
+ policySummary: {
166
+ networkRule: LOOPBACK_RULE,
167
+ failureMode: config.failureMode,
168
+ totalPolicies: 1 + rows.length,
169
+ verdicts,
170
+ },
171
+ playgroundSamples,
113
172
  ...(bin.version ? { binaryVersion: bin.version } : {}),
114
173
  };
115
174
  }
@@ -1 +1 @@
1
- {"version":3,"file":"gate-page.js","sourceRoot":"","sources":["../../src/receipt/gate-page.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gate-page.js","sourceRoot":"","sources":["../../src/receipt/gate-page.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"live-server.d.ts","sourceRoot":"","sources":["../../src/receipt/live-server.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,mBAAmB,EAIzB,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAUnD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAmBD,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE;IACpC,MAAM,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACpC,OAAO,EAAE,mBAAmB,CAAC;CAC9B,GAAG,OAAO,CAYV;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CA0S5B"}
1
+ {"version":3,"file":"live-server.d.ts","sourceRoot":"","sources":["../../src/receipt/live-server.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,mBAAmB,EAIzB,MAAM,WAAW,CAAC;AAEnB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAenD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACxC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAmBD,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,GAAG,EAAE;IACpC,MAAM,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACpC,OAAO,EAAE,mBAAmB,CAAC;CAC9B,GAAG,OAAO,CAYV;AAED,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CA2V5B"}
@@ -9,7 +9,7 @@ import { dirname } from "node:path";
9
9
  import { runGateDoctor, runGateRun, runGateStop } from "../commands/gate.js";
10
10
  import { CLI_VERSION } from "../version.js";
11
11
  import { evaluateGatewayTool } from "./gate-page.js";
12
- import { loadReceiptModel, renderReceiptHtml } from "./render-receipt.js";
12
+ import { loadReceiptModel, renderReceiptHtml, renderFeedPage, } from "./render-receipt.js";
13
13
  import { trailPath } from "../trail.js";
14
14
  const LOOPBACK = "127.0.0.1";
15
15
  const MAX_SSE_CLIENTS = 8;
@@ -99,13 +99,25 @@ export function startLiveReceiptServer(options) {
99
99
  });
100
100
  req.on("error", reject);
101
101
  });
102
+ function isFeedFilters(value) {
103
+ if (typeof value !== "object" || value === null)
104
+ return false;
105
+ for (const [k, v] of Object.entries(value)) {
106
+ if (typeof k !== "string")
107
+ return false;
108
+ if (!Array.isArray(v) || v.some((x) => typeof x !== "string"))
109
+ return false;
110
+ }
111
+ return true;
112
+ }
102
113
  const server = createServer((req, res) => {
103
114
  try {
104
115
  const url = new URL(req.url ?? "/", `http://${LOOPBACK}`);
105
116
  const isPostAction = req.method === "POST" &&
106
117
  (url.pathname === "/gate/playground" ||
107
118
  url.pathname === "/gate/action" ||
108
- url.pathname === "/stop");
119
+ url.pathname === "/stop" ||
120
+ url.pathname === "/feed");
109
121
  if (isPostAction && !isLoopbackClient(req)) {
110
122
  return forbidden(res, { ok: false, error: "loopback only" });
111
123
  }
@@ -196,6 +208,39 @@ export function startLiveReceiptServer(options) {
196
208
  });
197
209
  return;
198
210
  }
211
+ if (req.method === "POST" && url.pathname === "/feed") {
212
+ void (async () => {
213
+ try {
214
+ const body = (await readJsonBody(req));
215
+ const filters = isFeedFilters(body?.filters) ? body.filters : {};
216
+ const requestedPage = typeof body?.page === "number" && body.page > 0 ? Math.floor(body.page) : 1;
217
+ const model = loadReceiptModel({
218
+ cwd,
219
+ sessionId: options.sessionId,
220
+ days: options.days,
221
+ });
222
+ const result = renderFeedPage(model.events, filters, requestedPage, Date.now(), true);
223
+ return jsonOk(res, {
224
+ ok: true,
225
+ feedHtml: result.feedHtml,
226
+ paginationHtml: result.paginationHtml,
227
+ total: result.total,
228
+ page: result.page,
229
+ pages: result.pages,
230
+ });
231
+ }
232
+ catch (err) {
233
+ if (err instanceof SyntaxError) {
234
+ return badRequest(res, { ok: false, error: "invalid JSON body" });
235
+ }
236
+ const message = err instanceof Error ? err.message : String(err);
237
+ res.writeHead(500, { "Content-Type": "application/json; charset=utf-8" });
238
+ res.end(`${JSON.stringify({ ok: false, error: message })}\n`);
239
+ return;
240
+ }
241
+ })();
242
+ return;
243
+ }
199
244
  if (req.method === "GET" && url.pathname === "/healthz") {
200
245
  // Cheap liveness + version handshake for daemon reuse — never renders,
201
246
  // so a render-time failure (e.g. assertNoSecrets) cannot wedge it. The
@@ -1 +1 @@
1
- {"version":3,"file":"live-server.js","sourceRoot":"","sources":["../../src/receipt/live-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"live-server.js","sourceRoot":"","sources":["../../src/receipt/live-server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"receipt-css.d.ts","sourceRoot":"","sources":["../../src/receipt/receipt-css.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAgxBnC"}
1
+ {"version":3,"file":"receipt-css.d.ts","sourceRoot":"","sources":["../../src/receipt/receipt-css.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAk0BnC"}
@@ -109,6 +109,14 @@ export function receiptCss() {
109
109
  color: var(--fg);
110
110
  }
111
111
  .nav-label { display: inline-flex; align-items: center; gap: 0.4rem; }
112
+ .nav-group { display: flex; flex-direction: column; gap: 0.05rem; margin-top: 0.35rem; }
113
+ .nav-group-label {
114
+ display: inline-flex; align-items: center; gap: 0.4rem;
115
+ padding: 0.45rem 0.75rem 0.25rem;
116
+ font-size: 0.72rem; font-weight: 700; letter-spacing: 0.06em;
117
+ text-transform: uppercase; color: var(--day);
118
+ }
119
+ .nav-sub { margin-left: 0.75rem; font-size: 0.78rem; font-weight: 500; }
112
120
  .nav-count {
113
121
  font-size: 0.72rem; font-variant-numeric: tabular-nums; font-weight: 650;
114
122
  color: var(--mute); background: color-mix(in srgb, var(--bg) 55%, var(--card));
@@ -184,44 +192,21 @@ export function receiptCss() {
184
192
  @media (prefers-reduced-motion: reduce) {
185
193
  .live::before { animation: none; }
186
194
  }
187
- /* Hero KPI grid: Certify spans two columns on wide layouts, 4→2→1. Every
188
- hero card is a direct .panel child — one chrome, no wrapper special-cases. */
189
195
  .hero {
190
- display: grid; grid-template-columns: repeat(4, 1fr);
191
- gap: 1rem; margin-bottom: 1.25rem; align-items: stretch;
192
- }
193
- .hero > .panel { margin-bottom: 0; height: 100%; }
194
- .hero-certify { grid-column: span 2; min-width: 0; }
195
- /* Result-tone accent: inset bar so the border box never shifts. */
196
- .hero-certify.pass {
197
- border-color: color-mix(in srgb, var(--ok) 40%, var(--line));
198
- box-shadow: inset 3px 0 0 var(--ok);
199
- }
200
- .hero-certify.gap {
201
- border-color: color-mix(in srgb, var(--warn) 40%, var(--line));
202
- box-shadow: inset 3px 0 0 var(--warn);
203
- }
204
- /* Hero result pill reads larger than inline status pills. */
205
- .hero-certify .pill { font-size: 0.82rem; padding: 0.22rem 0.75rem; }
206
- /* Status legend + attested summary: small muted single lines under the
207
- count tiles; allowed to wrap on narrow viewports. */
208
- .hero-certify .legend, .hero-certify .att-line {
209
- margin: 0.3rem 0 0; font-size: 0.72rem; color: var(--mute);
210
- overflow-wrap: break-word;
211
- }
212
- /* Evidence one-liner sits beneath its gap row (the row is a flex-wrap). */
213
- .hero-certify .rows .gap-ev {
214
- flex-basis: 100%; color: var(--mute); font-size: 0.74rem;
215
- overflow-wrap: break-word;
216
- }
217
- /* Gateway quickstart: compact numbered steps under the not-set-up line. */
218
- .gate .steps {
219
- margin: 0.4rem 0 0; padding-left: 1.25rem;
220
- font-size: 0.78rem; color: var(--mute);
221
- display: flex; flex-direction: column; gap: 0.15rem;
222
- }
196
+ display: flex;
197
+ flex-direction: column;
198
+ gap: 1rem;
199
+ margin-bottom: 1.25rem;
200
+ }
201
+ .hero > .panel { margin-bottom: 0; }
202
+ .hero-tiles {
203
+ display: grid;
204
+ grid-template-columns: repeat(4, 1fr);
205
+ gap: 1rem;
206
+ }
207
+ .hero-tiles > .panel { margin-bottom: 0; height: 100%; }
223
208
  @media (max-width: 1100px) {
224
- .hero { grid-template-columns: repeat(2, 1fr); }
209
+ .hero-tiles { grid-template-columns: repeat(2, 1fr); }
225
210
  }
226
211
  @media (max-width: 900px) {
227
212
  .sidebar {
@@ -247,8 +232,28 @@ export function receiptCss() {
247
232
  main { padding: 1.1rem 0.85rem 3rem; }
248
233
  }
249
234
  @media (max-width: 480px) {
250
- .hero { grid-template-columns: 1fr; }
251
- .hero-certify { grid-column: span 1; }
235
+ .hero-tiles { grid-template-columns: 1fr; }
236
+ }
237
+ /* Result-tone accent: inset bar so the border box never shifts. */
238
+ .hero-certify.pass {
239
+ border-color: color-mix(in srgb, var(--ok) 40%, var(--line));
240
+ box-shadow: inset 3px 0 0 var(--ok);
241
+ }
242
+ .hero-certify.gap {
243
+ border-color: color-mix(in srgb, var(--warn) 40%, var(--line));
244
+ box-shadow: inset 3px 0 0 var(--warn);
245
+ }
246
+ /* Hero result pill reads larger than inline status pills. */
247
+ .hero-certify .pill { font-size: 0.82rem; padding: 0.22rem 0.75rem; }
248
+ /* Status legend + attested summary: small muted single lines under the count tiles. */
249
+ .hero-certify .legend, .hero-certify .att-line {
250
+ margin: 0.3rem 0 0; font-size: 0.72rem; color: var(--mute);
251
+ overflow-wrap: break-word;
252
+ }
253
+ /* Evidence one-liner sits beneath its gap row. */
254
+ .hero-certify .rows .gap-ev {
255
+ flex-basis: 100%; color: var(--mute); font-size: 0.74rem;
256
+ overflow-wrap: break-word;
252
257
  }
253
258
  .kpi-row { display: flex; flex-wrap: wrap; gap: 0.8rem 1.2rem; }
254
259
  .kpi { display: flex; flex-direction: column; gap: 0.1rem; min-width: 2.8rem; }
@@ -301,20 +306,35 @@ export function receiptCss() {
301
306
  .zone { scroll-margin-top: 6.4rem; }
302
307
  .zone-empty { margin: 0.25rem 0 0.5rem; }
303
308
  @supports selector(body:has(*)) {
304
- #activity, #changes, #certify, #gateway, #system { display: none; }
305
- #overview:target, #activity:target, #changes:target, #certify:target, #gateway:target, #system:target { display: block; }
309
+ #activity, #changes, #certify,
310
+ #gateway-home, #gateway-listeners, #gateway-routes, #gateway-backends, #gateway-policies, #gateway-playground,
311
+ #system { display: none; }
312
+ #overview:target,
313
+ #activity:target, #changes:target, #certify:target,
314
+ #gateway-home:target, #gateway-listeners:target, #gateway-routes:target, #gateway-backends:target, #gateway-policies:target, #gateway-playground:target,
315
+ #system:target { display: block; }
306
316
  body:has(#activity:target) #overview,
307
317
  body:has(#changes:target) #overview,
308
318
  body:has(#certify:target) #overview,
309
- body:has(#gateway:target) #overview,
319
+ body:has(#gateway-home:target) #overview,
320
+ body:has(#gateway-listeners:target) #overview,
321
+ body:has(#gateway-routes:target) #overview,
322
+ body:has(#gateway-backends:target) #overview,
323
+ body:has(#gateway-policies:target) #overview,
324
+ body:has(#gateway-playground:target) #overview,
310
325
  body:has(#system:target) #overview { display: none; }
311
326
  body:not(:has(.zone:target)) .nav-link[href="#overview"],
312
327
  body:has(#overview:target) .nav-link[href="#overview"],
313
328
  body:has(#activity:target) .nav-link[href="#activity"],
314
329
  body:has(#changes:target) .nav-link[href="#changes"],
315
330
  body:has(#certify:target) .nav-link[href="#certify"],
316
- body:has(#gateway:target) .nav-link[href="#gateway"],
317
- body:has(#system:target) .nav-link[href="#system"] {
331
+ body:has(#system:target) .nav-link[href="#system"],
332
+ body:has(#gateway-home:target) .nav-link[href="#gateway-home"],
333
+ body:has(#gateway-listeners:target) .nav-link[href="#gateway-listeners"],
334
+ body:has(#gateway-routes:target) .nav-link[href="#gateway-routes"],
335
+ body:has(#gateway-backends:target) .nav-link[href="#gateway-backends"],
336
+ body:has(#gateway-policies:target) .nav-link[href="#gateway-policies"],
337
+ body:has(#gateway-playground:target) .nav-link[href="#gateway-playground"] {
318
338
  color: var(--fg);
319
339
  background: var(--bg);
320
340
  border-color: var(--line);
@@ -684,10 +704,27 @@ export function receiptCss() {
684
704
  border-radius: 6px; padding: 0.18rem 0.4rem;
685
705
  }
686
706
  /* Gateway zone dashboard */
707
+ .gate-zone { display: flex; flex-direction: column; gap: 1rem; }
687
708
  .gate-zone h2 { margin: 0 0 0.15rem; }
688
- .gate-zone > .sub {
709
+ .gate-zone > .sub,
710
+ .page-sub {
689
711
  margin: 0 0 0.9rem; color: var(--mute); font-size: 0.82rem;
690
712
  }
713
+ .page-title {
714
+ margin: 0 0 0.15rem; font-size: 1.1rem; font-weight: 600;
715
+ letter-spacing: -0.02em;
716
+ }
717
+ .gate-status-header {
718
+ display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.55rem;
719
+ }
720
+ .gate-status-title {
721
+ font-size: 1.25rem; font-weight: 600; letter-spacing: -0.025em;
722
+ }
723
+ .gate-status-meta {
724
+ display: inline-flex; flex-wrap: wrap; align-items: center; gap: 0.45rem;
725
+ color: var(--mute); font-size: 0.84rem;
726
+ }
727
+ .gate-status-meta .pill { font-size: 0.68rem; }
691
728
  .stat-cards {
692
729
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem;
693
730
  margin-bottom: 1rem;
@@ -797,6 +834,19 @@ export function receiptCss() {
797
834
  button[disabled], .stat[disabled] {
798
835
  opacity: 0.55;
799
836
  cursor: not-allowed;
837
+ }
838
+ .pagination-bar {
839
+ display: flex;
840
+ flex-wrap: wrap;
841
+ align-items: center;
842
+ justify-content: center;
843
+ gap: 0.4rem;
844
+ margin-top: 0.9rem;
845
+ }
846
+ .pagination-bar .stat.active {
847
+ color: var(--fg);
848
+ border-color: color-mix(in srgb, var(--ok) 55%, var(--line));
849
+ background: color-mix(in srgb, var(--ok) 12%, var(--card));
800
850
  }`;
801
851
  }
802
852
  //# sourceMappingURL=receipt-css.js.map