@tracescout/browser 2.6.0 → 2.7.1

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
@@ -1,3 +1,36 @@
1
+ # 2.7.1 (2026-08-02)
2
+
3
+ - **Producer attribution (Phase 0A.3 §1):** every log batch now carries
4
+ `producer: "@tracescout/browser/<version>"` in the request **body**, so the
5
+ ingestion API can attribute an operation to an exact producer + version
6
+ instead of an anonymous legacy blob.
7
+
8
+ It travels in the body — **not** as a custom request header — for the same
9
+ reason `batchId` does: the browser SDK posts cross-origin from customer
10
+ sites, and a header outside the API's CORS preflight allow-list fails the
11
+ preflight and silently kills ALL browser log capture. A body field needs no
12
+ preflight and is additive against every deployed API version (an older
13
+ server simply ignores the unknown field — verified).
14
+
15
+ Purely diagnostic: the server never uses it for authorization, quota,
16
+ billing amount, or operation identity. Retries reuse the same `batchId`
17
+ AND the same producer label; a new logical batch still mints a new id.
18
+
19
+ - **One source of truth for the shipped version.** `SDK_VERSION` moved into
20
+ `src/core/producer.js` and is consumed by both `SDKContext.sdkVersion` and
21
+ the producer label, so the two can never disagree. The session-metadata test
22
+ now reads `package.json` instead of hardcoding a version string.
23
+
24
+ - **Build-sync safety.** The postbuild CDN sync no longer creates its
25
+ destination. It previously resolved a cwd-relative `../../TraceScout-CDN`
26
+ and `mkdir -p`'d it, so building from an isolated release worktree silently
27
+ manufactured a bogus directory and reported success. It now uses an explicit
28
+ `TRACESCOUT_CDN_DIR` or an existing sibling checkout, and otherwise skips
29
+ with a reason. Regression guard: `tests/build-sync-safety.test.mjs`.
30
+
31
+ No change to the operation-ID / parked-batch / retry logic, which was
32
+ already correct in 2.7.0.
33
+
1
34
  # 2.6.0 (2026-07-30)
2
35
 
3
36
  - **Source-map build identity (B2):** `TraceScout.init(projectId, { release, dist, debugId })` —