Repository navigation
Releases
Releases · Sycada/dsh-git-connector
v0.1.6 - fix Gitea Release creation
Fixed
- Gitea/Forgejo:
forge_tag_createreported a Release it never created. The adapter
nested areleaseobject inside thePOST /tagsbody, but Gitea'sCreateTagOptionis
{tag_name, target, message}— the extra key is not part of that schema, so the server
dropped it silently and still answered 201, and the tool then echoedrelease: true
off the request it had sent rather than off anything the server did. Verified against
Gitea 1.27.0 through its own/swagger.v1.json. A Release is now its own
POST /releasescall, and the returned flag reflects what the server actually created.
Added
forge_tag_createreportsreleaseUrl(Gitea/Forgejo), so a caller gets the Release
address rather than having to guess it from the tag name.
Notes
- The regression test was itself the reason this survived: the Gitea mock read
release
off thePOST /tagsbody, mirroring the adapter's assumption instead of the server's
behaviour, so the false positive sailed through a green suite. The mock now models the
real API and the assertion checks the separate call rather than the reported flag.
v0.1.5 — tag support & server-side branch tools
Tag support
git_tag— list, create (annotated or lightweight), push, andremote(read origin's tags over the git transport).git_tag_verify— confirm origin really holds a tag after publishing it, by reading the remote rather than trusting the push's exit code.forge_tag_list/forge_tag_create— create the tag through the forge API, the reliable path when pushing refs/tags fails authentication.
Server-side branch management
forge_branch_create/forge_branch_delete— create or remove a branch without a local work copy.
Changed
- The system-prompt section now states the connector is the default path for every git and forge operation.
- Tag creation is deliberately not gated by the force-push flags — tags are immutable release markers.
Fixed
git_tag'stagsfield now always means tag records; a push reports targets underpushedNames.- Tag names are validated with
git check-ref-formatinstead of a hand-rolled pattern.