Skip to content

Add changelog evals#73

Merged
theletterf merged 3 commits into
serverless-changelog-joinfrom
changelog-evals
May 21, 2026
Merged

Add changelog evals#73
theletterf merged 3 commits into
serverless-changelog-joinfrom
changelog-evals

Conversation

@lcawl

@lcawl lcawl commented May 14, 2026

Copy link
Copy Markdown
Contributor

This PR builds on #70 and addresses CI advice to add evals.json for the "review-changelog" and "fix-changelog" skills.

@lcawl lcawl marked this pull request as ready for review May 14, 2026 23:34
@github-actions

Copy link
Copy Markdown
Contributor

Skill Eval Results

docs-fix-changelog

Eval Prompt Pass Rate Details
1 Review perfect-changelog.yaml — feature addition for Kibana with clear title and descri... 4/4 (100%) All passed
2 Fix changelog with multiple schema errors: missing type field, invalid product ID 'inval... 5/5 (100%) All passed
3 Breaking-change changelog is missing required impact and action fields. Type: breaking-c... 5/5 (100%) All passed
4 Fix type-title alignment: Type is 'bug-fix' but title says 'Improve query performance i... 5/5 (100%) All passed
5 Rewrite overly technical title: 'Fix splitValue nullability coercion when constructing C... 5/5 (100%) All passed
6 Fix quality issues: Title 'feat: Bug fixes', Description 'See PR for details', Type: fe... 6/6 (100%) All passed
7 Fix YAML formatting — unquoted title with colons, plain-text code identifiers like valid... 5/5 (100%) All passed
8 Review changelog with invalid area 'Dashboards' (repo-aware validation)... 0/4 (0%) ❌ All failed — docs/changelog.yml not present in this workspace; skill correctly falls back to generic validation but eval expectations require repo-config to be loaded successfully
9 Process directory ./mixed-changelogs/ with mixed quality files from different products... 5/6 (83%) ❌ Expectation "Handles different product types (cloud-serverless, elasticsearch, docs-builder)" — no docs-builder product in sample files (only cloud-serverless, elasticsearch, logstash)
10 Create new changelog for custom authentication providers in Elasticsearch Serverless... 6/6 (100%) All passed

Overall: 46/51 expectations passed (90%)

The skill instructions are well-structured and comprehensive. Two areas to note:

  • Eval 8 fails because the test workspace (elastic-docs-skills) has no docs/changelog.yml — this is a test environment limitation, not a skill defect. The skill correctly handles the fallback case.
  • Eval 9 mentions docs-builder as one of the product types in the prompt, but none of the mixed-changelogs/ sample files use that product. The eval description and sample fixtures are out of sync.

docs-review-changelog

Eval Prompt Pass Rate Details
1 Review perfect changelog file with proper title, valid type, correct product, areas, des... 5/5 (100%) All passed
2 Review changelog with multiple schema errors: missing type, unknown product, invalid type... 6/6 (100%) All passed
3 Review breaking-change changelog missing required impact and action fields... 5/5 (100%) All passed
4 Review type-title alignment: Type 'bug-fix' but title 'Improve dashboard loading perform... 5/5 (100%) All passed
5 Review overly technical title: 'Fix splitValue nullability coercion when constructing Co... 5/5 (100%) All passed
6 Review content quality issues: Title 'feat: Bug fixes', Description 'See PR', areas as ... 5/5 (100%) All passed
7 Review YAML formatting: unquoted description with colons, brackets, plain-text code iden... 5/5 (100%) All passed
8 Review changelog with invalid area 'Dashboards' (repository-aware validation)... 2/5 (40%) ❌ "Validates areas against repository-specific configuration" — no docs/changelog.yml in workspace ❌ "References successful repository config loading" — can't load what doesn't exist ✅ "Flags area mismatch in Quality warnings" (generic fallback) ✅ "Distinguishes repository-aware vs generic validation" (skill notes fallback explicitly)
9 Review directory ./mixed-changelogs/ containing files with various issues... 6/6 (100%) All passed — skill correctly processes 3 files, provides individual sections, recommends docs-fix-changelog for files with warnings

Overall: 43/47 expectations passed (91%)

Skill instructions are thorough and well-specified. The single recurring gap is eval 8 in both skills, where the repo-aware area validation test assumes docs/changelog.yml exists in the workspace — it does not in elastic-docs-skills. This is a test fixture gap, not a skill logic gap: the skill's fallback behavior is correctly specified and would work correctly in a product repository that has a docs/changelog.yml.

Recommended follow-up: Either add a minimal docs/changelog.yml fixture to the test-samples directory for eval 8, or update the eval expectations to reflect the fallback path that occurs without repo config. Also, update the mixed-changelogs eval prompt (eval 9 in docs-fix-changelog) to remove the reference to docs-builder as a product type since no sample file uses it.

Generated by Skill Eval Testing for issue #73 · ● 570.3K ·

…icts

Both branches added different id=1 evals and supplementary test cases.
Combined all unique evals from each branch with sequential IDs:
- fix-changelog: 17 evals (was 10 HEAD + 7 serverless)
- review-changelog: 15 evals (was 9 HEAD + 6 serverless)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The frontmatter block was never closed, causing the CI validator to
report "missing YAML frontmatter" for this skill.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

Skill Eval Results

⟳ Updated run — supersedes previous results (evals expanded in this PR).

docs-fix-changelog

Eval Prompt Pass Rate Details
1 (new) Review this changelog file for improvements: ./perfect-changelog.yaml. It's a feature addi... 4/4 (100%) All passed
2 Fix this changelog title that has UI formatting issues: 'Update Service Inventory page for b... 4/4 (100%) All passed
3 Fix this changelog where accuracy conflicts with style: Title 'Improve dashboard performance'... 4/4 (100%) All passed
4 Fix changelog with uncertain formatting: 'Enable Advanced Settings in Kibana for index.refre... 4/4 (100%) All passed
5 Fix this changelog with multiple schema errors: missing type field, invalid product ID 'inval... 5/5 (100%) All passed
6 This breaking-change changelog is missing required impact and action fields... 5/5 (100%) All passed
7 Fix type-title alignment: Type is 'bug-fix' but title says 'Improve query performance in Ela... 5/5 (100%) All passed
8 Rewrite this overly technical title for user impact: 'Fix splitValue nullability coercion wh... 5/5 (100%) All passed
9 Fix quality issues in this changelog: Title 'feat: Bug fixes', Description 'See PR for detai... 6/6 (100%) All passed
10 Fix YAML formatting in changelog with unquoted title containing special characters... 5/5 (100%) All passed
11 Review changelog with invalid area 'Dashboards' (note: this area doesn't exist in the curren... ⏭ skipped Requires docs/changelog.yml in workspace — not present in elastic-docs-skills repo
12 Process this directory of changelog files: ./mixed-changelogs/ containing mixed quality files... 5/6 (83%) ❌ "Handles different product types (cloud-serverless, elasticsearch, docs-builder)" — actual sample fixtures contain logstash, not docs-builder; eval prompt and fixtures are out of sync
13 Create new changelog for: 'Added support for custom authentication providers in Elasticsearc... 6/6 (100%) All passed
14 (new) Fix changelog title with ambiguous acronym: 'fix: KI details flyout pushes page content in d... 6/6 (100%) All passed
15 (new) Fix changelog with feature prefix: 'File upload: Fixes disabling data view creation based on... 5/5 (100%) All passed
16 (new) Fix changelog with technical colon usage: 'Fix bug with Auth header needing "Authorization: B... 4/4 (100%) All passed
17 (new) Fix changelog with ambiguous prefix: 'Security: Enable new authentication method'... 5/5 (100%) All passed

Overall: 78/79 expectations passed (99%) — 1 skipped, 1 fixture mismatch

Skill instructions are thorough and the new feature-prefix evals (15–17) are well-supported by the explicit pattern in Step 4 item 1. The lone failure (eval 12) is a fixture mismatch — the prompt names docs-builder as a product type but the sample files use logstash.


docs-review-changelog

Eval Prompt Pass Rate Details
1 Review this perfect changelog file: ./perfect-changelog.yaml with proper title, valid type... 5/5 (100%) All passed
2 Review this changelog with UI formatting issues: title: 'Update Service Inventory to improve... 4/4 (100%) All passed
3 Review changelog with Elastic context issues: title: 'Add support for ESQL queries in Observ... 4/4 (100%) All passed
4 Review changelog when canonical guidance fails to load: title: 'Fix dashboard loading'... 4/4 (100%) All passed
5 Review changelog with multiple schema errors: missing type field, unknown product 'invalid-pr... 6/6 (100%) All passed
6 Review breaking-change changelog missing required impact and action fields... 5/5 (100%) All passed
7 Review changelog with type-title alignment issues: Type 'bug-fix' but title 'Improve dashboa... 5/5 (100%) All passed
8 Review changelog with overly technical title: 'Fix splitValue nullability coercion when const... 5/5 (100%) All passed
9 Review changelog with content quality issues: Title 'feat: Bug fixes', Description 'See PR'... 5/5 (100%) All passed
10 Review changelog with YAML formatting issues: unquoted description containing colons, bracket... 5/5 (100%) All passed
11 Review changelog with invalid area 'Dashboards' when repository config shows valid areas are... ⏭ skipped Requires docs/changelog.yml in workspace — not present in elastic-docs-skills repo
12 Review directory ./mixed-changelogs/ containing files with various issues... 6/6 (100%) All passed
13 (new) Review changelog with feature prefix pattern: title: 'File upload: Fixes disabling data view... 4/4 (100%) All passed
14 (new) Review changelog with technical colon usage: title: 'Fix bug with Auth header needing "Autho... 4/4 (100%) All passed
15 (new) Review changelog with multiple title issues including feature prefix: title: 'Dashboard: fixe... 4/4 (100%) All passed

Overall: 71/71 expectations passed (100%) — 1 skipped

Skill instructions cleanly cover all new feature-prefix eval cases (evals 13–15). The pattern distinction between true feature prefixes ("File upload:", "Dashboard:") and technical/API colons ("Authorization: Bearer") is explicitly modelled in Step 4.


Summary

Both skills pass at ≥99% when excluding the skipped area-validation eval (eval 11 in each skill). The skipped eval is a test environment limitation — the skill correctly specifies fallback behaviour when docs/changelog.yml is absent, but the eval expectations are written for the success path.

Recommended follow-ups:

  1. Eval 11 (both skills): Add a minimal docs/changelog.yml fixture to test-samples/ so area validation can be tested end-to-end, or add a separate eval that explicitly tests the fallback path.
  2. Fix-changelog eval 12: Update the prompt to say logstash (not docs-builder) as the third product type, to match the actual mixed-changelogs/ fixtures.

Generated by Skill Eval Testing for issue #73 · ● 776.6K ·

@theletterf theletterf merged commit 3f5a451 into serverless-changelog-join May 21, 2026
18 of 20 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants