Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
# Changelog

## 0.5.0 - Unreleased

Targeted as `0.5.0` because the explicit-use policy is a post-`v0.4.0` routing behavior change.
## 0.5.0 - 2026-07-06

### Changed

Expand All @@ -11,6 +9,7 @@ Targeted as `0.5.0` because the explicit-use policy is a post-`v0.4.0` routing b
- Added `disable-model-invocation: true` to the installable skill metadata for hosts that support manual-only skill invocation.
- Documented the boundary between the static agent skill bundle and Briefprint runtime caches under `--cache-dir`.
- Aligned README cache-dir examples, including benchmark receipts, under `.cache/briefprint`.
- Bumped runtime and skill metadata to `0.5.0`; cache keys include the skill version, so prior `0.4.x` document-summary and rendered-output cache entries cold-start after upgrade.

### Validation

Expand Down
1 change: 1 addition & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,5 @@ recursive-include evals *.json
recursive-include references *.md
recursive-include agents *.yaml
recursive-include docs *.md
prune docs/superpowers/plans
recursive-include skills *.md *.yaml
5 changes: 3 additions & 2 deletions README.ko.md
Original file line number Diff line number Diff line change
Expand Up @@ -143,11 +143,10 @@ python -m document_briefing_cache.cli benchmark \
| 총 요약 호출 | 4 |
| 문서 캐시 히트 | 16 |
| 문서 캐시 미스 | 4 |
| 품질 경고 행 | 0 |

시나리오별 핵심 결과:

| 시나리오 | 요약 호출 | 캐시 인식 입력 토큰 |
| 시나리오 | 요약 호출 | 캐시 미스 입력 토큰 |
|---|---:|---:|
| 문서 3개 최초 브리핑 | 3 | 226 |
| 같은 브리핑 반복 | 0 | 0 |
Expand All @@ -157,6 +156,8 @@ python -m document_briefing_cache.cli benchmark \
| 업데이트 1개 추가 | 1 | 83 |
| 합쳐진 문서 debug 렌더링 | 0 | 0 |

요약 호출과 캐시 미스 입력 토큰이 `0`인 행은 의도된 결과입니다. 반복 브리핑과 재렌더링이 바뀌지 않은 문서를 다시 읽지 않고 캐시된 구조화 상태를 재사용했다는 증거입니다.

숫자는 솔직하게 봐야 합니다. 이 결과는 로컬 harness의 토큰 추정치입니다. 실제 청구 비용을 보려면 provider usage, Codex CLI/OTel, 또는 사용하는 호스트의 telemetry와 함께 비교해야 합니다. 벤치마크의 품질 체크는 actions, decisions, risks, metrics에 대한 가벼운 smoke check이며 의미론적 정확도 점수는 아닙니다.

## 효과가 큰 경우
Expand Down
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -143,11 +143,10 @@ python -m document_briefing_cache.cli benchmark \
| Total summarizer calls | 4 |
| Document cache hits | 16 |
| Document cache misses | 4 |
| Quality warning rows | 0 |

Scenario shape:

| Scenario | Summarizer calls | Cache-aware input tokens |
| Scenario | Summarizer calls | Cache-miss input tokens |
|---|---:|---:|
| Cold brief over 3 documents | 3 | 226 |
| Same brief again | 0 | 0 |
Expand All @@ -157,6 +156,8 @@ Scenario shape:
| Add one update | 1 | 83 |
| Rerender debug over combined set | 0 | 0 |

Rows with `0` summarizer calls and `0` cache-miss input tokens are intentional: they show that rerenders and repeated briefs reuse cached structured state instead of re-reading unchanged documents.

Honest number warning: these are deterministic local estimates from the benchmark harness, not provider billing telemetry. Use OpenAI/provider usage or host telemetry when exact billing matters. The benchmark also includes lightweight quality smoke checks for obvious actions, decisions, risks, and metrics; it is not a semantic accuracy score.

## When It Helps
Expand Down
2 changes: 1 addition & 1 deletion VALIDATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ ruff check .
- `python scripts\validate_skill.py --run-evals`: `OK: briefprint skill repository validated (24 test files, 9 eval cases, 10 trigger cases, 5 model benchmark cases)`
- `ruff check .`: `All checks passed!`

Latest fetched `origin/main` CI status was checked separately: GitHub Actions `CI` run `28759630346` completed successfully for `677057a` on 2026-07-06T00:07:29Z. This confirms the base branch status; the commands above remain the source-tree validation for the current checkout.
Latest fetched `origin/main` CI status was checked separately: GitHub Actions `CI` run `28761659503` completed successfully for `344f05d` on 2026-07-06T01:14:27Z. This confirms the base branch status; the commands above remain the source-tree validation for the current checkout.

`tests/test_distribution_smoke.py` remains opt-in and skips unless `DBC_RUN_INSTALLED_SMOKE=1` is set. CI or release validation should still build wheel and sdist artifacts, install each into a fresh virtual environment, and run the installed smoke test outside the repository root.

Expand Down
2 changes: 1 addition & 1 deletion agents/openai.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version: "0.4.0"
version: "0.5.0"

interface:
display_name: "Briefprint"
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[project]
name = "document-briefing-cache"
version = "0.4.0"
version = "0.5.0"
description = "Reusable document briefing skill with document-level caching and template rendering."
requires-python = ">=3.10"
dependencies = [
Expand Down
2 changes: 1 addition & 1 deletion scripts/validate_skill.py
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ def validate_openai_yaml(path: Path) -> list[str]:
text = path.read_text(encoding="utf-8")
errors = []
required_fragments = [
'version: "0.4.0"',
'version: "0.5.0"',
"interface:",
'display_name: "Briefprint"',
'short_description: "Rerender cached document briefings without re-summarizing unchanged supplied documents."',
Expand Down
2 changes: 1 addition & 1 deletion skills/briefprint/agents/openai.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version: "0.4.0"
version: "0.5.0"

interface:
display_name: "Briefprint"
Expand Down
2 changes: 1 addition & 1 deletion src/document_briefing_cache/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@
"BriefingPipeline",
]

__version__ = "0.4.0"
__version__ = "0.5.0"
2 changes: 1 addition & 1 deletion src/document_briefing_cache/pipeline.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
from .render import TEMPLATE_VERSION, render_briefing
from .summarizers import BaseSummarizer, RuleBasedExtractiveSummarizer

SKILL_VERSION = "0.4.0"
SKILL_VERSION = "0.5.0"


class BriefingPipeline:
Expand Down
10 changes: 5 additions & 5 deletions tests/test_skill_metadata.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,14 @@
)


def test_versions_are_synchronized_to_0_4_0():
def test_versions_are_synchronized_to_0_5_0():
pyproject = (ROOT / "pyproject.toml").read_text(encoding="utf-8")
openai_yaml = (ROOT / "agents" / "openai.yaml").read_text(encoding="utf-8")

assert 'version = "0.4.0"' in pyproject
assert __version__ == "0.4.0"
assert SKILL_VERSION == "0.4.0"
assert 'version: "0.4.0"' in openai_yaml
assert 'version = "0.5.0"' in pyproject
assert __version__ == "0.5.0"
assert SKILL_VERSION == "0.5.0"
assert 'version: "0.5.0"' in openai_yaml


def test_openai_yaml_uses_interface_metadata():
Expand Down
Loading