@mcptoolshop/shipcheck 1.0.0 → 1.0.1

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/README.it.md CHANGED
@@ -1,64 +1,64 @@
1
- <p align="center">
2
- <a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.md">English</a> | <a href="README.pt-BR.md">Português (BR)</a>
3
- </p>
4
-
1
+ <p align="center">
2
+ <a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.md">English</a> | <a href="README.pt-BR.md">Português (BR)</a>
3
+ </p>
4
+
5
5
  <p align="center">
6
6
  <img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/shipcheck/readme.jpg" alt="Shipcheck" width="400">
7
7
  </p>
8
-
8
+
9
9
  <p align="center">
10
10
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
11
11
  <a href="https://mcp-tool-shop-org.github.io/shipcheck/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
12
12
  </p>
13
-
13
+
14
14
  <p align="center">
15
15
  Product standards for MCP Tool Shop.<br>
16
16
  Templates, contracts, and adoption guides that define what "done" means before anything ships.
17
17
  </p>
18
-
18
+
19
19
  ---
20
-
21
- ## Perché
22
-
23
- "Fatto" significava che il codice funzionava. Questo non è sufficiente. Un prodotto è costituito da codice + sicurezza + gestione degli errori + documentazione + identità + pratiche di rilascio. Shipcheck definisce gli standard.
24
-
25
- ## Cosa c'è qui
26
-
27
- | Standard | Cosa copre |
28
- |----------|----------------|
29
- | [Ship Gate](templates/SHIP_GATE.md) | 27 controlli preliminari "hard" + 4 controlli preliminari "soft" |
30
- | [Error Contract](contracts/error-contract.md) | Standard strutturato per la gestione degli errori con registro del codice |
31
- | [Security Baseline](templates/SECURITY.md) | Email di segnalazione, tempi di risposta, ambito delle minacce |
32
- | [Handbook](templates/HANDBOOK.md) | Manuale operativo per strumenti complessi |
33
- | [Scorecard](templates/SCORECARD.md) | Valutazione pre/post correzione |
34
- | [Adoption Guide](ADOPTION.md) | Applica Shipcheck a qualsiasi repository in meno di 30 minuti |
35
-
36
- ## Guida rapida
37
-
38
- 1. Leggere [ADOPTION.md](ADOPTION.md)
39
- 2. Copiare `templates/SHIP_GATE.md` nella directory principale del repository
40
- 3. Spuntare le voci applicabili, contrassegnare le voci non applicabili con `SKIP:`
41
- 4. Rilasciare quando tutti i controlli preliminari "hard" sono superati
42
-
43
- ## Come funziona
44
-
45
- I **controlli preliminari "hard"** (A-D) bloccano il rilascio:
46
-
47
- - **A. Sicurezza di base** — SECURITY.md, modello delle minacce, nessuna informazione sensibile, nessuna telemetria, impostazione di sicurezza predefinita
48
- - **B. Gestione degli errori** — struttura degli errori (codice/messaggio/suggerimento/riprovabile), output sicuro, gestione degli errori controllata
49
- - **C. Documentazione per l'utente** — README, CHANGELOG, LICENZA, documentazione dello strumento
50
- - **D. Pratiche di rilascio** — verifica dello script, allineamento delle versioni, scansione delle dipendenze, file di blocco
51
-
52
- Il **controllo preliminare "soft"** (E) non blocca, ma definisce il "quadro generale":
53
-
54
- - **E. Identità** — logo, traduzioni, pagina di presentazione, metadati del repository
55
-
56
- Il controllo preliminare indica **cosa** deve essere vero, non **come** implementarlo. I tag di applicabilità (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) impediscono che si verifichino situazioni imbarazzanti in repository in cui le voci non sono applicabili.
57
-
58
- ## Panoramica del contratto di gestione degli errori
59
-
60
- **Livello 1 — Struttura (obbligatorio ovunque):**
61
-
20
+
21
+ ## Perché
22
+
23
+ "Fatto" significava che il codice funzionava. Questo non è sufficiente. Un prodotto è costituito da codice + sicurezza + gestione degli errori + documentazione + identità + pratiche di rilascio. Shipcheck definisce gli standard.
24
+
25
+ ## Cosa c'è qui
26
+
27
+ | Standard | Cosa copre |
28
+ |----------|----------------|
29
+ | [Ship Gate](templates/SHIP_GATE.md) | 27 controlli preliminari "hard" + 4 controlli preliminari "soft" |
30
+ | [Error Contract](contracts/error-contract.md) | Standard strutturato per la gestione degli errori con registro del codice |
31
+ | [Security Baseline](templates/SECURITY.md) | Email di segnalazione, tempi di risposta, ambito delle minacce |
32
+ | [Handbook](templates/HANDBOOK.md) | Manuale operativo per strumenti complessi |
33
+ | [Scorecard](templates/SCORECARD.md) | Valutazione pre/post correzione |
34
+ | [Adoption Guide](ADOPTION.md) | Applica Shipcheck a qualsiasi repository in meno di 30 minuti |
35
+
36
+ ## Guida rapida
37
+
38
+ 1. Leggere [ADOPTION.md](ADOPTION.md)
39
+ 2. Copiare `templates/SHIP_GATE.md` nella directory principale del repository
40
+ 3. Spuntare le voci applicabili, contrassegnare le voci non applicabili con `SKIP:`
41
+ 4. Rilasciare quando tutti i controlli preliminari "hard" sono superati
42
+
43
+ ## Come funziona
44
+
45
+ I **controlli preliminari "hard"** (A-D) bloccano il rilascio:
46
+
47
+ - **A. Sicurezza di base** — SECURITY.md, modello delle minacce, nessuna informazione sensibile, nessuna telemetria, impostazione di sicurezza predefinita
48
+ - **B. Gestione degli errori** — struttura degli errori (codice/messaggio/suggerimento/riprovabile), output sicuro, gestione degli errori controllata
49
+ - **C. Documentazione per l'utente** — README, CHANGELOG, LICENZA, documentazione dello strumento
50
+ - **D. Pratiche di rilascio** — verifica dello script, allineamento delle versioni, scansione delle dipendenze, file di blocco
51
+
52
+ Il **controllo preliminare "soft"** (E) non blocca, ma definisce il "quadro generale":
53
+
54
+ - **E. Identità** — logo, traduzioni, pagina di presentazione, metadati del repository
55
+
56
+ Il controllo preliminare indica **cosa** deve essere vero, non **come** implementarlo. I tag di applicabilità (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) impediscono che si verifichino situazioni imbarazzanti in repository in cui le voci non sono applicabili.
57
+
58
+ ## Panoramica del contratto di gestione degli errori
59
+
60
+ **Livello 1 — Struttura (obbligatorio ovunque):**
61
+
62
62
  ```json
63
63
  {
64
64
  "code": "INPUT_TEXT_EMPTY",
@@ -67,39 +67,39 @@ Il controllo preliminare indica **cosa** deve essere vero, non **come** implemen
67
67
  "retryable": false
68
68
  }
69
69
  ```
70
-
71
- **Livello 2 — Tipo di base + codici di uscita (CLI/MCP/desktop):**
72
-
73
- | Codice di uscita | Significato |
74
- |-----------|---------|
75
- | 0 | OK |
76
- | 1 | Errore dell'utente (input errato, configurazione mancante) |
77
- | 2 | Errore di runtime (crash, errore del backend) |
78
- | 3 | Successo parziale (alcuni elementi hanno avuto successo) |
79
-
80
- I codici di errore utilizzano prefissi con spazi dei nomi: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. I codici sono stabili una volta rilasciati.
81
-
82
- ## Implementazione di riferimento
83
-
84
- [mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) è stato il primo repository a superare il controllo preliminare Ship Gate, ottenendo un punteggio di **46/50** dopo la correzione.
85
-
86
- ## Scheda di valutazione
87
-
88
- | Categoria | Punteggio | Note |
89
- |----------|-------|-------|
90
- | A. Sicurezza | 10/10 | SECURITY.md, nessun codice eseguibile, nessuna raccolta dati |
91
- | B. Gestione degli errori | N/A | Repository standard — nessun codice per la gestione degli errori |
92
- | C. Documentazione per l'utente | 10/10 | README, CHANGELOG, ADOPTION, tutte le voci documentate |
93
- | D. Pratiche di rilascio | 8/10 | Nessun codice da verificare/testare, tutte le versioni degli standard sono gestite |
94
- | E. Identità | 10/10 | Logo, traduzioni, pagina di presentazione, metadati |
95
- | **Total** | **38/40** | B escluso (non applicabile) |
96
-
97
- ## Licenza
98
-
99
- [MIT](LICENSE)
100
-
70
+
71
+ **Livello 2 — Tipo di base + codici di uscita (CLI/MCP/desktop):**
72
+
73
+ | Codice di uscita | Significato |
74
+ |-----------|---------|
75
+ | 0 | OK |
76
+ | 1 | Errore dell'utente (input errato, configurazione mancante) |
77
+ | 2 | Errore di runtime (crash, errore del backend) |
78
+ | 3 | Successo parziale (alcuni elementi hanno avuto successo) |
79
+
80
+ I codici di errore utilizzano prefissi con spazi dei nomi: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. I codici sono stabili una volta rilasciati.
81
+
82
+ ## Implementazione di riferimento
83
+
84
+ [mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) è stato il primo repository a superare il controllo preliminare Ship Gate, ottenendo un punteggio di **46/50** dopo la correzione.
85
+
86
+ ## Scheda di valutazione
87
+
88
+ | Categoria | Punteggio | Note |
89
+ |----------|-------|-------|
90
+ | A. Sicurezza | 10/10 | SECURITY.md, nessun codice eseguibile, nessuna raccolta dati |
91
+ | B. Gestione degli errori | N/A | Repository standard — nessun codice per la gestione degli errori |
92
+ | C. Documentazione per l'utente | 10/10 | README, CHANGELOG, ADOPTION, tutte le voci documentate |
93
+ | D. Pratiche di rilascio | 8/10 | Nessun codice da verificare/testare, tutte le versioni degli standard sono gestite |
94
+ | E. Identità | 10/10 | Logo, traduzioni, pagina di presentazione, metadati |
95
+ | **Total** | **38/40** | B escluso (non applicabile) |
96
+
97
+ ## Licenza
98
+
99
+ [MIT](LICENSE)
100
+
101
101
  ---
102
-
102
+
103
103
  <p align="center">
104
104
  Built by <a href="https://mcp-tool-shop.github.io/">MCP Tool Shop</a>
105
105
  </p>
package/README.ja.md CHANGED
@@ -1,64 +1,64 @@
1
- <p align="center">
2
- <a href="README.md">English</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
3
- </p>
4
-
1
+ <p align="center">
2
+ <a href="README.md">English</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
3
+ </p>
4
+
5
5
  <p align="center">
6
6
  <img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/shipcheck/readme.png" alt="Shipcheck" width="400">
7
7
  </p>
8
-
8
+
9
9
  <p align="center">
10
10
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
11
11
  <a href="https://mcp-tool-shop-org.github.io/shipcheck/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
12
12
  </p>
13
-
13
+
14
14
  <p align="center">
15
15
  Product standards for MCP Tool Shop.<br>
16
16
  Templates, contracts, and adoption guides that define what "done" means before anything ships.
17
17
  </p>
18
-
18
+
19
19
  ---
20
-
21
- ## なぜ
22
-
23
- 以前は、「完了」とはコードが動作することを意味していました。しかし、それだけでは不十分です。製品とは、コードに加えて、安全性、エラー処理、ドキュメント、アイデンティティ、そして適切なリリース体制を意味します。Shipcheckは、その基準を定義します。
24
-
25
- ## 内容
26
-
27
- | 標準 | 対象範囲 |
28
- |----------|----------------|
29
- | [Ship Gate](templates/SHIP_GATE.md) | 厳格なチェック項目27個 + 柔軟なチェック項目4個を含む、リリース前のチェックリスト |
30
- | [Error Contract](contracts/error-contract.md) | コード登録機能付きの、2段階構造のエラー基準 |
31
- | [Security Baseline](templates/SECURITY.md) | レポートメール、対応までの時間、リスク範囲 |
32
- | [Handbook](templates/HANDBOOK.md) | 複雑なツール向けの運用マニュアル |
33
- | [Scorecard](templates/SCORECARD.md) | 修正前後の評価 |
34
- | [Adoption Guide](ADOPTION.md) | Shipcheckを、30分以内に任意のレポジトリに適用 |
35
-
36
- ## クイックスタート
37
-
38
- 1. [ADOPTION.md](ADOPTION.md) を読んでください。
39
- 2. `templates/SHIP_GATE.md` をレポジトリのルートディレクトリにコピーします。
40
- 3. 該当する項目にチェックを入れ、該当しない項目には `SKIP:` と記述します。
41
- 4. すべての厳格なチェック項目が完了したら、リリースします。
42
-
43
- ## 仕組み
44
-
45
- **厳格なチェック項目** (A~D) は、リリースをブロックします。
46
-
47
- - **A. セキュリティ基準** — SECURITY.md、脅威モデル、機密情報の非保持、テレメトリーの非使用、デフォルトの安全対策
48
- - **B. エラー処理** — 構造化されたエラー形式 (コード/メッセージ/ヒント/再試行可能)、安全な出力、エラー発生時の適切な対応
49
- - **C. 運用者向けドキュメント** — README、CHANGELOG、LICENSE、ツールのドキュメント
50
- - **D. リリース体制** — スクリプトの検証、バージョンの一致、依存関係のスキャン、ロックファイルの確認
51
-
52
- **柔軟なチェック項目** (E) は、リリースをブロックしませんが、「全体像」を定義します。
53
-
54
- - **E. アイデンティティ** — ロゴ、翻訳、ランディングページ、レポジトリのメタデータ
55
-
56
- チェック項目は、**何を**満たすべきかを定義するものであり、**どのように**実装するかを定義するものではありません。適用範囲を示すタグ (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) は、該当する項目がないレポジトリでの不必要なチェックを避けるために使用されます。
57
-
58
- ## エラー基準の概要
59
-
60
- **Tier 1 — 形状 (必須):**
61
-
20
+
21
+ ## なぜ
22
+
23
+ 以前は、「完了」とはコードが動作することを意味していました。しかし、それだけでは不十分です。製品とは、コードに加えて、安全性、エラー処理、ドキュメント、アイデンティティ、そして適切なリリース体制を意味します。Shipcheckは、その基準を定義します。
24
+
25
+ ## 内容
26
+
27
+ | 標準 | 対象範囲 |
28
+ |----------|----------------|
29
+ | [Ship Gate](templates/SHIP_GATE.md) | 厳格なチェック項目27個 + 柔軟なチェック項目4個を含む、リリース前のチェックリスト |
30
+ | [Error Contract](contracts/error-contract.md) | コード登録機能付きの、2段階構造のエラー基準 |
31
+ | [Security Baseline](templates/SECURITY.md) | レポートメール、対応までの時間、リスク範囲 |
32
+ | [Handbook](templates/HANDBOOK.md) | 複雑なツール向けの運用マニュアル |
33
+ | [Scorecard](templates/SCORECARD.md) | 修正前後の評価 |
34
+ | [Adoption Guide](ADOPTION.md) | Shipcheckを、30分以内に任意のレポジトリに適用 |
35
+
36
+ ## クイックスタート
37
+
38
+ 1. [ADOPTION.md](ADOPTION.md) を読んでください。
39
+ 2. `templates/SHIP_GATE.md` をレポジトリのルートディレクトリにコピーします。
40
+ 3. 該当する項目にチェックを入れ、該当しない項目には `SKIP:` と記述します。
41
+ 4. すべての厳格なチェック項目が完了したら、リリースします。
42
+
43
+ ## 仕組み
44
+
45
+ **厳格なチェック項目** (A~D) は、リリースをブロックします。
46
+
47
+ - **A. セキュリティ基準** — SECURITY.md、脅威モデル、機密情報の非保持、テレメトリーの非使用、デフォルトの安全対策
48
+ - **B. エラー処理** — 構造化されたエラー形式 (コード/メッセージ/ヒント/再試行可能)、安全な出力、エラー発生時の適切な対応
49
+ - **C. 運用者向けドキュメント** — README、CHANGELOG、LICENSE、ツールのドキュメント
50
+ - **D. リリース体制** — スクリプトの検証、バージョンの一致、依存関係のスキャン、ロックファイルの確認
51
+
52
+ **柔軟なチェック項目** (E) は、リリースをブロックしませんが、「全体像」を定義します。
53
+
54
+ - **E. アイデンティティ** — ロゴ、翻訳、ランディングページ、レポジトリのメタデータ
55
+
56
+ チェック項目は、**何を**満たすべきかを定義するものであり、**どのように**実装するかを定義するものではありません。適用範囲を示すタグ (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) は、該当する項目がないレポジトリでの不必要なチェックを避けるために使用されます。
57
+
58
+ ## エラー基準の概要
59
+
60
+ **Tier 1 — 形状 (必須):**
61
+
62
62
  ```json
63
63
  {
64
64
  "code": "INPUT_TEXT_EMPTY",
@@ -67,39 +67,39 @@
67
67
  "retryable": false
68
68
  }
69
69
  ```
70
-
71
- **Tier 2 — 基本タイプ + エラーコード (CLI/MCP/デスクトップ):**
72
-
73
- | エラーコード | 意味 |
74
- |-----------|---------|
75
- | 0 | OK |
76
- | 1 | ユーザーエラー (不正な入力、設定の欠如) |
77
- | 2 | 実行時エラー (クラッシュ、バックエンドの障害) |
78
- | 3 | 部分的な成功 (一部の項目が成功) |
79
-
80
- エラーコードは、名前空間付きのプレフィックスを使用します: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. コードは、リリース後に安定します。
81
-
82
- ## 参考実装
83
-
84
- [mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) は、Ship Gateを最初に通過したレポジトリであり、修正後に **46/50** のスコアを獲得しました。
85
-
86
- ## 評価項目
87
-
88
- | カテゴリ | スコア | 備考 |
89
- |----------|-------|-------|
90
- | A. セキュリティ | 10/10 | SECURITY.md、実行可能なコードなし、データ収集なし |
91
- | B. エラー処理 | 該当なし | 標準レポジトリ — エラーに関するコードなし |
92
- | C. 運用者向けドキュメント | 10/10 | README、CHANGELOG、ADOPTION、すべてのテンプレートがドキュメント化されています |
93
- | D. リリース体制 | 8/10 | 検証/テストするコードなし、すべての標準がバージョン管理されています |
94
- | E. アイデンティティ | 10/10 | ロゴ、翻訳、ランディングページ、メタデータ |
95
- | **Total** | **38/40** | B は除外 (該当なし) |
96
-
97
- ## ライセンス
98
-
99
- [MIT](LICENSE)
100
-
70
+
71
+ **Tier 2 — 基本タイプ + エラーコード (CLI/MCP/デスクトップ):**
72
+
73
+ | エラーコード | 意味 |
74
+ |-----------|---------|
75
+ | 0 | OK |
76
+ | 1 | ユーザーエラー (不正な入力、設定の欠如) |
77
+ | 2 | 実行時エラー (クラッシュ、バックエンドの障害) |
78
+ | 3 | 部分的な成功 (一部の項目が成功) |
79
+
80
+ エラーコードは、名前空間付きのプレフィックスを使用します: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. コードは、リリース後に安定します。
81
+
82
+ ## 参考実装
83
+
84
+ [mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) は、Ship Gateを最初に通過したレポジトリであり、修正後に **46/50** のスコアを獲得しました。
85
+
86
+ ## 評価項目
87
+
88
+ | カテゴリ | スコア | 備考 |
89
+ |----------|-------|-------|
90
+ | A. セキュリティ | 10/10 | SECURITY.md、実行可能なコードなし、データ収集なし |
91
+ | B. エラー処理 | 該当なし | 標準レポジトリ — エラーに関するコードなし |
92
+ | C. 運用者向けドキュメント | 10/10 | README、CHANGELOG、ADOPTION、すべてのテンプレートがドキュメント化されています |
93
+ | D. リリース体制 | 8/10 | 検証/テストするコードなし、すべての標準がバージョン管理されています |
94
+ | E. アイデンティティ | 10/10 | ロゴ、翻訳、ランディングページ、メタデータ |
95
+ | **Total** | **38/40** | B は除外 (該当なし) |
96
+
97
+ ## ライセンス
98
+
99
+ [MIT](LICENSE)
100
+
101
101
  ---
102
-
102
+
103
103
  <p align="center">
104
104
  Built by <a href="https://mcp-tool-shop.github.io/">MCP Tool Shop</a>
105
105
  </p>
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
- <p align="center">
2
- <a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
3
- </p>
4
-
1
+ <p align="center">
2
+ <a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.pt-BR.md">Português (BR)</a>
3
+ </p>
4
+
5
5
  <p align="center">
6
6
  <img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/shipcheck/readme.jpg" alt="Shipcheck" width="400">
7
7
  </p>
@@ -79,6 +79,13 @@ The gate says **what** must be true, not **how** to implement it. Applicability
79
79
 
80
80
  Error codes use namespaced prefixes: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. Codes are stable once released.
81
81
 
82
+ ## Trust model
83
+
84
+ **Data touched:** reads `package.json`, `pyproject.toml`, and `SHIP_GATE.md` in the current working directory. Writes template files (`SHIP_GATE.md`, `SECURITY.md`, `CHANGELOG.md`, `SCORECARD.md`) to the current directory only.
85
+ **No network requests.** All operations are local file reads and writes.
86
+ **No secrets handling.** Does not read, store, or transmit credentials.
87
+ **No telemetry** collected or sent.
88
+
82
89
  ## Reference implementation
83
90
 
84
91
  [mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) was the first repo to pass Ship Gate — scoring **46/50** after remediation.
@@ -87,12 +94,12 @@ Error codes use namespaced prefixes: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME
87
94
 
88
95
  | Category | Score | Notes |
89
96
  |----------|-------|-------|
90
- | A. Security | 10/10 | SECURITY.md, no executable code, no data collection |
91
- | B. Error Handling | N/A | Standards repo no code to error |
92
- | C. Operator Docs | 10/10 | README, CHANGELOG, ADOPTION, all templates documented |
93
- | D. Shipping Hygiene | 8/10 | No code to verify/test, all standards versioned |
94
- | E. Identity | 10/10 | Logo, translations, landing page, metadata |
95
- | **Total** | **38/40** | B excluded (not applicable) |
97
+ | A. Security | 6/8 | SECURITY.md, trust model, no secrets/telemetry. MCP items skipped (not an MCP server) |
98
+ | B. Error Handling | 3/7 | Structured error shape + exit codes + no raw stacks. MCP/desktop/vscode skipped |
99
+ | C. Operator Docs | 4/7 | README, CHANGELOG, LICENSE, --help. Logging/MCP/complex skipped |
100
+ | D. Shipping Hygiene | 6/9 | verify script, version=tag, npm audit in CI, engines.node, lockfile. Zero deps = no update mechanism |
101
+ | E. Identity | 4/4 | Logo, translations, landing page, metadata |
102
+ | **Total** | **23/31** | 14 items skipped with justification · `shipcheck audit` passes 100% |
96
103
 
97
104
  ## License
98
105
 
package/README.pt-BR.md CHANGED
@@ -1,64 +1,64 @@
1
- <p align="center">
2
- <a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.md">English</a>
3
- </p>
4
-
1
+ <p align="center">
2
+ <a href="README.ja.md">日本語</a> | <a href="README.zh.md">中文</a> | <a href="README.es.md">Español</a> | <a href="README.fr.md">Français</a> | <a href="README.hi.md">हिन्दी</a> | <a href="README.it.md">Italiano</a> | <a href="README.md">English</a>
3
+ </p>
4
+
5
5
  <p align="center">
6
6
  <img src="https://raw.githubusercontent.com/mcp-tool-shop-org/brand/main/logos/shipcheck/readme.jpg" alt="Shipcheck" width="400">
7
7
  </p>
8
-
8
+
9
9
  <p align="center">
10
10
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue" alt="MIT License"></a>
11
11
  <a href="https://mcp-tool-shop-org.github.io/shipcheck/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
12
12
  </p>
13
-
13
+
14
14
  <p align="center">
15
15
  Product standards for MCP Tool Shop.<br>
16
16
  Templates, contracts, and adoption guides that define what "done" means before anything ships.
17
17
  </p>
18
-
18
+
19
19
  ---
20
-
21
- ## Por que
22
-
23
- "Concluído" costumava significar que o código funcionava. Isso não é suficiente. Um produto é código + segurança + tratamento de erros + documentação + identidade + higiene no processo de lançamento. O Shipcheck define o padrão.
24
-
25
- ## O que está incluído aqui
26
-
27
- | Padrão | O que isso cobre |
28
- |----------|----------------|
29
- | [Ship Gate](templates/SHIP_GATE.md) | Lista de verificação de pré-lançamento com 27 itens obrigatórios + 4 itens opcionais. |
30
- | [Error Contract](contracts/error-contract.md) | Padrão estruturado de tratamento de erros com registro de código. |
31
- | [Security Baseline](templates/SECURITY.md) | E-mail de relatório, tempo de resposta, escopo das ameaças. |
32
- | [Handbook](templates/HANDBOOK.md) | Manual operacional para ferramentas complexas. |
33
- | [Scorecard](templates/SCORECARD.md) | Pontuação antes e depois da correção. |
34
- | [Adoption Guide](ADOPTION.md) | Aplique o Shipcheck a qualquer repositório em menos de 30 minutos. |
35
-
36
- ## Como começar
37
-
38
- 1. Leia [ADOPTION.md](ADOPTION.md)
39
- 2. Copie `templates/SHIP_GATE.md` para a raiz do seu repositório.
40
- 3. Marque os itens aplicáveis, e marque os itens não aplicáveis com `SKIP:`.
41
- 4. Lance quando todos os itens obrigatórios forem aprovados.
42
-
43
- ## Como funciona
44
-
45
- **Itens obrigatórios** (A-D) bloqueiam o lançamento:
46
-
47
- - **A. Segurança básica** — SECURITY.md, modelo de ameaças, sem segredos, sem telemetria, postura de segurança padrão.
48
- - **B. Tratamento de erros** — estrutura de erro padronizada (código/mensagem/dica/tentável), saída segura, degradação graciosa.
49
- - **C. Documentação para o usuário** — README, CHANGELOG, LICENÇA, documentação da ferramenta.
50
- - **D. Higiene no processo de lançamento** — verificação de script, alinhamento de versão, análise de dependências, arquivo de bloqueio.
51
-
52
- **Item opcional** (E) não bloqueia, mas define o "todo":
53
-
54
- - **E. Identidade** — logotipo, traduções, página de destino, metadados do repositório.
55
-
56
- O item indica **o que** deve ser verdadeiro, não **como** implementá-lo. As tags de aplicabilidade (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) evitam constrangimentos em repositórios onde os itens não se aplicam.
57
-
58
- ## Contrato de erro em resumo
59
-
60
- **Nível 1 — Estrutura (obrigatório em todos os lugares):**
61
-
20
+
21
+ ## Por que
22
+
23
+ "Concluído" costumava significar que o código funcionava. Isso não é suficiente. Um produto é código + segurança + tratamento de erros + documentação + identidade + higiene no processo de lançamento. O Shipcheck define o padrão.
24
+
25
+ ## O que está incluído aqui
26
+
27
+ | Padrão | O que isso cobre |
28
+ |----------|----------------|
29
+ | [Ship Gate](templates/SHIP_GATE.md) | Lista de verificação de pré-lançamento com 27 itens obrigatórios + 4 itens opcionais. |
30
+ | [Error Contract](contracts/error-contract.md) | Padrão estruturado de tratamento de erros com registro de código. |
31
+ | [Security Baseline](templates/SECURITY.md) | E-mail de relatório, tempo de resposta, escopo das ameaças. |
32
+ | [Handbook](templates/HANDBOOK.md) | Manual operacional para ferramentas complexas. |
33
+ | [Scorecard](templates/SCORECARD.md) | Pontuação antes e depois da correção. |
34
+ | [Adoption Guide](ADOPTION.md) | Aplique o Shipcheck a qualquer repositório em menos de 30 minutos. |
35
+
36
+ ## Como começar
37
+
38
+ 1. Leia [ADOPTION.md](ADOPTION.md)
39
+ 2. Copie `templates/SHIP_GATE.md` para a raiz do seu repositório.
40
+ 3. Marque os itens aplicáveis, e marque os itens não aplicáveis com `SKIP:`.
41
+ 4. Lance quando todos os itens obrigatórios forem aprovados.
42
+
43
+ ## Como funciona
44
+
45
+ **Itens obrigatórios** (A-D) bloqueiam o lançamento:
46
+
47
+ - **A. Segurança básica** — SECURITY.md, modelo de ameaças, sem segredos, sem telemetria, postura de segurança padrão.
48
+ - **B. Tratamento de erros** — estrutura de erro padronizada (código/mensagem/dica/tentável), saída segura, degradação graciosa.
49
+ - **C. Documentação para o usuário** — README, CHANGELOG, LICENÇA, documentação da ferramenta.
50
+ - **D. Higiene no processo de lançamento** — verificação de script, alinhamento de versão, análise de dependências, arquivo de bloqueio.
51
+
52
+ **Item opcional** (E) não bloqueia, mas define o "todo":
53
+
54
+ - **E. Identidade** — logotipo, traduções, página de destino, metadados do repositório.
55
+
56
+ O item indica **o que** deve ser verdadeiro, não **como** implementá-lo. As tags de aplicabilidade (`[all]`, `[npm]`, `[mcp]`, `[cli]`, `[desktop]`, `[vsix]`, `[container]`) evitam constrangimentos em repositórios onde os itens não se aplicam.
57
+
58
+ ## Contrato de erro em resumo
59
+
60
+ **Nível 1 — Estrutura (obrigatório em todos os lugares):**
61
+
62
62
  ```json
63
63
  {
64
64
  "code": "INPUT_TEXT_EMPTY",
@@ -67,39 +67,39 @@ O item indica **o que** deve ser verdadeiro, não **como** implementá-lo. As ta
67
67
  "retryable": false
68
68
  }
69
69
  ```
70
-
71
- **Nível 2 — Tipo base + códigos de saída (CLI/MCP/desktop):**
72
-
73
- | Código de saída | Significado |
74
- |-----------|---------|
75
- | 0 | OK |
76
- | 1 | Erro do usuário (entrada inválida, configuração ausente) |
77
- | 2 | Erro em tempo de execução (falha, falha no backend) |
78
- | 3 | Sucesso parcial (alguns itens foram bem-sucedidos) |
79
-
80
- Os códigos de erro usam prefixos com namespace: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. Os códigos são estáveis após o lançamento.
81
-
82
- ## Implementação de referência
83
-
84
- [mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) foi o primeiro repositório a passar no Ship Gate — obtendo uma pontuação de **46/50** após a correção.
85
-
86
- ## Tabela de pontuação
87
-
88
- | Categoria | Pontuação | Observações |
89
- |----------|-------|-------|
90
- | A. Segurança | 10/10 | SECURITY.md, sem código executável, sem coleta de dados. |
91
- | B. Tratamento de erros | N/A | Repositório de padrões — sem código para tratamento de erros. |
92
- | C. Documentação para o usuário | 10/10 | README, CHANGELOG, ADOPTION, todos os modelos documentados. |
93
- | D. Higiene no processo de lançamento | 8/10 | Sem código para verificar/testar, todas as versões dos padrões versionadas. |
94
- | E. Identidade | 10/10 | Logotipo, traduções, página de destino, metadados. |
95
- | **Total** | **38/40** | B excluído (não aplicável) |
96
-
97
- ## Licença
98
-
99
- [MIT](LICENSE)
100
-
70
+
71
+ **Nível 2 — Tipo base + códigos de saída (CLI/MCP/desktop):**
72
+
73
+ | Código de saída | Significado |
74
+ |-----------|---------|
75
+ | 0 | OK |
76
+ | 1 | Erro do usuário (entrada inválida, configuração ausente) |
77
+ | 2 | Erro em tempo de execução (falha, falha no backend) |
78
+ | 3 | Sucesso parcial (alguns itens foram bem-sucedidos) |
79
+
80
+ Os códigos de erro usam prefixos com namespace: `IO_`, `CONFIG_`, `PERM_`, `DEP_`, `RUNTIME_`, `PARTIAL_`, `INPUT_`, `STATE_`. Os códigos são estáveis após o lançamento.
81
+
82
+ ## Implementação de referência
83
+
84
+ [mcp-voice-soundboard](https://github.com/mcp-tool-shop-org/mcp-voice-soundboard) foi o primeiro repositório a passar no Ship Gate — obtendo uma pontuação de **46/50** após a correção.
85
+
86
+ ## Tabela de pontuação
87
+
88
+ | Categoria | Pontuação | Observações |
89
+ |----------|-------|-------|
90
+ | A. Segurança | 10/10 | SECURITY.md, sem código executável, sem coleta de dados. |
91
+ | B. Tratamento de erros | N/A | Repositório de padrões — sem código para tratamento de erros. |
92
+ | C. Documentação para o usuário | 10/10 | README, CHANGELOG, ADOPTION, todos os modelos documentados. |
93
+ | D. Higiene no processo de lançamento | 8/10 | Sem código para verificar/testar, todas as versões dos padrões versionadas. |
94
+ | E. Identidade | 10/10 | Logotipo, traduções, página de destino, metadados. |
95
+ | **Total** | **38/40** | B excluído (não aplicável) |
96
+
97
+ ## Licença
98
+
99
+ [MIT](LICENSE)
100
+
101
101
  ---
102
-
102
+
103
103
  <p align="center">
104
104
  Built by <a href="https://mcp-tool-shop.github.io/">MCP Tool Shop</a>
105
105
  </p>