bluelamp 6.6.7 → 6.6.9

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.
@@ -0,0 +1 @@
1
+ "use strict";function normalize(e){return"string"==typeof e?{ok:!0,keyword:e}:e&&"object"==typeof e&&"boolean"==typeof e.ok?e:{ok:!1,reason:"http",status:null,message:null}}function withDetail(e,o){const t=(o??"").trim();return t?`${e}(${t})`:e}function describeSlotConfigFailure(e){const o=normalize(e);if(o.ok)return"このスロットに配置がありません";switch(o.reason){case"no-token":return"ログイン情報(CLI トークン)がありません";case"not-configured":return"HTTP 404: このスロットに配置がありません";case"rank":return withDetail("HTTP 403: プラン/ランク不足",o.message);case"network":return withDetail("通信エラー",o.message);default:return withDetail(`HTTP ${o.status??"不明"}`,o.message)}}function buildSlotConfigFailureLine(e,o){const t=normalize(o),r=`❌ スロット ${e} の設定を取得できないため起動を中止しました`;if(t.ok)return`${r}: このスロットにエージェントが配置されていません。BlueLamp ポータルの「エージェント配置」で ${e} 番に割り当ててください。`;switch(t.reason){case"no-token":return`${r}: ログイン情報(CLI トークン)がありません。bluelamp-account MCP の logout を実行し、起動し直して再ログインしてください。`;case"not-configured":return`${r}: このスロットにエージェントが配置されていません(HTTP 404)。BlueLamp ポータルの「エージェント配置」で ${e} 番に割り当ててください。`;case"rank":return withDetail(`${r}: 現在のプラン/ランクではこのスロットを利用できません(HTTP 403)。テナント管理者にランクの引き上げを依頼してください`,t.message)+"。";case"network":return withDetail(`${r}: BlueLamp ポータルに接続できませんでした(通信エラー)。ネットワーク/プロキシを確認して再実行してください`,t.message)+"。";default:return withDetail(`${r}: BlueLamp ポータルが応答しませんでした(HTTP ${t.status??"不明"})。時間をおいて再実行し、続く場合はこの 1 行をサポートへ伝えてください`,t.message)+"。"}}function resolveSlotKeyword(e){const{slotNumber:o,defaultKeyword:t}=e,r=normalize(e.outcome);return r.ok&&"string"==typeof r.keyword&&""!==r.keyword.trim()?{ok:!0,keyword:r.keyword,source:"custom"}:"string"==typeof t&&""!==t.trim()?{ok:!0,keyword:t,source:"default"}:{ok:!1,message:buildSlotConfigFailureLine(o,r)}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.describeSlotConfigFailure=describeSlotConfigFailure,exports.buildSlotConfigFailureLine=buildSlotConfigFailureLine,exports.resolveSlotKeyword=resolveSlotKeyword,exports.default={resolveSlotKeyword:resolveSlotKeyword,buildSlotConfigFailureLine:buildSlotConfigFailureLine,describeSlotConfigFailure:describeSlotConfigFailure};
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slotKeywordResolve.js","sourceRoot":"","sources":["../../src/lib/slotKeywordResolve.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bluelamp",
3
- "version": "6.6.7",
3
+ "version": "6.6.9",
4
4
  "description": "BlueLamp CLI: 旧 bluelampportal/mcp の auth / 200+ bluelamp1-N binary / postinstall scripts を TypeScript 化して monorepo に統合したパッケージ。",
5
5
  "keywords": [
6
6
  "bluelamp",
@@ -37,7 +37,7 @@
37
37
  "build": "pnpm run build:tsc && pnpm run build:obfuscate",
38
38
  "tsc": "tsc --noEmit && tsc -p scripts/tsconfig.json --noEmit && tsc -p tsconfig.claude-bin.json --noEmit",
39
39
  "generate:bins": "node dist/scripts/generate-commands.js",
40
- "test": "node --test --test-force-exit tests/*.test.mjs",
40
+ "test": "node scripts/run-tests.mjs",
41
41
  "prepublishOnly": "pnpm run build"
42
42
  },
43
43
  "dependencies": {
@@ -1,41 +0,0 @@
1
- /**
2
- * BlueLamp と Claude のログインアカウントを起動時に見せる行を組み立てる(板 #526 F3・純関数)。
3
- *
4
- * 仕様(要件書 §3 確定仕様=主君 13:2x の更新後):
5
- * 1. **常時 2 行**: 既存 `📧 Email:`(BlueLamp) の並びに `🤖 Claude:` を**毎回**出す
6
- * 2. Claude 未ログイン(`.claude.json` 無し/壊れ/`oauthAccount` 無し)は
7
- * `🤖 Claude: 未ログイン(初回起動時にログイン画面が出ます)`
8
- * 3. **不一致のときだけ**追加で ⚠️ 警告を **1 行**(CTO 裁可 C 2026-08-30 で確定)。
9
- * ⛔ 警告にアドレスを埋めない——両アドレスは直上の常時 2 行(`📧` / `🤖`)に既に出ており、
10
- * 繰り返しても情報は 1 つも増えない(主君の「1 行」を守っても情報は落ちない)
11
- * 4. ⛔ プラン名(無料/Pro/Max)を断定しない——`organizationType` は本機 1 サンプルしか
12
- * 観測できておらず、無料アカウントで何が入るか未確認。**アドレス不一致の指摘だけで主因は潰せる**
13
- * 5. ⛔ ブロックしない(例外・遅延・戻り値で起動を止めない)
14
- *
15
- * ⚠️ 本モジュールは `console` を持たない。**行を組み立てて返すだけ**で、出力は `bin/` 側が行う
16
- * (出力順の検証は実出力で行い、ここは文字列として単体で測れる状態に保つ)。
17
- */
18
- import type { ClaudeAccount } from './claudeAccount.js';
19
- export interface AccountAssurance {
20
- /** 常時 1 行。Claude 側のアドレス、または未ログインの案内 */
21
- readonly infoLine: string;
22
- /** 不一致のときだけ中身が入る。一致・比較不能なら空配列(=警告が 1 行も増えない) */
23
- readonly warnLines: readonly string[];
24
- }
25
- /**
26
- * 比較用の正規化。前後空白を落とし小文字化する。
27
- * ドメイン部は元来大小を区別せず、実運用の identity provider もローカル部を区別しない。
28
- * ⇒ 大文字違いを「別アカウント」と誤警告する方が実害が大きいので、大小は無視する。
29
- */
30
- export declare function normalizeEmail(email: string | null | undefined): string;
31
- /**
32
- * 不一致か。**どちらかが空なら比較不能=不一致とは言わない**(false)。
33
- * 「分からない」を「食い違っている」と言わない(潔癖性)。
34
- */
35
- export declare function isAccountMismatch(bluelampEmail: string | null | undefined, claudeEmail: string | null | undefined): boolean;
36
- /**
37
- * 表示行(常時)と警告行(不一致時のみ)を組み立てる。
38
- * 表示には**利用者が入力した元の綴り**をそのまま使う(正規化は比較にだけ使う)。
39
- */
40
- export declare function buildAccountAssurance(bluelampEmail: string | null | undefined, claudeAccount: ClaudeAccount | null): AccountAssurance;
41
- //# sourceMappingURL=accountAssurance.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accountAssurance.d.ts","sourceRoot":"","sources":["../../src/lib/accountAssurance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAExD,MAAM,WAAW,gBAAgB;IAC/B,uCAAuC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,gDAAgD;IAChD,QAAQ,CAAC,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;CACvC;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAEvE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACxC,WAAW,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACrC,OAAO,CAKT;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACxC,aAAa,EAAE,aAAa,GAAG,IAAI,GAClC,gBAAgB,CAelB"}
@@ -1 +0,0 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.normalizeEmail=normalizeEmail,exports.isAccountMismatch=isAccountMismatch,exports.buildAccountAssurance=buildAccountAssurance;const index_js_1=require("../i18n/index.js");function normalizeEmail(n){return(n??"").trim().toLowerCase()}function isAccountMismatch(n,e){const i=normalizeEmail(n),t=normalizeEmail(e);return 0!==i.length&&0!==t.length&&i!==t}function buildAccountAssurance(n,e){if(!e)return{infoLine:`🤖 ${(0,index_js_1.t)("base.claudeAccountNotLoggedIn")}`,warnLines:[]};const i=e.emailAddress,t=`🤖 ${(0,index_js_1.t)("base.claudeAccountLabel",{email:i})}`;return isAccountMismatch(n,i)?{infoLine:t,warnLines:[`⚠️ ${(0,index_js_1.t)("base.claudeAccountMismatch")}`]}:{infoLine:t,warnLines:[]}}
@@ -1 +0,0 @@
1
- {"version":3,"file":"accountAssurance.js","sourceRoot":"","sources":["../../src/lib/accountAssurance.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;AAiBH,wCAEC;AAMD,8CAQC;AAMD,sDAkBC;AAvDD,+CAAqC;AAUrC;;;;GAIG;AACH,SAAgB,cAAc,CAAC,KAAgC;IAC7D,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAC5C,CAAC;AAED;;;GAGG;AACH,SAAgB,iBAAiB,CAC/B,aAAwC,EACxC,WAAsC;IAEtC,MAAM,CAAC,GAAG,cAAc,CAAC,aAAa,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IACtC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACnD,OAAO,CAAC,KAAK,CAAC,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,SAAgB,qBAAqB,CACnC,aAAwC,EACxC,aAAmC;IAEnC,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAA,YAAC,EAAC,+BAA+B,CAAC,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACjF,CAAC;IAED,MAAM,WAAW,GAAG,aAAa,CAAC,YAAY,CAAC;IAC/C,MAAM,QAAQ,GAAG,MAAM,IAAA,YAAC,EAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;IAE9E,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,WAAW,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IACrC,CAAC;IAED,+DAA+D;IAC/D,iDAAiD;IACjD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,MAAM,IAAA,YAAC,EAAC,4BAA4B,CAAC,EAAE,CAAC,EAAE,CAAC;AAC5E,CAAC"}