Skip to content

Commit d97576b

Browse files
docs: add git tag immutability rule and fix stale C++ deps
- NEVER delete an existing tag that has already been pushed/deployed - Fix C++ dependency description (jsoncpp from submodule, no libcurl) 🤖 Generated with Mister Maluco Co-Authored-By: MisterMal <teskeslab@lucasteske.dev>
1 parent a86b4b1 commit d97576b

1 file changed

Lines changed: 7 additions & 1 deletion

File tree

AGENTS.md

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,19 @@ npm version patch|minor|major # bumps version + creates git tag
5858
git push --follow-tags # triggers publish workflow
5959
```
6060

61+
**IMPORTANT: Never delete an existing git tag that has already been pushed/deployed.**
62+
Deleting and re-creating a tag that triggered a publish workflow corrupts the release history
63+
and may break downstream consumers relying on the immutable tag reference.
64+
If `npm version` already created the tag, push it as-is. If the tag already exists from
65+
a prior deploy, bump to the next version instead of reusing it.
66+
6167
## Architecture notes
6268

6369
- `JPAK` global namespace split into `JPAK.Constants`, `JPAK.Generics`, `JPAK.Loader`, `JPAK.Classes`, `JPAK.Tools`
6470
- File loading uses `Range` HTTP headers for partial reads (browser XHR) or `fs.read` with offset (Node)
6571
- GZIP decompression code forked from JSXGraph, in `jssrc/zip.js`
6672
- Verbosity controlled via `JPAK.Constants.verbosity` (0 error, 3 debug)
67-
- C++ build: `make` in `cpp/` produces `libjpak.so` (requires `libcurl`, `libjsoncpp`)
73+
- C++ build: `make` in `cpp/` produces `libjpak.so` (jsoncpp compiled from submodule, no system deps)
6874

6975
## Testing
7076

0 commit comments

Comments
 (0)