{"ref":"artifact:miyasuta-cap-java-child","page":"/artifacts/miyasuta-cap-java-child","json":"/artifacts/miyasuta-cap-java-child.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"miyasuta-cap-java-child","name":"cap-java-child","artifact_type":"sample","ecosystem":"cap","flavors":[{"key":"java","source":{"url":"https://github.com/miyasuta/cap-java-child/blob/main/README.md","title":"consumer-a（CAP Java） — cap-java-child README","checked":"2026-10-08","quote":"consumer-a（CAP Java）"}}],"domain":"developer-experience","secondary_domains":["operations-and-runtime"],"origin_ring":"independent","description":{"one_line":"The consumer side of a promotion model for CAP Java: a parent pom pinned to a fixed version, Renovate opening the bump as a pull request, the application's own tests as the gate, and auto-merge only on green.","short":"Consumer side of a CAP Java parent pom promotion model with Renovate","what_it_solves":"A shared library's version bump has to reach every application that depends on it, and this removes the manual check at each one: [cap-java-parent-pom-sample](artifact:miyasuta-cap-java-parent-pom-sample) publishes `central-parent` at a fixed version, Renovate watches that coordinate on GitHub Packages and opens the `<parent>` bump as a pull request, and the application's own `mvn test` decides whether it merges. Three traps are documented: the required status check is the job name `test`, not the step or the workflow name, and it only reaches the branch-protection picker once the workflow has run; Renovate does not read `settings.xml`, so `renovate.json` names the GitHub Packages registry and its token itself; and one `read:packages` token is registered twice, as a Mend secret for Renovate and an Actions secret for the build. When the library changes its contract the guide puts the test fix on the Renovate branch, because the parent bump alone is red and the test fix alone is red and only the two together merge. The pull-request gate is GitHub Actions and the deployment pipeline is SAP CI/CD on a webhook from main, kept apart on purpose. Written in Japanese."},"links":{"repo":"https://github.com/miyasuta/cap-java-child","docs":"https://github.com/miyasuta/cap-java-child/blob/main/docs/guide/GUIDE-promotion-model.md"},"compat":{"runtimes":["java"]},"demonstrates":["capability:ci-cd"],"maintainers":["actor:mio-yasutake"],"provenance":{"discovered_via":[{"source":"source:github","channel":"miyasuta"}],"first_seen":"2026-10-08"},"use_as":"starting-point","contributors":["actor:mio-yasutake"],"drafted_with_ai":true},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"fair","evidence":"2 contributors"},{"label":"Repository","tier":"good","evidence":"pushed 2026-10, not archived"}],"compatibility":[{"label":"Declared for","tier":"fair","evidence":"nothing declared"},{"label":"Survived majors","tier":"unknown","evidence":"no release dates"},{"label":"Maintainer's CI","tier":"fair","evidence":"workflows present, no completed run on the default branch"}],"practice":[{"label":"Tests","tier":"good","evidence":"1 test file"},{"label":"Docs","tier":"good","evidence":"docs/ with 6 pages, docs site, README 4 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":0,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","npm":"not published under this name","stars":0,"forks":0,"open_issues":7,"archived":false,"pushed_at":"2026-10-22","license_spdx":null,"org_owned":false,"default_branch":"main","created_at":"2026-06-17T21:06:26Z","open_prs":6,"tree_truncated":false,"test_files":1,"workflows":1,"other_ci":false,"readme_bytes":3916,"docs_files":6,"changelog":false,"license_file":false,"dts_files":0,"first_commit":"2026-06-17","last_commit":"2026-06-21","commits":32,"contributors":2,"readme_path":"README.md","readme_sha":"5f4b29610d69057371196c7c563446d10ac66b76","repo_read":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:mio-yasutake","name":"Mio Yasutake","json":"/actors/mio-yasutake.json"}],"contributors":[{"ref":"actor:mio-yasutake","name":"Mio Yasutake","json":"/actors/mio-yasutake.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}