oh-my-customcode 1.0.17 → 1.0.19

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/dist/cli/index.js CHANGED
@@ -241,7 +241,7 @@ var init_package = __esm(() => {
241
241
  workspaces: [
242
242
  "packages/*"
243
243
  ],
244
- version: "1.0.17",
244
+ version: "1.0.19",
245
245
  description: "Batteries-included agent harness for Claude Code",
246
246
  type: "module",
247
247
  bin: {
package/dist/index.js CHANGED
@@ -2031,7 +2031,7 @@ var package_default = {
2031
2031
  workspaces: [
2032
2032
  "packages/*"
2033
2033
  ],
2034
- version: "1.0.17",
2034
+ version: "1.0.19",
2035
2035
  description: "Batteries-included agent harness for Claude Code",
2036
2036
  type: "module",
2037
2037
  bin: {
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "workspaces": [
4
4
  "packages/*"
5
5
  ],
6
- "version": "1.0.17",
6
+ "version": "1.0.19",
7
7
  "description": "Batteries-included agent harness for Claude Code",
8
8
  "type": "module",
9
9
  "bin": {
@@ -237,6 +237,7 @@ steps:
237
237
 
238
238
  If either fails:
239
239
  - For wiki-sync failures: delegate to wiki-curator to generate missing pages (`/omcustom:wiki ingest <path>`)
240
+ (Regenerating the wiki source-hash manifest targets `wiki/.source-hashes.json` ALWAYS — NEVER `templates/manifest.json`. Command: `bash .github/scripts/lib/source-hash.sh generate wiki/.source-hashes.json`. Ref #1423.)
240
241
  - For template-sync failures: delegate to mgr-updater to sync `.claude/` -> `templates/.claude/`
241
242
  - After fixes, re-run the scripts until both pass
242
243
 
@@ -299,6 +300,9 @@ steps:
299
300
  Determine NEW version per semver rules below.
300
301
  npm project (package.json exists):
301
302
  a. package.json: jq '.version = "<NEW>"' package.json > package.json.tmp && mv package.json.tmp package.json
303
+ # ⚠ jq '.version=...' PRESERVES the manifest structure {version, lastUpdated, omcustomMinClaudeCode, components[]}.
304
+ # Edit ONLY the .version field — do NOT overwrite templates/manifest.json wholesale (e.g. a source-hash path→hash map).
305
+ # Recover a corrupted manifest: git show HEAD:templates/manifest.json | jq '.version="<NEW>"' > templates/manifest.json (#1423/#1154).
302
306
  b. templates/manifest.json: jq '.version = "<NEW>"' templates/manifest.json > templates/manifest.json.tmp && mv templates/manifest.json.tmp templates/manifest.json
303
307
  c. mgr-gitnerd commit: "chore(release): bump to v<NEW>"
304
308
  d. mgr-gitnerd push develop
@@ -72,6 +72,31 @@ PostToolUse → check:
72
72
  └── Gate: PASS | PARTIAL | FAIL
73
73
  ```
74
74
 
75
+ ## Manifest Integrity Gate
76
+
77
+ Guards `templates/manifest.json` against structure loss — e.g. a `source-hash.sh` path→hash map overwriting the versioned manifest (#1423 incident). The correct source-hash target is `wiki/.source-hashes.json`, never `templates/manifest.json`.
78
+
79
+ ```
80
+ [Manifest Integrity Gate]
81
+ - File: templates/manifest.json (staged)
82
+ - Structure: {version, lastUpdated, omcustomMinClaudeCode, components[]} present?
83
+ - .version field: present?
84
+ - Gate: PASS | FAIL
85
+ ```
86
+
87
+ | Signal | Action | Enforcement |
88
+ |--------|--------|-------------|
89
+ | `.version` missing in staged templates/manifest.json | Block stage, surface recovery hint | Advisory (skill-level, run jq check before commit) |
90
+ | Staged content is a path→hash map (no `{version,…}` keys) | Block stage, surface recovery hint | Advisory (skill-level) |
91
+ | `.version` present + structure intact | Pass gate, proceed | Commit allowed |
92
+
93
+ Deterministic check before staging: `jq -e '.version and .components' templates/manifest.json` must succeed.
94
+
95
+ ```
96
+ [Guard] OK templates/manifest.json — structure validated (.version present)
97
+ [Guard] BLOCK templates/manifest.json — structure lost (path→hash map) — recover: git show HEAD:templates/manifest.json | jq '.version="<NEW>"'
98
+ ```
99
+
75
100
  ## Escalation Integration
76
101
 
77
102
  When guards are triggered, they integrate with existing advisory systems:
@@ -19,6 +19,8 @@ effort: low
19
19
  - **NDCG@10 = 0.854**: transformer 모델 수준 정확도를 CPU 인덱싱 (~250ms), 쿼리 (~1.5ms)로 달성
20
20
  - **R013 ecomode 보완**: context 사용량 ≥ 60% 시점에 Semble 호출로 추가 파일 읽기 비용 절감
21
21
 
22
+ > **정확도 축 caveat (#1349 검증):** `98% 토큰 절감`과 `NDCG@10=0.854`는 upstream(MinishLab) 벤더 벤치마크이지 본 프로젝트 자체 측정값이 아니다. grep+Read 대비 우위는 **토큰 비용 축 한정**이며, `NDCG@10=0.854`는 transformer-상대 retrieval 품질 지표로 **grep과의 정확도 비교가 아니다**. 연구(arxiv 2605.15184, scout #1346)는 정확 심볼/식별자 lookup 등에서 grep이 vector 검색보다 일반적으로 정확도가 높다(하니스 의존적)고 보고한다. 따라서 Semble은 **의미 검색 + 토큰 절감**에 사용하고, 정확 심볼 lookup은 grep을 우선한다.
23
+
22
24
  ## CRG와의 보완 관계
23
25
 
24
26
  Semble과 CRG는 서로 다른 검색 축을 담당하며 상호 보완적이다.
@@ -147,7 +149,7 @@ R013 ecomode가 자동 활성화되는 시점 (context 사용량 ≥ 60%)에서
147
149
 
148
150
  | 기존 방식 | Semble 대체 가능 여부 |
149
151
  |----------|---------------------|
150
- | grep + Read 조합의 패턴 검색 | 대체 권장 (98% 토큰 절감) |
152
+ | grep + Read 조합의 패턴/의미 검색 | 대체 권장 (98% 토큰 절감) — 비용 축 한정; 정확 심볼 lookup은 grep 우위 |
151
153
 
152
154
  ## 트러블슈팅
153
155
 
@@ -242,7 +242,7 @@ Claude Code의 Agent Teams 기능이 활성화되어 있으면 (`CLAUDE_CODE_EXP
242
242
  | 서버 | 용도 |
243
243
  |------|------|
244
244
  | code-review-graph | Token-efficient AST 기반 context retrieval (8.2× 토큰 절감) — wrapper: `crg-integration` 스킬 (#1171) |
245
- | semble | Semantic code search via embeddings (98% 토큰 절감, NDCG@10=0.854) — wrapper: `semble-integration` 스킬 (#1173) |
245
+ | semble | Semantic code search via embeddings (98% 토큰 절감, NDCG@10=0.854 — 수치는 벤더 벤치마크; grep 대비 우위는 토큰비용 축, 정확 lookup은 grep 우위 #1349) — wrapper: `semble-integration` 스킬 (#1173) |
246
246
  | aws-mcp | AWS 서비스 인증 접근 — call_aws(15,000+ API 실행), search_documentation/read_documentation(실시간 AWS 문서), run_script(샌드박스). 고특권 실행은 infra-aws-expert 위임 + R010/R001 특권경계 |
247
247
 
248
248
  ### 설치 명령어
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "1.0.17",
3
- "lastUpdated": "2026-05-20T00:00:00.000Z",
2
+ "version": "1.0.19",
3
+ "lastUpdated": "2026-06-26T00:00:00.000Z",
4
4
  "omcustomMinClaudeCode": "2.1.121",
5
5
  "omcustomMinClaudeCodeReason": "Sensitive-path direct Write/Edit on .claude/** under bypassPermissions (R010 deprecation, #1101)",
6
6
  "components": [