@softspark/jira-mcp 1.4.2 → 1.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,15 @@ Versioning follows [Semantic Versioning](https://semver.org/).
7
7
 
8
8
  ---
9
9
 
10
+ ## v1.4.3 -- JQL Escape & Cache Recovery (2026-04-18)
11
+
12
+ ### Fixed
13
+ - **`sync_tasks` default JQL parse error** -- `escapeJql` was over-escaping JQL operators (`-`, `+`, `&`, `|`, etc.) inside double-quoted string literals. Jira rejected the resulting query with `'\-' jest niedozwoloną sekwencją modyfikacji JQL`. The escape now only handles `\` and `"` (the only sequences valid inside a quoted JQL string), so `sync_tasks` works without an explicit `jql` argument when the username contains a hyphen.
14
+ - **`reassign_task` / `update_task_status` cache miss after Jira mutation** -- both operations now recover from a cache miss by fetching the task from Jira via `connector.getIssue` and upserting it into the local cache. Previously, calling either tool right after `create_task` (cache not populated) or `log_task_time` (cache invalidated) failed with `TASK_NOT_FOUND` even though the Jira mutation succeeded.
15
+
16
+ ### Added
17
+ - **`CacheManager.upsertTask(task)`** -- inserts a task or replaces it by key, tolerating a missing cache file. Used by the new mutation-recovery path.
18
+
10
19
  ## v1.4.2 -- Supply-Chain Hardening (2026-04-18)
11
20
 
12
21
  ### Added
package/README.md CHANGED
@@ -4,17 +4,16 @@
4
4
 
5
5
  [![CI](https://github.com/softspark/jira-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/softspark/jira-mcp/actions/workflows/ci.yml)
6
6
  [![npm](https://img.shields.io/npm/v/@softspark/jira-mcp)](https://www.npmjs.com/package/@softspark/jira-mcp)
7
- [![version](https://img.shields.io/badge/version-1.4.2-blue)](CHANGELOG.md)
7
+ [![version](https://img.shields.io/badge/version-1.4.3-blue)](CHANGELOG.md)
8
8
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
9
9
 
10
10
  ---
11
11
 
12
- ## What's New in v1.4.2
12
+ ## What's New in v1.4.3
13
13
 
14
- - **npm provenance attestation** -- releases now ship with SLSA v1 attestation via `npm publish --provenance`. Verify with `npm audit signatures` or the Provenance badge on npmjs.com.
15
- - **Release SOP hardening** -- supply-chain gates (`--provenance`, `id-token: write`) and a lockfile sync step are now part of the pre-tag checklist.
16
- - **Post-release verification** -- new phase asserts the SLSA provenance predicate and runs `npm audit signatures` before the release is considered shipped.
17
- - **Pre-commit version sync** -- new step catches `package.json` ↔ `package-lock.json` version drift before commit.
14
+ - **`sync_tasks` no longer breaks on hyphenated usernames** -- JQL escape was producing invalid `\-` sequences inside quoted strings. Default sync (without explicit `jql`) now works for every account.
15
+ - **`update_task_status` and `reassign_task` recover from cache miss** -- after a successful Jira mutation, the cache is refreshed from the source of truth instead of failing with `TASK_NOT_FOUND`. Solves the "must re-sync after `create_task` or `log_task_time`" footgun.
16
+ - **Provenance attestation** -- releases ship with SLSA v1 attestation via `npm publish --provenance` (introduced in v1.4.2).
18
17
 
19
18
  See [CHANGELOG.md](CHANGELOG.md) for full details.
20
19
 
@@ -257,7 +256,7 @@ src/
257
256
 
258
257
  **Typed error hierarchy** -- 20 error classes with machine-readable codes. Every tool returns structured `{ success, error, code }` responses. No stack traces leak to MCP clients.
259
258
 
260
- **Strict TypeScript** -- `strict: true`, no `any`, `readonly` interfaces, Zod validation at all boundaries, 558 tests across 58 test files. Self-contained 520KB package.
259
+ **Strict TypeScript** -- `strict: true`, no `any`, `readonly` interfaces, Zod validation at all boundaries, 573 tests across 59 test files. Self-contained 525KB package.
261
260
 
262
261
  ## Documentation
263
262