feat: v0.0.5 — asset store identity correction (RAG → assets)#38
Merged
Conversation
Single consolidated release. Originally drafted as 0.0.5 (rename) +
0.0.6 (pipeline closure); both ship together as 0.0.5 because each
is the other's prerequisite.
──────────────────────────────────────────────────────────────────────
Asset Store identity correction
──────────────────────────────────────────────────────────────────────
Audit: 8 scripts, all Korean UI strings, and the schema framing used
"asset/자산", but the file/field names were "RAG". Only
query-assets.sh --format inject is strict RAG; the rest is asset CRUD
+ lifecycle.
Renamed:
- .harnish/harnish-rag.jsonl → .harnish/harnish-assets.jsonl
(init-assets.sh auto-migrates idempotently — no data loss)
- harnish-rag-archive.jsonl → harnish-assets-archive.jsonl
- schema.json: rag_record → asset_record, rag_file → asset_file
- 14 scripts: RAG_FILE / RAG → ASSET_FILE / ASSETS
Added:
- 2 migration regression tests (legacy file rename + idempotency)
- README "Memory Model" section (two-tier: Asset Store + Skills)
- Honest skillify framing (draft generator, not autonomous)
- common.sh: resolve_asset_file() + resolve_legacy_asset_file();
resolve_rag_file() kept as deprecated alias
──────────────────────────────────────────────────────────────────────
Production pipeline closure (Trigger → Record → Skillify)
──────────────────────────────────────────────────────────────────────
Three production gaps found via ralphi live audit. All closed end-to-end.
CRITICAL — pending → assets persistence:
- Pre-fix: Stop hook deleted pending file without persisting failures
("failures become guardrails" was broken at the first hop).
- Post-fix: scripts/promote-pending.sh dedup's by
(tool, first_error_line) and auto-records as failure assets with
tags [auto, tool:<name>, session:<short>] + occurrences metadata.
- detect-asset.sh Stop event now invokes promote-pending automatically.
HIGH — skillify production-grade scaffold:
- description includes Triggers: line auto-extracted from asset
titles (5 candidates, frequency-ranked).
- Body sectioned by asset type (Failures / Patterns / Guardrails /
Decisions / Snippets) with metadata
(level / confidence / stability / resolved).
- references/source-assets.jsonl preserves original assets.
MEDIUM — query --format inject RCA enrichment:
- guardrail/level, decision/confidence, pattern/sN inline header.
- context: line per asset; failure shows resolved: status.
──────────────────────────────────────────────────────────────────────
README cleanup — "ralph loop" honesty
──────────────────────────────────────────────────────────────────────
Quickstart/Usage used to break the loop into [READ]/[ACT]/[LOG]/[PROGRESS],
which read like a "RALP" acronym. It isn't — ralphi and the ralph loop
are both named after Ralph Wiggum (keep trying, don't give up). The
acronym-shape has been removed; explicit Naming-section reference added.
──────────────────────────────────────────────────────────────────────
Tests: 80/80 bats + 60/60 scripts/test-all.sh.
- tests/e2e_pipeline.bats +4 (trigger→record, dedup, skillify quality,
inject enrichment)
- tests/scripts_advanced.bats +2 (rename migration + idempotency)
CI: matrix reduced to macos-latest only.
Compatibility:
- Drop-in upgrade. Auto-migration runs on first init-assets.sh.
- CLI unchanged. resolve_rag_file() kept as deprecated alias.
b2e68e5 to
d048ad2
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
v0.0.5 — Asset Store identity + production pipeline closure
한눈에
harnish-rag.jsonl("RAG"라 호칭)harnish-assets.jsonl(Asset Store). 자동 이전, 데이터 손실 0/tmp적재 →Stop시 그냥 삭제 (CRITICAL)Stop이 dedup → 자산으로 영속화references/source-assets.jsonlRead→Act→Log→Progress(RALP 약자처럼 보임)리뷰 포커스
① CRITICAL — 데이터 손실 (failures-become-guardrails 가 깨져있었음)
Stop이벤트가/tmp/harnish-pending-*.jsonl을 자산으로 옮기지 않고 그냥 삭제. README 핵심 약속이 첫 hop부터 끊김.scripts/promote-pending.sh—(tool, 첫 의미 라인 50자)키로 dedup →record-asset.sh등록.detect-asset.shStop 분기에서 자동 호출.scripts/promote-pending.sh:55-77·scripts/detect-asset.sh:60-75② skillify production-grade
references/source-assets.jsonl.scripts/skillify.sh:60-86(trigger 추출),:115-140(섹션 emit)③ inject 컨텍스트 풍부화
query-assets.sh --format inject가 type/title/body만 — guardrail의 level, decision의 confidence 등 RCA 핵심 필드 누락.[guardrail/soft],[decision/medium]), 자산별context:라인, failure는resolved:표시.scripts/query-assets.sh:113-126④ 이름 정합성 (BREAKING but auto-migrated)
query-assets.sh --format inject한 경로뿐.init-assets.sh가 첫 실행 때 idempotent atomicmv.resolve_rag_file()은 deprecated alias로 유지.scripts/init-assets.sh·scripts/common.sh:48-61·skills/impl/references/schema.json테스트 / 변경 규모
bats tests/— 80 / 80 PASSscripts/test-all.sh— 60 / 60 PASSStop→ 자산 1건 +occurrences: 5✓호환성
git pull후 첫 hook 트리거 또는bash scripts/init-assets.sh로 자동 이전.macos-latest단일로 축소 (ubuntu 제외).후속 (별개 PR)
resolve_rag_file()deprecated alias 제거 → 다음 메이저