watashi-db 0.0.20 → 0.0.21
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/.claude-plugin/plugin.json +18 -18
- package/CHANGELOG.md +10 -0
- package/LICENSE +71 -71
- package/dist/config/schema.d.ts +9 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +3 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/config/validator.js +1 -1
- package/dist/config/validator.js.map +1 -1
- package/dist/lint.d.ts +18 -3
- package/dist/lint.d.ts.map +1 -1
- package/dist/lint.js +91 -34
- package/dist/lint.js.map +1 -1
- package/dist/tools/file-tools.d.ts.map +1 -1
- package/dist/tools/file-tools.js +4 -3
- package/dist/tools/file-tools.js.map +1 -1
- package/dist/tools/maintenance/delete.d.ts.map +1 -1
- package/dist/tools/maintenance/delete.js +8 -3
- package/dist/tools/maintenance/delete.js.map +1 -1
- package/dist/tools/maintenance/promote.d.ts.map +1 -1
- package/dist/tools/maintenance/promote.js +29 -3
- package/dist/tools/maintenance/promote.js.map +1 -1
- package/docs/config-guide.md +14 -2
- package/docs/ja/config-guide.md +14 -2
- package/package.json +1 -1
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "watashi-db",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"description": "わたしDB - パーソナルコンテキストデータベース。ユーザーの好み・スキル・価値観・意思決定をセッション横断で記憶・活用します。",
|
|
5
|
-
"author": { "name": "watashi-db" },
|
|
6
|
-
"repository": "https://github.com/bareforge/watashi-db",
|
|
7
|
-
"license": "BUSL-1.1",
|
|
8
|
-
"keywords": ["memory", "personalization", "context", "mcp"],
|
|
9
|
-
"mcpServers": {
|
|
10
|
-
"watashi-db": {
|
|
11
|
-
"command": "npx",
|
|
12
|
-
"args": ["-y", "watashi-db@latest"]
|
|
13
|
-
}
|
|
14
|
-
},
|
|
15
|
-
"skills": "./skills/",
|
|
16
|
-
"agents": "./agents/",
|
|
17
|
-
"hooks": "./hooks/hooks.json"
|
|
18
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "watashi-db",
|
|
3
|
+
"version": "0.0.21",
|
|
4
|
+
"description": "わたしDB - パーソナルコンテキストデータベース。ユーザーの好み・スキル・価値観・意思決定をセッション横断で記憶・活用します。",
|
|
5
|
+
"author": { "name": "watashi-db" },
|
|
6
|
+
"repository": "https://github.com/bareforge/watashi-db",
|
|
7
|
+
"license": "BUSL-1.1",
|
|
8
|
+
"keywords": ["memory", "personalization", "context", "mcp"],
|
|
9
|
+
"mcpServers": {
|
|
10
|
+
"watashi-db": {
|
|
11
|
+
"command": "npx",
|
|
12
|
+
"args": ["-y", "watashi-db@latest"]
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"skills": "./skills/",
|
|
16
|
+
"agents": "./agents/",
|
|
17
|
+
"hooks": "./hooks/hooks.json"
|
|
18
|
+
}
|
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
## [Unreleased]
|
|
9
9
|
|
|
10
|
+
## [0.0.21] - 2026-06-08
|
|
11
|
+
|
|
12
|
+
### Added
|
|
13
|
+
- **`lint.custom_terms`(ユーザー定義の秘匿文字列ブロック)** — config の `lint` に `custom_terms: string[]` を追加。書き込み内容に、列挙した固定文字列(取引先名・案件コード・アカウント名など、正規表現で表せない固有名詞)が含まれていたら、`secret_detection` の mode に関わらず常に書き込みを拒否する。既存 lint 機構の 3 つ目の検出器として `applyLint` に統合(`lintSecrets` / `lintMalformed` に並ぶ `lintCustomTerms`)。狙いはマルチデバイス同期で秘匿情報が他デバイスへ漏れるのを防ぐこと。config.json はローカル専用(同期されず GitHub にも載らない)なので秘匿語の置き場所として安全。検出語そのものはエラー応答に出さず(再漏洩防止)、該当フィールド名のみ返す。既存挙動は無変更・後方互換(未設定時は `[]`)で、全書き込みツールは `applyLint(params, getLintMode())` のまま無変更(custom_terms は内部で config から取得)。`docs/config-guide.md`(英日)の lint セクションを「3 つの検出器」の説明に拡充。(Issue #62)
|
|
14
|
+
|
|
15
|
+
### Fixed
|
|
16
|
+
- **lint の走査がネストを辿らず入れ子 string[] を見逃していた** — `lintSecrets` / `lintMalformed` / `lintCustomTerms` を共通の再帰 traversal (`visitStrings`) に統一し、オブジェクト配下の string[](例: practice の `applies_when.cwd_patterns`)も走査するようにした。従来は top-level の string / string[] のみで、cwd_patterns のようなパス(社名・案件名を含みやすい)が素通りしていた。(Codex レビュー指摘)
|
|
17
|
+
- **`watashi_maintain` の promote / delete が lint を経由していなかった** — `promote`(既存レコードを別 store へ複製)はコピー前に行テキストを lint し、block なら昇格を中止(非同期 store → 同期 store の昇格で秘匿語が乗るのを防ぐ)。`delete` の `delete_reason`(audit log に保存・同期対象)も書き込み前に lint する。(Codex レビュー指摘)
|
|
18
|
+
- **lint 対象フィールドの取りこぼしを補完** — `store_user_file` の `original_filename`(ファイル名)と promote の audit に載る Store 名も lint 対象に追加。promote / delete も warn モードの警告を成功レスポンス(`lint_warnings`)に載せ、既存の書き込み系ツールと挙動を統一。(Codex 2巡目レビュー指摘)
|
|
19
|
+
|
|
10
20
|
## [0.0.20] - 2026-05-31
|
|
11
21
|
|
|
12
22
|
### Added
|
package/LICENSE
CHANGED
|
@@ -1,71 +1,71 @@
|
|
|
1
|
-
Business Source License 1.1
|
|
2
|
-
|
|
3
|
-
Parameters
|
|
4
|
-
|
|
5
|
-
Licensor: bareforge
|
|
6
|
-
Licensed Work: watashi-db 0.0.
|
|
7
|
-
The Licensed Work is (c) 2026 bareforge
|
|
8
|
-
Additional Use Grant: You may make use of the Licensed Work, provided that
|
|
9
|
-
you may not use the Licensed Work for a Commercial
|
|
10
|
-
Purpose.
|
|
11
|
-
A "Commercial Purpose" means use in or for a product
|
|
12
|
-
or service that is sold, offered for sale, licensed,
|
|
13
|
-
or otherwise made available to third parties for a fee
|
|
14
|
-
or other commercial consideration.
|
|
15
|
-
Non-commercial use, personal use, educational use,
|
|
16
|
-
and evaluation use are always permitted.
|
|
17
|
-
Change Date: 2029-
|
|
18
|
-
Change License: Apache License, Version 2.0
|
|
19
|
-
|
|
20
|
-
For information about alternative licensing arrangements for the Licensed Work,
|
|
21
|
-
please contact: bareforge.license@outlook.jp
|
|
22
|
-
|
|
23
|
-
-----------------------------------------------------------------------------
|
|
24
|
-
|
|
25
|
-
Notice
|
|
26
|
-
|
|
27
|
-
Business Source License 1.1
|
|
28
|
-
|
|
29
|
-
License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved.
|
|
30
|
-
"Business Source License" is a trademark of MariaDB Corporation Ab.
|
|
31
|
-
|
|
32
|
-
Terms
|
|
33
|
-
|
|
34
|
-
The Licensor hereby grants you the right to copy, modify, create derivative
|
|
35
|
-
works, redistribute, and make non-production use of the Licensed Work. The
|
|
36
|
-
Licensor may make an Additional Use Grant, above, permitting limited production
|
|
37
|
-
use.
|
|
38
|
-
|
|
39
|
-
Effective on the Change Date, or the fourth anniversary of the first publicly
|
|
40
|
-
available distribution of a specific version of the Licensed Work under this
|
|
41
|
-
License, whichever comes first, the Licensor hereby grants you rights under the
|
|
42
|
-
terms of the Change License, and the rights granted in the paragraph above
|
|
43
|
-
terminate.
|
|
44
|
-
|
|
45
|
-
If your use of the Licensed Work does not comply with the requirements currently
|
|
46
|
-
in effect as described in this License, you must purchase a commercial license
|
|
47
|
-
from the Licensor, its affiliated entities, or authorized resellers, or you must
|
|
48
|
-
refrain from using the Licensed Work.
|
|
49
|
-
|
|
50
|
-
All copies of the original and modified Licensed Work, and derivative works of
|
|
51
|
-
the Licensed Work, are subject to this License. This License applies separately
|
|
52
|
-
for each version of the Licensed Work and the Change Date may vary for each
|
|
53
|
-
version of the Licensed Work released by Licensor.
|
|
54
|
-
|
|
55
|
-
You must conspicuously display this License on each original or modified copy of
|
|
56
|
-
the Licensed Work. If you receive the Licensed Work in original or modified form
|
|
57
|
-
from a third party, the terms and conditions set forth in this License apply to
|
|
58
|
-
your use of that work.
|
|
59
|
-
|
|
60
|
-
Any use of the Licensed Work in violation of this License will automatically
|
|
61
|
-
terminate your rights under this License for the current and all other versions
|
|
62
|
-
of the Licensed Work.
|
|
63
|
-
|
|
64
|
-
This License does not grant you any right in any trademark or logo of Licensor
|
|
65
|
-
or its affiliates (provided that you may use a trademark or logo of Licensor as
|
|
66
|
-
expressly required by this License).
|
|
67
|
-
|
|
68
|
-
TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON AN
|
|
69
|
-
"AS IS" BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS
|
|
70
|
-
OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF MERCHANTABILITY,
|
|
71
|
-
FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND TITLE.
|
|
1
|
+
Business Source License 1.1
|
|
2
|
+
|
|
3
|
+
Parameters
|
|
4
|
+
|
|
5
|
+
Licensor: bareforge
|
|
6
|
+
Licensed Work: watashi-db 0.0.21
|
|
7
|
+
The Licensed Work is (c) 2026 bareforge
|
|
8
|
+
Additional Use Grant: You may make use of the Licensed Work, provided that
|
|
9
|
+
you may not use the Licensed Work for a Commercial
|
|
10
|
+
Purpose.
|
|
11
|
+
A "Commercial Purpose" means use in or for a product
|
|
12
|
+
or service that is sold, offered for sale, licensed,
|
|
13
|
+
or otherwise made available to third parties for a fee
|
|
14
|
+
or other commercial consideration.
|
|
15
|
+
Non-commercial use, personal use, educational use,
|
|
16
|
+
and evaluation use are always permitted.
|
|
17
|
+
Change Date: 2029-06-08
|
|
18
|
+
Change License: Apache License, Version 2.0
|
|
19
|
+
|
|
20
|
+
For information about alternative licensing arrangements for the Licensed Work,
|
|
21
|
+
please contact: bareforge.license@outlook.jp
|
|
22
|
+
|
|
23
|
+
-----------------------------------------------------------------------------
|
|
24
|
+
|
|
25
|
+
Notice
|
|
26
|
+
|
|
27
|
+
Business Source License 1.1
|
|
28
|
+
|
|
29
|
+
License text copyright (c) 2017 MariaDB Corporation Ab, All Rights Reserved.
|
|
30
|
+
"Business Source License" is a trademark of MariaDB Corporation Ab.
|
|
31
|
+
|
|
32
|
+
Terms
|
|
33
|
+
|
|
34
|
+
The Licensor hereby grants you the right to copy, modify, create derivative
|
|
35
|
+
works, redistribute, and make non-production use of the Licensed Work. The
|
|
36
|
+
Licensor may make an Additional Use Grant, above, permitting limited production
|
|
37
|
+
use.
|
|
38
|
+
|
|
39
|
+
Effective on the Change Date, or the fourth anniversary of the first publicly
|
|
40
|
+
available distribution of a specific version of the Licensed Work under this
|
|
41
|
+
License, whichever comes first, the Licensor hereby grants you rights under the
|
|
42
|
+
terms of the Change License, and the rights granted in the paragraph above
|
|
43
|
+
terminate.
|
|
44
|
+
|
|
45
|
+
If your use of the Licensed Work does not comply with the requirements currently
|
|
46
|
+
in effect as described in this License, you must purchase a commercial license
|
|
47
|
+
from the Licensor, its affiliated entities, or authorized resellers, or you must
|
|
48
|
+
refrain from using the Licensed Work.
|
|
49
|
+
|
|
50
|
+
All copies of the original and modified Licensed Work, and derivative works of
|
|
51
|
+
the Licensed Work, are subject to this License. This License applies separately
|
|
52
|
+
for each version of the Licensed Work and the Change Date may vary for each
|
|
53
|
+
version of the Licensed Work released by Licensor.
|
|
54
|
+
|
|
55
|
+
You must conspicuously display this License on each original or modified copy of
|
|
56
|
+
the Licensed Work. If you receive the Licensed Work in original or modified form
|
|
57
|
+
from a third party, the terms and conditions set forth in this License apply to
|
|
58
|
+
your use of that work.
|
|
59
|
+
|
|
60
|
+
Any use of the Licensed Work in violation of this License will automatically
|
|
61
|
+
terminate your rights under this License for the current and all other versions
|
|
62
|
+
of the Licensed Work.
|
|
63
|
+
|
|
64
|
+
This License does not grant you any right in any trademark or logo of Licensor
|
|
65
|
+
or its affiliates (provided that you may use a trademark or logo of Licensor as
|
|
66
|
+
expressly required by this License).
|
|
67
|
+
|
|
68
|
+
TO THE EXTENT PERMITTED BY APPLICABLE LAW, THE LICENSED WORK IS PROVIDED ON AN
|
|
69
|
+
"AS IS" BASIS. LICENSOR HEREBY DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS
|
|
70
|
+
OR IMPLIED, INCLUDING (WITHOUT LIMITATION) WARRANTIES OF MERCHANTABILITY,
|
|
71
|
+
FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, AND TITLE.
|
package/dist/config/schema.d.ts
CHANGED
|
@@ -106,10 +106,13 @@ export declare const EmbeddingConfigSchema: z.ZodObject<{
|
|
|
106
106
|
export type EmbeddingConfig = z.infer<typeof EmbeddingConfigSchema>;
|
|
107
107
|
export declare const LintConfigSchema: z.ZodObject<{
|
|
108
108
|
secret_detection: z.ZodDefault<z.ZodEnum<["block", "warn", "off"]>>;
|
|
109
|
+
custom_terms: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
109
110
|
}, "strict", z.ZodTypeAny, {
|
|
110
111
|
secret_detection: "block" | "warn" | "off";
|
|
112
|
+
custom_terms: string[];
|
|
111
113
|
}, {
|
|
112
114
|
secret_detection?: "block" | "warn" | "off" | undefined;
|
|
115
|
+
custom_terms?: string[] | undefined;
|
|
113
116
|
}>;
|
|
114
117
|
export type LintConfig = z.infer<typeof LintConfigSchema>;
|
|
115
118
|
/** Store名・Context名に使用可能な文字パターン */
|
|
@@ -213,10 +216,13 @@ export declare const RawConfigSchema: z.ZodObject<{
|
|
|
213
216
|
default_context: z.ZodString;
|
|
214
217
|
lint: z.ZodOptional<z.ZodObject<{
|
|
215
218
|
secret_detection: z.ZodDefault<z.ZodEnum<["block", "warn", "off"]>>;
|
|
219
|
+
custom_terms: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
216
220
|
}, "strict", z.ZodTypeAny, {
|
|
217
221
|
secret_detection: "block" | "warn" | "off";
|
|
222
|
+
custom_terms: string[];
|
|
218
223
|
}, {
|
|
219
224
|
secret_detection?: "block" | "warn" | "off" | undefined;
|
|
225
|
+
custom_terms?: string[] | undefined;
|
|
220
226
|
}>>;
|
|
221
227
|
embedding: z.ZodOptional<z.ZodObject<{
|
|
222
228
|
provider: z.ZodDefault<z.ZodString>;
|
|
@@ -303,6 +309,7 @@ export declare const RawConfigSchema: z.ZodObject<{
|
|
|
303
309
|
} | undefined;
|
|
304
310
|
lint?: {
|
|
305
311
|
secret_detection: "block" | "warn" | "off";
|
|
312
|
+
custom_terms: string[];
|
|
306
313
|
} | undefined;
|
|
307
314
|
client_policies?: Record<string, {
|
|
308
315
|
read: {
|
|
@@ -343,6 +350,7 @@ export declare const RawConfigSchema: z.ZodObject<{
|
|
|
343
350
|
} | undefined;
|
|
344
351
|
lint?: {
|
|
345
352
|
secret_detection?: "block" | "warn" | "off" | undefined;
|
|
353
|
+
custom_terms?: string[] | undefined;
|
|
346
354
|
} | undefined;
|
|
347
355
|
client_policies?: Record<string, {
|
|
348
356
|
read?: {
|
|
@@ -380,6 +388,7 @@ export interface ResolvedContext {
|
|
|
380
388
|
/** 解決済みLint設定 */
|
|
381
389
|
export interface ResolvedLintConfig {
|
|
382
390
|
secret_detection: "block" | "warn" | "off";
|
|
391
|
+
custom_terms: string[];
|
|
383
392
|
}
|
|
384
393
|
/** 解決済みクライアントポリシー */
|
|
385
394
|
export interface ClientPolicyAccess {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,oEAAoE;AACpE,eAAO,MAAM,cAAc,sDAAoD,CAAC;AAChF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD,WAAW;AAGX,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAIlB,CAAC;AAEZ,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAqB1D,gCAAgC;AAChC,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAItB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAC;AAItD,eAAO,MAAM,gBAAgB,wCAAsC,CAAC;AACpE,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAI1D,eAAO,MAAM,aAAa;;;;;;;;;EAMf,CAAC;AAEZ,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AAkB1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAMvB,CAAC;AAEZ,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAIpE,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/config/schema.js
CHANGED
|
@@ -65,6 +65,9 @@ export const EmbeddingConfigSchema = z.object({
|
|
|
65
65
|
// --- Lint 設定 ---
|
|
66
66
|
export const LintConfigSchema = z.object({
|
|
67
67
|
secret_detection: z.enum(["block", "warn", "off"]).default("warn"),
|
|
68
|
+
// ユーザー定義の秘匿文字列(社名・案件名・アカウント名等)。書き込み内容にマッチしたら
|
|
69
|
+
// secret_detection の mode に関わらず常に block する。config はローカル専用(sync 対象外)。
|
|
70
|
+
custom_terms: z.array(z.string()).default([]),
|
|
68
71
|
}).strict();
|
|
69
72
|
// --- Config 全体 ---
|
|
70
73
|
/** Store名・Context名に使用可能な文字パターン */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/config/validator.js
CHANGED
|
@@ -131,7 +131,7 @@ export function validateAndResolveConfig(raw) {
|
|
|
131
131
|
}
|
|
132
132
|
// 5. Lint設定の解決
|
|
133
133
|
const resolvedLint = config.lint
|
|
134
|
-
? { secret_detection: config.lint.secret_detection }
|
|
134
|
+
? { secret_detection: config.lint.secret_detection, custom_terms: config.lint.custom_terms }
|
|
135
135
|
: undefined;
|
|
136
136
|
// 6. クライアントポリシーのバリデーション & パススルー
|
|
137
137
|
let resolvedClientPolicies;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/config/validator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/config/validator.ts"],"names":[],"mappings":"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"}
|
package/dist/lint.d.ts
CHANGED
|
@@ -16,15 +16,26 @@ export declare function lintSecrets(params: Record<string, unknown>): LintWarnin
|
|
|
16
16
|
* paramsの全stringフィールドを走査し、ツール呼び出し失敗の残骸(XML/JSONタグ片)を検出する
|
|
17
17
|
*/
|
|
18
18
|
export declare function lintMalformed(params: Record<string, unknown>): LintWarning[];
|
|
19
|
+
/**
|
|
20
|
+
* paramsの全stringフィールドを走査し、ユーザー定義の秘匿文字列(custom_terms)を検出する。
|
|
21
|
+
* 配列フィールド(string[])も各要素をスキャン。
|
|
22
|
+
* - case-insensitive 部分一致
|
|
23
|
+
* - マッチした語そのものは warning に含めない(field 名のみ記録 = 再漏洩防止)
|
|
24
|
+
*/
|
|
25
|
+
export declare function lintCustomTerms(params: Record<string, unknown>, terms: string[]): LintWarning[];
|
|
19
26
|
/**
|
|
20
27
|
* Lint結果をモードに応じて処理する
|
|
21
28
|
* - "block": 検出時に blocked:true を返す(書き込み拒否用)
|
|
22
29
|
* - "warn": 検出時に warnings を返すが blocked:false
|
|
23
|
-
* - "off":
|
|
30
|
+
* - "off": スキャンしない(機密情報のみ。形式エラー・custom_terms は off でも常にチェック)
|
|
31
|
+
*
|
|
32
|
+
* 形式エラー (Malformed Tool Call Tag) と custom_terms(ユーザー定義の秘匿文字列)は
|
|
33
|
+
* mode に関わらず常に検出・block する。
|
|
24
34
|
*
|
|
25
|
-
*
|
|
35
|
+
* customTerms 省略時は getCustomTerms() で config から取得する
|
|
36
|
+
* (呼び出し側は applyLint(params, getLintMode()) のままでよい。テストでは明示注入可)。
|
|
26
37
|
*/
|
|
27
|
-
export declare function applyLint(params: Record<string, unknown>, mode: "block" | "warn" | "off"): {
|
|
38
|
+
export declare function applyLint(params: Record<string, unknown>, mode: "block" | "warn" | "off", customTerms?: string[]): {
|
|
28
39
|
warnings: LintWarning[];
|
|
29
40
|
blocked: boolean;
|
|
30
41
|
};
|
|
@@ -33,6 +44,10 @@ export declare function applyLint(params: Record<string, unknown>, mode: "block"
|
|
|
33
44
|
* デフォルト: "warn"
|
|
34
45
|
*/
|
|
35
46
|
export declare function getLintMode(): "block" | "warn" | "off";
|
|
47
|
+
/**
|
|
48
|
+
* 現在のconfigから lint.custom_terms を取得する。デフォルト: []
|
|
49
|
+
*/
|
|
50
|
+
export declare function getCustomTerms(): string[];
|
|
36
51
|
/**
|
|
37
52
|
* Lint blockをMCPエラーレスポンス(JSON形式)にフォーマットする
|
|
38
53
|
* 形式エラー(Malformed Tool Call Tag)が含まれていれば、その旨を最優先で伝える
|
package/dist/lint.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../src/lint.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAiCD;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAG/C;
|
|
1
|
+
{"version":3,"file":"lint.d.ts","sourceRoot":"","sources":["../src/lint.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAiCD;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAG/C;AA2BD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,EAAE,CAI1E;AAmBD;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,WAAW,EAAE,CAI5E;AAsBD;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,KAAK,EAAE,MAAM,EAAE,GACd,WAAW,EAAE,CASf;AAkBD;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,KAAK,EAC9B,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB;IAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAoB/C;AAID;;;GAGG;AACH,wBAAgB,WAAW,IAAI,OAAO,GAAG,MAAM,GAAG,KAAK,CAQtD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,EAAE,CAQzC;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,WAAW,EAAE;;;;;;EAsB7D"}
|
package/dist/lint.js
CHANGED
|
@@ -38,6 +38,26 @@ export function maskMatch(match) {
|
|
|
38
38
|
return match;
|
|
39
39
|
return match.slice(0, 8) + "...";
|
|
40
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* value を再帰的に走査し、見つかった全ての string 値に対して visit(field, text) を呼ぶ。
|
|
43
|
+
* ネストしたオブジェクト・配列も辿るので、applies_when.cwd_patterns のような入れ子の string[] も拾える。
|
|
44
|
+
* field パスは "applies_when.cwd_patterns[0]" 形式で組み立てる。
|
|
45
|
+
*/
|
|
46
|
+
function visitStrings(value, path, visit) {
|
|
47
|
+
if (typeof value === "string") {
|
|
48
|
+
visit(path, value);
|
|
49
|
+
}
|
|
50
|
+
else if (Array.isArray(value)) {
|
|
51
|
+
for (let i = 0; i < value.length; i++) {
|
|
52
|
+
visitStrings(value[i], `${path}[${i}]`, visit);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
else if (value !== null && typeof value === "object") {
|
|
56
|
+
for (const [k, v] of Object.entries(value)) {
|
|
57
|
+
visitStrings(v, path ? `${path}.${k}` : k, visit);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
41
61
|
// --- メイン関数 ---
|
|
42
62
|
/**
|
|
43
63
|
* paramsの全stringフィールドをスキャンし、機密情報パターンを検出する
|
|
@@ -45,18 +65,7 @@ export function maskMatch(match) {
|
|
|
45
65
|
*/
|
|
46
66
|
export function lintSecrets(params) {
|
|
47
67
|
const warnings = [];
|
|
48
|
-
|
|
49
|
-
if (typeof value === "string") {
|
|
50
|
-
scanString(field, value, warnings);
|
|
51
|
-
}
|
|
52
|
-
else if (Array.isArray(value)) {
|
|
53
|
-
for (let i = 0; i < value.length; i++) {
|
|
54
|
-
if (typeof value[i] === "string") {
|
|
55
|
-
scanString(`${field}[${i}]`, value[i], warnings);
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
68
|
+
visitStrings(params, "", (field, value) => scanString(field, value, warnings));
|
|
60
69
|
return warnings;
|
|
61
70
|
}
|
|
62
71
|
/**
|
|
@@ -80,18 +89,7 @@ function scanString(field, value, warnings) {
|
|
|
80
89
|
*/
|
|
81
90
|
export function lintMalformed(params) {
|
|
82
91
|
const warnings = [];
|
|
83
|
-
|
|
84
|
-
if (typeof value === "string") {
|
|
85
|
-
scanMalformed(field, value, warnings);
|
|
86
|
-
}
|
|
87
|
-
else if (Array.isArray(value)) {
|
|
88
|
-
for (let i = 0; i < value.length; i++) {
|
|
89
|
-
if (typeof value[i] === "string") {
|
|
90
|
-
scanMalformed(`${field}[${i}]`, value[i], warnings);
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}
|
|
92
|
+
visitStrings(params, "", (field, value) => scanMalformed(field, value, warnings));
|
|
95
93
|
return warnings;
|
|
96
94
|
}
|
|
97
95
|
function scanMalformed(field, value, warnings) {
|
|
@@ -106,25 +104,63 @@ function scanMalformed(field, value, warnings) {
|
|
|
106
104
|
}
|
|
107
105
|
}
|
|
108
106
|
}
|
|
107
|
+
// --- ユーザー定義の秘匿文字列(custom_terms)検出 ---
|
|
108
|
+
const CUSTOM_TERM_PATTERN_NAME = "Custom Sensitive Term";
|
|
109
|
+
// マッチした秘匿語そのものは LintWarning に載せない(エラー応答や transcript への再漏洩を防ぐ)。
|
|
110
|
+
// field 名だけ示せば、LLM は自分が書こうとした内容から該当箇所を一般化して直せる。
|
|
111
|
+
const REDACTED_MATCH = "(redacted)";
|
|
112
|
+
/**
|
|
113
|
+
* paramsの全stringフィールドを走査し、ユーザー定義の秘匿文字列(custom_terms)を検出する。
|
|
114
|
+
* 配列フィールド(string[])も各要素をスキャン。
|
|
115
|
+
* - case-insensitive 部分一致
|
|
116
|
+
* - マッチした語そのものは warning に含めない(field 名のみ記録 = 再漏洩防止)
|
|
117
|
+
*/
|
|
118
|
+
export function lintCustomTerms(params, terms) {
|
|
119
|
+
const warnings = [];
|
|
120
|
+
// 前後空白を除去して正規化(" AcmeCorp " と書かれても "AcmeCorp" にマッチさせる)。空白のみの term は除外。
|
|
121
|
+
const normalized = terms
|
|
122
|
+
.map((t) => t.trim().toLowerCase())
|
|
123
|
+
.filter((t) => t.length > 0);
|
|
124
|
+
if (normalized.length === 0)
|
|
125
|
+
return warnings;
|
|
126
|
+
visitStrings(params, "", (field, value) => scanCustomTerms(field, value, normalized, warnings));
|
|
127
|
+
return warnings;
|
|
128
|
+
}
|
|
129
|
+
function scanCustomTerms(field, value, normalizedTerms, warnings) {
|
|
130
|
+
const haystack = value.toLowerCase();
|
|
131
|
+
for (const term of normalizedTerms) {
|
|
132
|
+
if (haystack.includes(term)) {
|
|
133
|
+
warnings.push({ field, pattern: CUSTOM_TERM_PATTERN_NAME, match: REDACTED_MATCH });
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
109
137
|
// --- モード適用 ---
|
|
110
138
|
/**
|
|
111
139
|
* Lint結果をモードに応じて処理する
|
|
112
140
|
* - "block": 検出時に blocked:true を返す(書き込み拒否用)
|
|
113
141
|
* - "warn": 検出時に warnings を返すが blocked:false
|
|
114
|
-
* - "off":
|
|
142
|
+
* - "off": スキャンしない(機密情報のみ。形式エラー・custom_terms は off でも常にチェック)
|
|
115
143
|
*
|
|
116
|
-
* 形式エラー (Malformed Tool Call Tag)
|
|
144
|
+
* 形式エラー (Malformed Tool Call Tag) と custom_terms(ユーザー定義の秘匿文字列)は
|
|
145
|
+
* mode に関わらず常に検出・block する。
|
|
146
|
+
*
|
|
147
|
+
* customTerms 省略時は getCustomTerms() で config から取得する
|
|
148
|
+
* (呼び出し側は applyLint(params, getLintMode()) のままでよい。テストでは明示注入可)。
|
|
117
149
|
*/
|
|
118
|
-
export function applyLint(params, mode) {
|
|
119
|
-
|
|
150
|
+
export function applyLint(params, mode, customTerms) {
|
|
151
|
+
const terms = customTerms ?? getCustomTerms();
|
|
152
|
+
// 形式エラー(壊れたタグ片)と custom_terms(ユーザー定義の秘匿文字列)は
|
|
153
|
+
// mode に関わらず常にチェック・block する。
|
|
120
154
|
const malformedWarnings = lintMalformed(params);
|
|
155
|
+
const customWarnings = lintCustomTerms(params, terms);
|
|
156
|
+
const alwaysBlockWarnings = [...malformedWarnings, ...customWarnings];
|
|
121
157
|
if (mode === "off") {
|
|
122
|
-
return { warnings:
|
|
158
|
+
return { warnings: alwaysBlockWarnings, blocked: alwaysBlockWarnings.length > 0 };
|
|
123
159
|
}
|
|
124
160
|
const secretWarnings = lintSecrets(params);
|
|
125
|
-
const warnings = [...
|
|
161
|
+
const warnings = [...alwaysBlockWarnings, ...secretWarnings];
|
|
126
162
|
const blockedBySecret = mode === "block" && secretWarnings.length > 0;
|
|
127
|
-
const blocked =
|
|
163
|
+
const blocked = alwaysBlockWarnings.length > 0 || blockedBySecret;
|
|
128
164
|
return { warnings, blocked };
|
|
129
165
|
}
|
|
130
166
|
// --- Config読み取り ---
|
|
@@ -142,15 +178,36 @@ export function getLintMode() {
|
|
|
142
178
|
return "warn";
|
|
143
179
|
}
|
|
144
180
|
}
|
|
181
|
+
/**
|
|
182
|
+
* 現在のconfigから lint.custom_terms を取得する。デフォルト: []
|
|
183
|
+
*/
|
|
184
|
+
export function getCustomTerms() {
|
|
185
|
+
try {
|
|
186
|
+
const config = getStoreManager().getConfig();
|
|
187
|
+
return config.lint?.custom_terms ?? [];
|
|
188
|
+
}
|
|
189
|
+
catch {
|
|
190
|
+
// セッション未初期化(テスト等)の場合は空
|
|
191
|
+
return [];
|
|
192
|
+
}
|
|
193
|
+
}
|
|
145
194
|
/**
|
|
146
195
|
* Lint blockをMCPエラーレスポンス(JSON形式)にフォーマットする
|
|
147
196
|
* 形式エラー(Malformed Tool Call Tag)が含まれていれば、その旨を最優先で伝える
|
|
148
197
|
*/
|
|
149
198
|
export function buildLintBlockResponse(warnings) {
|
|
150
199
|
const hasMalformed = warnings.some(w => w.pattern === MALFORMED_PATTERN_NAME);
|
|
151
|
-
const
|
|
152
|
-
|
|
153
|
-
|
|
200
|
+
const hasCustomTerm = warnings.some(w => w.pattern === CUSTOM_TERM_PATTERN_NAME);
|
|
201
|
+
let error;
|
|
202
|
+
if (hasMalformed) {
|
|
203
|
+
error = "書き込みを拒否しました — フィールドにツール呼び出しのタグ片(</description>, <parameter name=... 等)が混入しています。l1_content や description は自然文だけを渡してください";
|
|
204
|
+
}
|
|
205
|
+
else if (hasCustomTerm) {
|
|
206
|
+
error = "書き込みを拒否しました — 秘匿文字列(config の lint.custom_terms)が含まれています。lint_warnings の field を一般名に言い換えて再試行してください(秘匿語そのものは再漏洩防止のため表示していません)";
|
|
207
|
+
}
|
|
208
|
+
else {
|
|
209
|
+
error = "書き込みを拒否しました — 機密情報が検出されました";
|
|
210
|
+
}
|
|
154
211
|
return {
|
|
155
212
|
content: [{
|
|
156
213
|
type: "text",
|
package/dist/lint.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../src/lint.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAU3D,iBAAiB;AAEjB,MAAM,eAAe,GAAsC;IACzD,EAAE,IAAI,EAAE,wBAAwB,EAAE,KAAK,EAAE,2BAA2B,EAAE;IACtE,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,sBAAsB,EAAE;IACzD,EAAE,IAAI,EAAE,8BAA8B,EAAE,KAAK,EAAE,uBAAuB,EAAE;IACxE,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,uBAAuB,EAAE;IAC9D,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,uBAAuB,EAAE;IAC/D,EAAE,IAAI,EAAE,sBAAsB,EAAE,KAAK,EAAE,uBAAuB,EAAE;IAChE,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,mBAAmB,EAAE;IACzD,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,oDAAoD,EAAE;IACxF,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,eAAe,EAAE;IACnD,EAAE,IAAI,EAAE,kBAAkB,EAAE,KAAK,EAAE,eAAe,EAAE;IACpD,EAAE,IAAI,EAAE,gBAAgB,EAAE,KAAK,EAAE,yBAAyB,EAAE;CAC7D,CAAC;AAEF,6DAA6D;AAC7D,2CAA2C;AAC3C,oCAAoC;AACpC,MAAM,sBAAsB,GAAG,yBAAyB,CAAC;AACzD,MAAM,sBAAsB,GAAa;IACvC,0FAA0F;IAC1F,6CAA6C;IAC7C,mDAAmD;IACnD,wEAAwE;IACxE,uDAAuD;IACvD,iCAAiC;CAClC,CAAC;AAEF,eAAe;AAEf;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACpC,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;AACnC,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"lint.js","sourceRoot":"","sources":["../src/lint.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-tools.d.ts","sourceRoot":"","sources":["../../src/tools/file-tools.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiFzE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,SAAa,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"file-tools.d.ts","sourceRoot":"","sources":["../../src/tools/file-tools.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiFzE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,SAAa,GAAG,IAAI,CA4VtF"}
|
package/dist/tools/file-tools.js
CHANGED
|
@@ -67,19 +67,21 @@ export function registerUserFileTools(server, toolPrefix = "watashi_") {
|
|
|
67
67
|
// store_user_file: ファイルを読み取り→base64→DB保存
|
|
68
68
|
// ──────────────────────────────────────────────
|
|
69
69
|
server.tool(`${toolPrefix}store_user_file`, "[Use only on explicit user request] Read a file from disk, base64-encode it, and store in the vault. Claude never touches file bytes.", StoreUserFileSchema.shape, async (params, extra) => {
|
|
70
|
-
|
|
70
|
+
const filePath = path.resolve(params.source_path);
|
|
71
|
+
const originalFilename = path.basename(filePath);
|
|
72
|
+
// 入口バリデーション: メタデータ・ファイル名に XML/JSON タグ片・機密情報・秘匿文字列が混入していたら block
|
|
71
73
|
const lint = applyLint({
|
|
72
74
|
title: params.title,
|
|
73
75
|
description: params.description,
|
|
74
76
|
search_summary: params.search_summary,
|
|
75
77
|
tags: params.tags,
|
|
78
|
+
original_filename: originalFilename,
|
|
76
79
|
}, getLintMode());
|
|
77
80
|
if (lint.blocked)
|
|
78
81
|
return buildLintBlockResponse(lint.warnings);
|
|
79
82
|
const scopeCheck = policyGuard(params.scope ?? "global");
|
|
80
83
|
if (!scopeCheck.allowed)
|
|
81
84
|
return buildPolicyErrorResponse(scopeCheck.reason);
|
|
82
|
-
const filePath = path.resolve(params.source_path);
|
|
83
85
|
// パスバリデーション
|
|
84
86
|
const pathErr = validatePath(filePath);
|
|
85
87
|
if (pathErr)
|
|
@@ -98,7 +100,6 @@ export function registerUserFileTools(server, toolPrefix = "watashi_") {
|
|
|
98
100
|
const fileHash = computeHash(rawData);
|
|
99
101
|
const fileSize = rawData.length;
|
|
100
102
|
const fileData = rawData.toString("base64");
|
|
101
|
-
const originalFilename = path.basename(filePath);
|
|
102
103
|
const provenance = buildProvenance(extra.sessionId);
|
|
103
104
|
// embedding生成(descriptionがあれば)
|
|
104
105
|
let l1_embedding = null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-tools.js","sourceRoot":"","sources":["../../src/tools/file-tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"file-tools.js","sourceRoot":"","sources":["../../src/tools/file-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/tools/maintenance/delete.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,
|
|
1
|
+
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../src/tools/maintenance/delete.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAqC,KAAK,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAQrG,wBAAsB,YAAY,CAChC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,YAAY,CAAC,CAkDvB"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { ok, errorResult } from "../helpers.js";
|
|
1
|
+
import { ok, errorResult, withLintWarnings } from "../helpers.js";
|
|
2
2
|
import { getDatabase } from "../../database/connection.js";
|
|
3
3
|
import * as core from "../../database/queries-core.js";
|
|
4
4
|
import { buildProvenance } from "../../provenance.js";
|
|
5
5
|
import { insertAuditLog } from "../../database/queries.js";
|
|
6
6
|
import { notifyWrite } from "../../store/session-state.js";
|
|
7
|
+
import { applyLint, getLintMode, buildLintBlockResponse } from "../../lint.js";
|
|
7
8
|
export async function handleDelete(params, extra) {
|
|
8
9
|
if (!params.delete_entity_id) {
|
|
9
10
|
return errorResult("delete には delete_entity_id が必須です");
|
|
@@ -11,6 +12,10 @@ export async function handleDelete(params, extra) {
|
|
|
11
12
|
if (!params.delete_reason) {
|
|
12
13
|
return errorResult("delete には delete_reason が必須です");
|
|
13
14
|
}
|
|
15
|
+
// delete_reason は audit log(同期対象)に保存されるので秘匿文字列を lint する
|
|
16
|
+
const lint = applyLint({ delete_reason: params.delete_reason }, getLintMode());
|
|
17
|
+
if (lint.blocked)
|
|
18
|
+
return buildLintBlockResponse(lint.warnings);
|
|
14
19
|
const db = getDatabase();
|
|
15
20
|
const provenance = buildProvenance(extra.sessionId);
|
|
16
21
|
const { deleted, entity_type: resolvedType } = db.transaction(() => {
|
|
@@ -33,11 +38,11 @@ export async function handleDelete(params, extra) {
|
|
|
33
38
|
return errorResult(`${resolvedType} '${params.delete_entity_id}' の削除に失敗しました`);
|
|
34
39
|
}
|
|
35
40
|
notifyWrite();
|
|
36
|
-
return ok({
|
|
41
|
+
return ok(withLintWarnings({
|
|
37
42
|
success: true,
|
|
38
43
|
message: `${resolvedType} '${params.delete_entity_id}' を物理削除しました。tombstone が記録され、同期先にも伝播します。`,
|
|
39
44
|
entity_type: resolvedType,
|
|
40
45
|
entity_id: params.delete_entity_id,
|
|
41
|
-
});
|
|
46
|
+
}, lint.warnings));
|
|
42
47
|
}
|
|
43
48
|
//# sourceMappingURL=delete.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/tools/maintenance/delete.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,WAAW,EAAqC,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"delete.js","sourceRoot":"","sources":["../../../src/tools/maintenance/delete.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAqC,MAAM,eAAe,CAAC;AACrG,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,KAAK,IAAI,MAAM,gCAAgC,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAE/E,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAqB,EACrB,KAAgB;IAEhB,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC7B,OAAO,WAAW,CAAC,kCAAkC,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;QAC1B,OAAO,WAAW,CAAC,+BAA+B,CAAC,CAAC;IACtD,CAAC;IAED,wDAAwD;IACxD,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAC/E,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE/D,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACzB,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAEpD,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,yBAAyB,CAC3C,EAAE,EACF,MAAM,CAAC,gBAAiB,EACxB,MAAM,CAAC,kBAAkB,CAC1B,CAAC;QAEF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,cAAc,CAAC;gBACb,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,CAAC,MAAM,CAAC,WAAW,IAAI,OAAO,CAAiH;gBAC5J,SAAS,EAAE,MAAM,CAAC,gBAAiB;gBACnC,OAAO,EAAE,SAAS,MAAM,CAAC,aAAa,EAAE;gBACxC,UAAU;aACX,CAAC,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,EAAE,CAAC;IAEL,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,WAAW,CAAC,OAAO,MAAM,CAAC,gBAAgB,YAAY,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,GAAG,YAAY,KAAK,MAAM,CAAC,gBAAgB,cAAc,CAAC,CAAC;IAChF,CAAC;IAED,WAAW,EAAE,CAAC;IAEd,OAAO,EAAE,CAAC,gBAAgB,CAAC;QACzB,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,GAAG,YAAY,KAAK,MAAM,CAAC,gBAAgB,yCAAyC;QAC7F,WAAW,EAAE,YAAY;QACzB,SAAS,EAAE,MAAM,CAAC,gBAAgB;KACnC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AACrB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promote.d.ts","sourceRoot":"","sources":["../../../src/tools/maintenance/promote.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,
|
|
1
|
+
{"version":3,"file":"promote.d.ts","sourceRoot":"","sources":["../../../src/tools/maintenance/promote.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAqC,KAAK,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,eAAe,CAAC;AAoBrG,wBAAsB,aAAa,CACjC,MAAM,EAAE,aAAa,EACrB,KAAK,EAAE,SAAS,GACf,OAAO,CAAC,YAAY,CAAC,CAoGvB"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { ulid } from "ulid";
|
|
2
|
-
import { ok, errorResult } from "../helpers.js";
|
|
2
|
+
import { ok, errorResult, withLintWarnings } from "../helpers.js";
|
|
3
3
|
import { getStoreManager, getActiveContext, notifyWrite, } from "../../store/session-state.js";
|
|
4
4
|
import * as core from "../../database/queries-core.js";
|
|
5
5
|
import { buildProvenance } from "../../provenance.js";
|
|
6
6
|
import { insertAuditLog } from "../../database/queries.js";
|
|
7
7
|
import { getClientPolicy, checkClaimWritePolicy, checkScopeWritePolicy, buildPolicyErrorResponse, } from "../../policy.js";
|
|
8
|
+
import { applyLint, getLintMode, buildLintBlockResponse } from "../../lint.js";
|
|
8
9
|
const PROMOTABLE_TYPES = ["claim", "decision", "episode", "theory", "insight", "model"];
|
|
9
10
|
export async function handlePromote(params, extra) {
|
|
10
11
|
if (!params.promote_entity_id || !params.source_store || !params.target_store) {
|
|
@@ -48,6 +49,20 @@ export async function handlePromote(params, extra) {
|
|
|
48
49
|
return policyResult;
|
|
49
50
|
}
|
|
50
51
|
const targetDb = manager.getStore(params.target_store);
|
|
52
|
+
// 秘匿文字列チェック: 既存レコードを別 store へ複製する前に、コピー対象のテキストを lint する。
|
|
53
|
+
// 非同期 store → 同期 store への昇格で秘匿語が同期に乗るのを防ぐ(作成時に custom_terms 未設定
|
|
54
|
+
// だった行や、後から custom_terms に追加した語もここで止まる)。
|
|
55
|
+
let promoteLintWarnings = [];
|
|
56
|
+
const promoteSource = getPromoteSourceRow(sourceDb, entityType, params.promote_entity_id);
|
|
57
|
+
if (promoteSource) {
|
|
58
|
+
const { l1_embedding, ...textFields } = promoteSource;
|
|
59
|
+
void l1_embedding; // バイナリ列(embedding)は走査対象外
|
|
60
|
+
// audit log に載る Store 名も含めて lint(source 行のテキスト + 昇格元/先の Store 名)
|
|
61
|
+
const lint = applyLint({ ...textFields, source_store: params.source_store, target_store: params.target_store }, getLintMode());
|
|
62
|
+
if (lint.blocked)
|
|
63
|
+
return buildLintBlockResponse(lint.warnings);
|
|
64
|
+
promoteLintWarnings = lint.warnings;
|
|
65
|
+
}
|
|
51
66
|
try {
|
|
52
67
|
const purge = params.purge_source ?? false;
|
|
53
68
|
const result = promoteRecord(sourceDb, targetDb, entityType, params.promote_entity_id, params.source_store, params.target_store, purge);
|
|
@@ -67,7 +82,7 @@ export async function handlePromote(params, extra) {
|
|
|
67
82
|
provenance,
|
|
68
83
|
});
|
|
69
84
|
notifyWrite();
|
|
70
|
-
return ok({
|
|
85
|
+
return ok(withLintWarnings({
|
|
71
86
|
success: true,
|
|
72
87
|
message: purge
|
|
73
88
|
? `レコードを移動しました: ${params.source_store} → ${params.target_store}(ソースから削除済み)`
|
|
@@ -79,13 +94,24 @@ export async function handlePromote(params, extra) {
|
|
|
79
94
|
target_store: params.target_store,
|
|
80
95
|
was_existing: result.was_existing,
|
|
81
96
|
purged_from_source: purge,
|
|
82
|
-
});
|
|
97
|
+
}, promoteLintWarnings));
|
|
83
98
|
}
|
|
84
99
|
catch (error) {
|
|
85
100
|
const message = error instanceof Error ? error.message : String(error);
|
|
86
101
|
return errorResult(message);
|
|
87
102
|
}
|
|
88
103
|
}
|
|
104
|
+
// === Promote helper functions ===
|
|
105
|
+
/**
|
|
106
|
+
* promote 対象の行を SELECT * で取得する(lint 用)。テーブル名は checkPromotePolicy と同じ解決規則。
|
|
107
|
+
*/
|
|
108
|
+
function getPromoteSourceRow(db, entityType, entityId) {
|
|
109
|
+
const table = entityType === "theory" ? "theories"
|
|
110
|
+
: entityType === "insight" ? "insights"
|
|
111
|
+
: entityType === "model" ? "models"
|
|
112
|
+
: `${entityType}s`;
|
|
113
|
+
return db.prepare(`SELECT * FROM ${table} WHERE id = ?`).get(entityId);
|
|
114
|
+
}
|
|
89
115
|
function promoteRecord(sourceDb, targetDb, entityType, entityId, sourceStore, targetStore, purgeSource = false) {
|
|
90
116
|
switch (entityType) {
|
|
91
117
|
case "claim": return promoteClaim(sourceDb, targetDb, entityId, sourceStore, targetStore, purgeSource);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"promote.js","sourceRoot":"","sources":["../../../src/tools/maintenance/promote.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"promote.js","sourceRoot":"","sources":["../../../src/tools/maintenance/promote.ts"],"names":[],"mappings":"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"}
|
package/docs/config-guide.md
CHANGED
|
@@ -230,15 +230,27 @@ Active context on startup. Must be a name defined in `contexts`. Overridden by c
|
|
|
230
230
|
|
|
231
231
|
### lint
|
|
232
232
|
|
|
233
|
+
Content checks applied at write time. Before data is saved, watashi-db scans all text fields and warns or blocks on problems. There are three detectors:
|
|
234
|
+
|
|
235
|
+
1. **Secret patterns** — API keys and tokens (OpenAI `sk-...`, GitHub `ghp_...`, AWS `AKIA...`, PEM private keys, Slack / Google keys, etc.) detected by regex. Controlled by `secret_detection`.
|
|
236
|
+
2. **Malformed tool-call tags** — XML/JSON tag fragments (`</description>`, etc.) that leak in when a tool call fails. **Always blocked**, regardless of `secret_detection`.
|
|
237
|
+
3. **custom_terms (user-defined sensitive strings)** — fixed strings you list in config (client names, project codes, account names — proper nouns that can't be expressed as regex). **Always blocked** on match. Prevents sensitive info from being written to a synced DB and leaking to other devices.
|
|
238
|
+
|
|
233
239
|
```json
|
|
234
240
|
"lint": {
|
|
235
|
-
"secret_detection": "warn"
|
|
241
|
+
"secret_detection": "warn",
|
|
242
|
+
"custom_terms": ["AcmeCorp", "ProjectXYZ", "my-account-name"]
|
|
236
243
|
}
|
|
237
244
|
```
|
|
238
245
|
|
|
239
246
|
| Field | Type | Default | Description |
|
|
240
247
|
|-------|------|---------|-------------|
|
|
241
|
-
| `secret_detection` | `"block"` \| `"warn"` \| `"off"` | `"warn"` |
|
|
248
|
+
| `secret_detection` | `"block"` \| `"warn"` \| `"off"` | `"warn"` | Behavior on secret-pattern match (`block`=reject / `warn`=warn only / `off`=skip scan) |
|
|
249
|
+
| `custom_terms` | string[] | `[]` | List of fixed strings to block. Substring match, case-insensitive. On match, the write is always rejected regardless of `secret_detection` |
|
|
250
|
+
|
|
251
|
+
> **When to use custom_terms**: With multi-device sync, written data propagates to all devices. Accidentally recording work-specific proper nouns (company names, project names, personal names) could leak them via sync. List them in custom_terms to mechanically block any write containing them. config.json is local-only (not synced, not committed to GitHub), making it a safe place to store the terms.
|
|
252
|
+
>
|
|
253
|
+
> Note: the sensitive term itself is never shown in the error response (to avoid re-leaking) — only which field matched.
|
|
242
254
|
|
|
243
255
|
### embedding
|
|
244
256
|
|
package/docs/ja/config-guide.md
CHANGED
|
@@ -231,15 +231,27 @@ cwd のリポジトリ名と一致するコンテキストが `contexts` に存
|
|
|
231
231
|
|
|
232
232
|
### lint
|
|
233
233
|
|
|
234
|
+
書き込み時のコンテンツ検査。watashi-db に保存される前のデータ(全テキストフィールド)を走査し、問題があれば警告またはブロックする。3種類の検出器を持つ:
|
|
235
|
+
|
|
236
|
+
1. **機密情報パターン** — API キー・トークン(OpenAI `sk-...`、GitHub `ghp_...`、AWS `AKIA...`、PEM 秘密鍵、Slack / Google のキー等)を正規表現で検出。`secret_detection` で挙動を制御する。
|
|
237
|
+
2. **壊れたタグ片** — ツール呼び出しの失敗で混入する XML/JSON タグ片(`</description>` など)を検出。`secret_detection` の設定に関わらず**常に block** する。
|
|
238
|
+
3. **custom_terms(ユーザー定義の秘匿文字列)** — config に列挙した固定文字列(取引先名・案件コード・アカウント名など、正規表現で表せない固有名詞)を検出。マッチしたら**常に block** する。同期対象の DB に秘匿情報が書き込まれて他デバイスへ漏れるのを防ぐ。
|
|
239
|
+
|
|
234
240
|
```json
|
|
235
241
|
"lint": {
|
|
236
|
-
"secret_detection": "warn"
|
|
242
|
+
"secret_detection": "warn",
|
|
243
|
+
"custom_terms": ["取引先A社", "案件コードXYZ", "社内アカウント名"]
|
|
237
244
|
}
|
|
238
245
|
```
|
|
239
246
|
|
|
240
247
|
| フィールド | 型 | デフォルト | 説明 |
|
|
241
248
|
|-----------|------|-----------|------|
|
|
242
|
-
| `secret_detection` | `"block"` \| `"warn"` \| `"off"` | `"warn"` |
|
|
249
|
+
| `secret_detection` | `"block"` \| `"warn"` \| `"off"` | `"warn"` | 機密情報パターン検出時の挙動(`block`=拒否 / `warn`=警告のみ / `off`=スキャンしない) |
|
|
250
|
+
| `custom_terms` | string[] | `[]` | ブロックする固定文字列のリスト。部分一致・大文字小文字を区別しない。マッチしたら `secret_detection` の設定に関わらず常に書き込みを拒否する |
|
|
251
|
+
|
|
252
|
+
> **custom_terms の使いどころ**: マルチデバイス同期では、書き込んだデータが全デバイスへ伝播する。仕事の固有名詞(社名・案件名・個人名など)を誤って記録すると同期経由で漏洩しうる。custom_terms に列挙しておくと、それらを含む書き込みが機械的にブロックされる。config.json はローカル専用(同期されず GitHub にも載らない)なので、秘匿語の置き場所として安全。
|
|
253
|
+
>
|
|
254
|
+
> なお、エラー応答には秘匿語そのものは表示されない(再漏洩を防ぐため)。どのフィールドが該当したかだけが示される。
|
|
243
255
|
|
|
244
256
|
### embedding
|
|
245
257
|
|