Skip to content

Commit 9a450de

Browse files
feat: create java streams skill
1 parent 4237b8c commit 9a450de

227 files changed

Lines changed: 1672 additions & 5679 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: Bug report
2-
description: Report a reproducible problem in the Java Optional skill, evals, docs, or automation.
2+
description: Report a reproducible problem in the Java Streams skill, evals, docs, or automation.
33
title: "bug: "
44
labels: ["bug"]
55
body:
@@ -8,7 +8,7 @@ body:
88
value: |
99
Thanks for taking the time to report a bug. Don't include Tessl tokens, GitHub tokens, package manager tokens, private repository links, private eval artifacts, private registry/workspace links, local host paths, proprietary Java source, or screenshots/logs containing those values.
1010
11-
For suspected vulnerabilities, don't open a public issue. Use [private vulnerability reporting](https://github.com/martinfrancois/java-optionals-skill/security/advisories/new).
11+
For suspected vulnerabilities, don't open a public issue. Use [private vulnerability reporting](https://github.com/martinfrancois/java-streams-skill/security/advisories/new).
1212
- type: textarea
1313
id: summary
1414
attributes:
@@ -69,7 +69,7 @@ body:
6969
id: java-example
7070
attributes:
7171
label: Minimal Java example
72-
description: If the bug is about Optional guidance, paste the smallest sanitized Java example that shows it.
72+
description: If the bug is about stream guidance, paste the smallest sanitized Java example that shows it.
7373
render: java
7474
- type: textarea
7575
id: logs
@@ -82,7 +82,7 @@ body:
8282
attributes:
8383
label: Tessl plugin version
8484
description: Paste the published plugin version, `tessl` output, or the commit SHA if known.
85-
placeholder: "martinfrancois/java-optionals version or commit SHA: "
85+
placeholder: "martinfrancois/java-streams version or commit SHA: "
8686
- type: input
8787
id: model
8888
attributes:

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
blank_issues_enabled: false
22
contact_links:
33
- name: Security vulnerability
4-
url: https://github.com/martinfrancois/java-optionals-skill/security/advisories/new
4+
url: https://github.com/martinfrancois/java-streams-skill/security/advisories/new
55
about: Report suspected vulnerabilities privately instead of opening a public issue.
66
- name: Question or support discussion
7-
url: https://github.com/martinfrancois/java-optionals-skill/discussions
7+
url: https://github.com/martinfrancois/java-streams-skill/discussions
88
about: Ask for help with installation, expected behavior, or how to use the skill.

.github/ISSUE_TEMPLATE/feature_request.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ body:
1616
label: Area
1717
options:
1818
- Skill behavior
19-
- Optional example or reference material
19+
- Stream example or reference material
2020
- Evals or scoring
2121
- README or docs
2222
- Tessl install or plugin metadata
@@ -35,7 +35,7 @@ body:
3535
id: examples
3636
attributes:
3737
label: Examples
38-
description: Add a small Java Optional example, prompt, eval idea, or link if it helps explain the request.
38+
description: Add a small Java Streams example, prompt, eval idea, or link if it helps explain the request.
3939
render: text
4040
- type: textarea
4141
id: alternatives

.github/pull_request_template.md

Lines changed: 6 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@ Describe the change in 2-5 bullet points.
99

1010
## Change Type
1111

12-
Choose all that apply.
13-
1412
- [ ] Skill behavior
1513
- [ ] Evals or scoring
1614
- [ ] Documentation
@@ -28,57 +26,30 @@ Choose all that apply.
2826
Describe what a user, contributor, or maintainer can observe after this PR. If there is no
2927
user-visible change, write `None`.
3028

31-
## Bug Fix Details
32-
33-
For bug fixes or regressions, explain why the issue happened and what now prevents it from coming
34-
back. For other changes, write `N/A`.
35-
36-
- Root cause:
37-
- Test, eval, or guardrail added:
38-
- If no test or eval was added, why not:
39-
4029
## Validation
4130

42-
List the commands, manual checks, or hosted checks you ran. Include relevant failures that were fixed
43-
during the PR.
44-
4531
Checks most contributors can run:
4632

47-
- [ ] `python3 scripts/validate_skill.py skills/java-optionals`
33+
- [ ] `python3 scripts/validate_skill.py skills/java-streams`
4834
- [ ] `python3 scripts/validate_eval_criteria.py evals evals-reference`
4935
- [ ] `python3 -m py_compile scripts/validate_skill.py scripts/validate_eval_criteria.py`
5036
- [ ] `bash -n scripts/check_publish_dry_run.sh`
5137
- [ ] `tessl plugin lint .`
52-
- [ ] `markdownlint`, if Markdown changed
5338
- [ ] Manual rendered-doc or example review, if docs or examples changed
5439

5540
Tessl-authenticated checks:
5641

5742
- [ ] `bash scripts/check_publish_dry_run.sh .`
5843
- [ ] `tessl plugin publish --dry-run --bump patch .`
59-
- [ ] `tessl skill review --threshold 90 skills/java-optionals/SKILL.md`, if skill text or references changed
60-
- [ ] `tessl eval run --variant with-context --variant without-context .`, if skill behavior,
61-
evals, or benchmark claims changed
62-
63-
`bash scripts/check_publish_dry_run.sh .`, `tessl skill review`, and hosted Tessl evals require
64-
Tessl authentication. Hosted evals also require a linked Tessl project. If you can't run one of
65-
them, leave it unchecked and explain why in the details.
44+
- [ ] `tessl skill review --threshold 100 skills/java-streams/SKILL.md`, if skill text or references changed
45+
- [ ] `tessl eval run --agent claude:claude-sonnet-4-6 --variant without-context --variant with-context .`, if skill behavior, evals, or benchmark claims changed
6646

6747
Details:
6848

6949
```text
7050
7151
```
7252

73-
## Human Verification
74-
75-
Describe what you tried manually and what result you saw. If the change cannot be tried manually,
76-
explain why.
77-
78-
```text
79-
80-
```
81-
8253
## Review Checklist
8354

8455
- [ ] Docs updated, or N/A
@@ -89,36 +60,15 @@ explain why.
8960
- [ ] Explicit invocation prompts are labeled as explicit, or N/A
9061
- [ ] Headline criteria include compile/artifact checks, or N/A
9162
- [ ] Headline criteria include behavior correctness checks, or N/A
92-
- [ ] Runtime references contain no eval answer keys, scenario inventory, hosted run IDs, or fixed
93-
score claims
63+
- [ ] Runtime references contain no eval answer keys, scenario inventory, hosted run IDs, or fixed score claims
9464
- [ ] Java baseline compatibility has been considered, or N/A
95-
- [ ] `OptionalInt`, `OptionalLong`, and `OptionalDouble` guidance has been considered, or N/A
96-
- [ ] Optional-producing stream terminals and collectors are covered, or N/A
97-
- [ ] Java 26 Javadocs were checked for Optional-family coverage, or N/A
98-
- [ ] Valid README package-runner instructions were preserved, or N/A
99-
- [ ] Tessl package commands match the verified plugin package format
65+
- [ ] Stream/collector ordering, null handling, and parallelism have been considered, or N/A
10066
- [ ] Full/reference eval reporting is not hidden or cherry-picked
10167
- [ ] Tessl checks were run, or unavailability is documented
10268
- [ ] PR title or squash title uses Conventional Commits
103-
- [ ] Redaction checked: no Tessl tokens, GitHub tokens, package manager tokens, private repository
104-
links, private eval artifacts, private registry/workspace links, local host paths, or
105-
proprietary Java source
69+
- [ ] Redaction checked: no Tessl tokens, GitHub tokens, package manager tokens, private repository links, private eval artifacts, private registry/workspace links, local host paths, or proprietary Java source
10670

10771
## AI Assistance (if used)
10872

109-
<!--
110-
AI-assisted PRs are welcome. Mark this when an AI tool materially helped write, design, or edit the
111-
change so reviewers know what to look for.
112-
-->
113-
11473
- [ ] AI-assisted PR
11574
- [ ] I confirm I understand and reviewed the change
116-
117-
<details>
118-
<summary>AI prompts / session logs (optional)</summary>
119-
120-
```text
121-
122-
```
123-
124-
</details>

.github/workflows/ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
version: "0.81.2"
3030

3131
- name: Validate skill metadata
32-
run: python3 scripts/validate_skill.py skills/java-optionals
32+
run: python3 scripts/validate_skill.py skills/java-streams
3333

3434
- name: Validate eval criteria
3535
run: python3 scripts/validate_eval_criteria.py evals evals-reference

.github/workflows/publish-tessl.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252

5353
- name: Validate plugin before publish
5454
run: |
55-
python3 scripts/validate_skill.py skills/java-optionals
55+
python3 scripts/validate_skill.py skills/java-streams
5656
python3 scripts/validate_eval_criteria.py evals evals-reference
5757
python3 -m py_compile scripts/validate_skill.py scripts/validate_eval_criteria.py
5858
bash -n scripts/check_publish_dry_run.sh

.github/workflows/release-please.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
5454
pr_json="$(gh pr list \
5555
--state open \
56-
--head release-please--branches--main--components--java-optionals \
56+
--head release-please--branches--main--components--java-streams \
5757
--json title,headRefName \
5858
--jq '.[0] // empty')"
5959
@@ -115,7 +115,7 @@ jobs:
115115
set_status pending "Release PR validation is running"
116116
trap 'code=$?; if [ "$code" -eq 0 ]; then set_status success "Release PR validation passed"; else set_status failure "Release PR validation failed"; fi' EXIT
117117
118-
python3 scripts/validate_skill.py skills/java-optionals
118+
python3 scripts/validate_skill.py skills/java-streams
119119
python3 scripts/validate_eval_criteria.py evals evals-reference
120120
python3 -m py_compile scripts/validate_skill.py scripts/validate_eval_criteria.py
121121
bash -n scripts/check_publish_dry_run.sh

.github/workflows/skill-review.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ on:
1515
- "README.md"
1616
- "CONTRIBUTING.md"
1717
- "docs/agents/**"
18-
- "skills/java-optionals/**"
18+
- "skills/java-streams/**"
1919

2020
concurrency:
2121
group: skill-review-${{ github.workflow }}-${{ github.ref }}
@@ -44,4 +44,4 @@ jobs:
4444

4545
- name: Review skill
4646
if: ${{ env.TESSL_TOKEN != '' }}
47-
run: tessl skill review --threshold 90 skills/java-optionals/SKILL.md
47+
run: tessl skill review --threshold 90 skills/java-streams/SKILL.md

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "1.0.0"
2+
".": "0.1.0"
33
}

.tessl-plugin/plugin.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
{
2-
"name": "martinfrancois/java-optionals",
3-
"version": "1.0.0",
4-
"description": "Help AI coding agents use Java Optional well in new code and cleanups, without replacing one antipattern with another.",
5-
"summary": "Help AI coding agents use Java Optional well in new code and cleanups, without replacing one antipattern with another.",
6-
"repository": "https://github.com/martinfrancois/java-optionals-skill",
7-
"homepage": "https://github.com/martinfrancois/java-optionals-skill#readme",
2+
"name": "martinfrancois/java-streams",
3+
"version": "0.1.0",
4+
"description": "Help AI coding agents write, review, and refactor Java Stream and Collector code without common stream antipatterns.",
5+
"summary": "Help AI coding agents write, review, and refactor Java Stream and Collector code without common stream antipatterns.",
6+
"repository": "https://github.com/martinfrancois/java-streams-skill",
7+
"homepage": "https://github.com/martinfrancois/java-streams-skill#readme",
88
"license": "MIT",
99
"entrypoint": "README.md",
10-
"private": false
10+
"private": true
1111
}

0 commit comments

Comments
 (0)