@yadsh/dsh-prompt-firewall 0.1.0 → 0.1.2

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/lib/index.js CHANGED
@@ -35,6 +35,7 @@ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn,
35
35
  import { Context } from '@deepseek-ai/cordis';
36
36
  import { installSettingsSection, settingsNamespace } from '@deepseek-ai/dsh-settings';
37
37
  import { Remote, TypertRemoteService } from '@deepseek-ai/dsh-typert-protocol';
38
+ import { createHostLoggerSink, getPluginLogger, } from '@yadsh/dsh-plugin-log';
38
39
  import { AuditStore } from './audit.js';
39
40
  import { ConfigSchema, resolveConfig } from './config.js';
40
41
  import { applyFirewall } from './firewall.js';
@@ -75,8 +76,15 @@ let PromptFirewall = (() => {
75
76
  compiledRules;
76
77
  audits;
77
78
  metrics = new FirewallMetrics();
79
+ logger;
78
80
  constructor(ctx, config = {}) {
79
81
  super(ctx, 'promptFirewall', { namespace: 'promptFirewall' });
82
+ this.logger = getPluginLogger({
83
+ pluginId: 'dsh-prompt-firewall',
84
+ console: 'trace',
85
+ consoleSink: createHostLoggerSink(ctx.logger),
86
+ });
87
+ ctx.effect(() => async () => this.logger.close(), 'dsh-prompt-firewall.logger');
80
88
  this.entryConfig = structuredClone(config);
81
89
  this.configSource = () => this.entryConfig;
82
90
  this.resolvedConfig = resolveConfig(config);
@@ -95,10 +103,14 @@ let PromptFirewall = (() => {
95
103
  config: this.resolvedConfig,
96
104
  auditStore: this.audits,
97
105
  metrics: this.metrics,
98
- logger: ctx.logger,
106
+ logger: this.logger,
99
107
  evaluate: section => evaluateSection(section, this.compiledRules),
100
108
  });
101
109
  }, { prepend: true });
110
+ this.logger.info('plugin.ready', {
111
+ enabled: this.resolvedConfig.enabled,
112
+ mode: this.resolvedConfig.mode,
113
+ });
102
114
  }
103
115
  inspectLast() {
104
116
  return this.audits.last();
@@ -158,6 +170,10 @@ let PromptFirewall = (() => {
158
170
  this.resolvedConfig = resolveConfig(this.configSource());
159
171
  this.compiledRules = compileRules(this.resolvedConfig);
160
172
  this.audits.configure(this.resolvedConfig.audit.historySize, this.resolvedConfig.audit.highlightNewSections);
173
+ this.logger.info('firewall.rules.reloaded', {
174
+ enabled: this.resolvedConfig.enabled,
175
+ mode: this.resolvedConfig.mode,
176
+ });
161
177
  }
162
178
  };
163
179
  })();
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -90,7 +90,7 @@ export const TYPERT = {
90
90
  typeSymbol: '@yadsh/dsh-prompt-firewall/types#PromptFirewallInspectorSnapshot',
91
91
  schema: _yadsh_dsh_prompt_firewall_promptFirewall_inspect_result$schema,
92
92
  },
93
- sourceLocation: {"file":"packages/dsh-prompt-firewall/src/index.ts","line":120,"column":3},
93
+ sourceLocation: {"file":"packages/dsh-prompt-firewall/src/index.ts","line":140,"column":3},
94
94
  },
95
95
  {
96
96
  id: '@yadsh/dsh-prompt-firewall#promptFirewall/setSectionPolicy',
@@ -136,7 +136,7 @@ export const TYPERT = {
136
136
  typeSymbol: '@yadsh/dsh-prompt-firewall#promptFirewall/setSectionPolicy:result',
137
137
  schema: _yadsh_dsh_prompt_firewall_promptFirewall_setSectionPolicy_result$schema,
138
138
  },
139
- sourceLocation: {"file":"packages/dsh-prompt-firewall/src/index.ts","line":134,"column":9},
139
+ sourceLocation: {"file":"packages/dsh-prompt-firewall/src/index.ts","line":154,"column":9},
140
140
  },
141
141
  ],
142
142
  model: {
@@ -87,7 +87,7 @@ export const TYPERT_REMOTE = {
87
87
  typeSymbol: '@yadsh/dsh-prompt-firewall/types#PromptFirewallInspectorSnapshot',
88
88
  schema: _yadsh_dsh_prompt_firewall_promptFirewall_inspect_result$schema,
89
89
  },
90
- sourceLocation: {"file":"packages/dsh-prompt-firewall/src/index.ts","line":120,"column":3},
90
+ sourceLocation: {"file":"packages/dsh-prompt-firewall/src/index.ts","line":140,"column":3},
91
91
  },
92
92
  {
93
93
  id: '@yadsh/dsh-prompt-firewall#promptFirewall/setSectionPolicy',
@@ -133,7 +133,7 @@ export const TYPERT_REMOTE = {
133
133
  typeSymbol: '@yadsh/dsh-prompt-firewall#promptFirewall/setSectionPolicy:result',
134
134
  schema: _yadsh_dsh_prompt_firewall_promptFirewall_setSectionPolicy_result$schema,
135
135
  },
136
- sourceLocation: {"file":"packages/dsh-prompt-firewall/src/index.ts","line":134,"column":9},
136
+ sourceLocation: {"file":"packages/dsh-prompt-firewall/src/index.ts","line":154,"column":9},
137
137
  },
138
138
  ],
139
139
  }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * React invokes external-store callbacks as plain functions. SettingsScope's
3
+ * methods depend on their receiver, so forward calls through stable wrappers.
4
+ */
5
+ export declare function bindSettingsExternalStore<TSnapshot>(scope: {
6
+ subscribe(listener: () => void): () => void;
7
+ getSnapshot(): TSnapshot;
8
+ }): {
9
+ subscribe(listener: () => void): () => void;
10
+ getSnapshot(): TSnapshot;
11
+ };
@@ -31,6 +31,7 @@ export declare class PromptFirewall extends TypertRemoteService implements Promp
31
31
  private compiledRules;
32
32
  private readonly audits;
33
33
  private readonly metrics;
34
+ private readonly logger;
34
35
  constructor(ctx: Context, config?: PromptFirewallConfig);
35
36
  inspectLast(): PromptAuditResult | null;
36
37
  inspectHistory(): PromptAuditResult[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yadsh/dsh-prompt-firewall",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Prompt hygiene, observability, and policy middleware for DeepSeek Harness",
5
5
  "repository": {
6
6
  "type": "git",
@@ -62,14 +62,6 @@
62
62
  "cordis.patch.yml",
63
63
  "README.md"
64
64
  ],
65
- "scripts": {
66
- "build": "node scripts/generate-typert.mjs && tsc -p tsconfig.build.json && tsdown",
67
- "lint": "eslint src tests scripts",
68
- "test": "vitest run",
69
- "test:watch": "vitest",
70
- "typecheck": "tsc -p tsconfig.json --noEmit",
71
- "verify": "node scripts/verify-package.mjs"
72
- },
73
65
  "keywords": [
74
66
  "deepseek-harness",
75
67
  "dsh",
@@ -79,40 +71,41 @@
79
71
  ],
80
72
  "license": "MIT",
81
73
  "peerDependencies": {
82
- "@deepseek-ai/cordis": "catalog:dsh",
83
- "@deepseek-ai/schemastery": "catalog:dsh",
84
- "@deepseek-ai/dsh-api-gateway": "catalog:dsh",
85
- "@deepseek-ai/dsh-client-runtime": "catalog:dsh",
86
- "@deepseek-ai/dsh-client-ui-settings": "catalog:dsh",
87
- "@deepseek-ai/dsh-client-ui-settings-plugins": "catalog:dsh",
88
- "@deepseek-ai/dsh-client-ui-slots": "catalog:dsh",
89
- "@deepseek-ai/dsh-settings": "catalog:dsh",
90
- "@deepseek-ai/dsh-system-prompt": "catalog:dsh",
91
- "@deepseek-ai/dsh-typert-protocol": "catalog:dsh",
74
+ "@deepseek-ai/cordis": "^4.0.1",
75
+ "@deepseek-ai/schemastery": "^3.18.1",
76
+ "@deepseek-ai/dsh-api-gateway": ">=0.1.1-rc.2 <0.2.0",
77
+ "@deepseek-ai/dsh-client-runtime": ">=0.1.1-rc.2 <0.2.0",
78
+ "@deepseek-ai/dsh-client-ui-settings": ">=0.1.1-rc.2 <0.2.0",
79
+ "@deepseek-ai/dsh-client-ui-settings-plugins": ">=0.1.1-rc.2 <0.2.0",
80
+ "@deepseek-ai/dsh-client-ui-slots": ">=0.1.1-rc.2 <0.2.0",
81
+ "@deepseek-ai/dsh-settings": ">=0.1.1-rc.2 <0.2.0",
82
+ "@deepseek-ai/dsh-system-prompt": ">=0.1.1-rc.2 <0.2.0",
83
+ "@deepseek-ai/dsh-typert-protocol": ">=0.1.1-rc.2 <0.2.0",
92
84
  "react": ">=18.2.0 <20"
93
85
  },
94
86
  "dependencies": {
95
- "zod": "^4.4.3"
87
+ "zod": "^4.4.3",
88
+ "@yadsh/dsh-plugin-log": "^0.2.0"
96
89
  },
97
90
  "devDependencies": {
98
- "@deepseek-ai/cordis": "catalog:dsh-dev",
99
- "@deepseek-ai/schemastery": "catalog:dsh-dev",
100
- "@deepseek-ai/dsh-api-gateway": "catalog:dsh-dev",
101
- "@deepseek-ai/dsh-client-runtime": "catalog:dsh-dev",
102
- "@deepseek-ai/dsh-client-ui-settings": "catalog:dsh-dev",
103
- "@deepseek-ai/dsh-client-ui-settings-plugins": "catalog:dsh-dev",
104
- "@deepseek-ai/dsh-client-ui-slots": "catalog:dsh-dev",
105
- "@deepseek-ai/dsh-settings": "catalog:dsh-dev",
106
- "@deepseek-ai/dsh-system-prompt": "catalog:dsh-dev",
107
- "@deepseek-ai/dsh-typert-generator": "catalog:dsh-dev",
108
- "@deepseek-ai/dsh-typert-protocol": "catalog:dsh-dev",
109
- "@types/node": "catalog:tooling",
110
- "@types/react": "catalog:frontend-dev",
111
- "react": "catalog:frontend-dev",
112
- "eslint": "catalog:tooling",
113
- "tsdown": "catalog:tooling",
114
- "typescript": "catalog:plugin-tooling",
115
- "vitest": "catalog:tooling"
91
+ "@deepseek-ai/cordis": "4.0.1",
92
+ "@deepseek-ai/schemastery": "3.18.1",
93
+ "@deepseek-ai/dsh-api-gateway": "0.1.1-rc.2",
94
+ "@deepseek-ai/dsh-client-runtime": "0.1.1-rc.2",
95
+ "@deepseek-ai/dsh-client-ui-settings": "0.1.1-rc.2",
96
+ "@deepseek-ai/dsh-client-ui-settings-plugins": "0.1.1-rc.2",
97
+ "@deepseek-ai/dsh-client-ui-slots": "0.1.1-rc.2",
98
+ "@deepseek-ai/dsh-settings": "0.1.1-rc.2",
99
+ "@deepseek-ai/dsh-system-prompt": "0.1.1-rc.2",
100
+ "@deepseek-ai/dsh-typert-generator": "0.1.1-rc.2",
101
+ "@deepseek-ai/dsh-typert-protocol": "0.1.1-rc.2",
102
+ "@types/node": "^26.4.0",
103
+ "@types/react": "18.3.28",
104
+ "react": "18.3.1",
105
+ "eslint": "10.9.1",
106
+ "tsdown": "^0.22.14",
107
+ "typescript": "^7.0.2",
108
+ "vitest": "^4.1.11"
116
109
  },
117
110
  "engines": {
118
111
  "node": ">=20"
@@ -120,5 +113,13 @@
120
113
  "publishConfig": {
121
114
  "access": "public",
122
115
  "registry": "https://registry.npmjs.org/"
116
+ },
117
+ "scripts": {
118
+ "build": "node scripts/generate-typert.mjs && tsc -p tsconfig.build.json && tsdown",
119
+ "lint": "eslint src tests scripts",
120
+ "test": "vitest run",
121
+ "test:watch": "vitest",
122
+ "typecheck": "tsc -p tsconfig.json --noEmit",
123
+ "verify": "node scripts/verify-package.mjs"
123
124
  }
124
- }
125
+ }