{"ref":"artifact:miyasuta-cap-java-draft-composition-delete","page":"/artifacts/miyasuta-cap-java-draft-composition-delete","json":"/artifacts/miyasuta-cap-java-draft-composition-delete.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"miyasuta-cap-java-draft-composition-delete","name":"cap-java-draft-composition-delete","artifact_type":"sample","ecosystem":"cap","domain":"ui-and-frontend-bridge","origin_ring":"independent","description":{"one_line":"Draft cancel on composition items turned into a flag update instead of a cascading physical delete, with the handler reading the incoming CQN so both delete paths behave the same.","short":"CAP Java draft cancel on composition items as a flag update","what_it_solves":"The tests cover deleting an item by its own entity path and deleting it through the header-to-items navigation a Fiori list report produces — the two shapes that make a naive handler work in one case and not the other."},"links":{"repo":"https://github.com/miyasuta/cap-java-draft-composition-delete"},"compat":{"runtimes":["java"]},"type_properties":{"form":{"value":"snippets","sources":[{"url":"https://github.com/miyasuta/cap-java-draft-composition-delete","title":"cap-java-draft-composition-delete — README","checked":"2026-10-18","quote":"This project demonstrates how to implement logical deletes for composition items in a CAP Java service."}]}},"demonstrates":["capability:draft-handling"],"maintainers":["actor:mio-yasutake"],"provenance":{"discovered_via":[{"source":"source:github","channel":"miyasuta"}],"first_seen":"2026-09-07"},"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":"one contributor, personally owned"},{"label":"Repository","tier":"fair","evidence":"pushed 2025-12, 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":"no CI configured"}],"practice":[{"label":"Tests","tier":"good","evidence":"12 test files"},{"label":"Docs","tier":"poor","evidence":"README 1 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-26","npm":"not published under this name","stars":0,"forks":0,"open_issues":0,"archived":false,"pushed_at":"2025-12-26","license_spdx":null,"org_owned":false,"default_branch":"main","contributors":1,"tree_truncated":false,"test_files":12,"workflows":0,"other_ci":false,"readme_bytes":876,"docs_files":0,"changelog":false,"license_file":false,"dts_files":0,"readme_path":"README.md","readme_sha":"a00a9faea0757bdd828f923621da90b01c722bce","created_at":"2025-11-26T05:21:18Z","open_prs":0,"first_commit":"2025-11-26","last_commit":"2025-12-26","commits":9,"repo_read":"2026-10-26"},"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":[]}}