@code-yeongyu/senpi-telemetry 2026.8.13
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/README.md +464 -0
- package/dist/index.d.ts +194 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -0
- package/dist/memory.d.ts +26 -0
- package/dist/memory.d.ts.map +1 -0
- package/dist/memory.js +156 -0
- package/dist/memory.js.map +1 -0
- package/dist/noop.d.ts +4 -0
- package/dist/noop.d.ts.map +1 -0
- package/dist/noop.js +18 -0
- package/dist/noop.js.map +1 -0
- package/dist/testing/conformance.d.ts +4 -0
- package/dist/testing/conformance.d.ts.map +1 -0
- package/dist/testing/conformance.js +294 -0
- package/dist/testing/conformance.js.map +1 -0
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +2 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/types.d.ts +16 -0
- package/dist/testing/types.d.ts.map +1 -0
- package/dist/testing/types.js +2 -0
- package/dist/testing/types.js.map +1 -0
- package/package.json +47 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conformance.js","sourceRoot":"","sources":["../../src/testing/conformance.ts"],"names":[],"mappings":"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","sourcesContent":["import { deepStrictEqual, doesNotThrow, fail, ok, strictEqual } from \"node:assert/strict\";\nimport type { SpanAttributes, SpanOptions, SpanStatus, TelemetrySpan } from \"../index.ts\";\nimport type { RecordedTelemetrySpan } from \"../memory.ts\";\nimport type {\n\tTelemetryAdapterConformanceCase,\n\tTelemetryAdapterFixture,\n\tTelemetryAdapterFixtureFactory,\n} from \"./types.ts\";\n\ntype ConformanceTest = (fixture: TelemetryAdapterFixture) => Promise<void>;\n\nfunction createCase(\n\tfactory: TelemetryAdapterFixtureFactory,\n\tgroup: string,\n\tname: string,\n\ttest: ConformanceTest,\n): TelemetryAdapterConformanceCase {\n\treturn {\n\t\tgroup,\n\t\tname,\n\t\tasync run() {\n\t\t\tawait using fixture = await factory();\n\t\t\tawait test(fixture);\n\t\t},\n\t};\n}\n\nfunction findSpan(spans: readonly RecordedTelemetrySpan[], name: string): RecordedTelemetrySpan {\n\tconst span = spans.find((candidate) => candidate.name === name);\n\tok(span, `Expected recorded span ${name}`);\n\treturn span;\n}\n\nasync function rejectsWithSameValue(operation: Promise<unknown>, expected: unknown): Promise<void> {\n\ttry {\n\t\tawait operation;\n\t\tfail(\"Expected operation to reject\");\n\t} catch (error) {\n\t\tstrictEqual(error, expected);\n\t}\n}\n\nfunction unreadable<T extends object>(value: T): T {\n\treturn new Proxy(value, {\n\t\tget: () => {\n\t\t\tthrow new Error(\"read\");\n\t\t},\n\t\tgetOwnPropertyDescriptor: () => {\n\t\t\tthrow new Error(\"inspect\");\n\t\t},\n\t\tgetPrototypeOf: () => {\n\t\t\tthrow new Error(\"prototype\");\n\t\t},\n\t\townKeys: () => {\n\t\t\tthrow new Error(\"enumerate\");\n\t\t},\n\t});\n}\n\n/** Creates runner-independent cases for the callback telemetry adapter contract. */\nexport function createTelemetryAdapterConformance(\n\tfactory: TelemetryAdapterFixtureFactory,\n): readonly TelemetryAdapterConformanceCase[] {\n\treturn [\n\t\tcreateCase(\n\t\t\tfactory,\n\t\t\t\"callback lifecycle\",\n\t\t\t\"admits once synchronously and preserves the result\",\n\t\t\tasync (fixture) => {\n\t\t\t\tlet admitted = false;\n\t\t\t\tlet calls = 0;\n\t\t\t\tconst expected = { value: 42 };\n\t\t\t\tconst result = fixture.context.startSpan({ name: \"success\" }, () => {\n\t\t\t\t\tadmitted = true;\n\t\t\t\t\tcalls++;\n\t\t\t\t\treturn expected;\n\t\t\t\t});\n\n\t\t\t\tstrictEqual(admitted, true);\n\t\t\t\tstrictEqual(calls, 1);\n\t\t\t\tstrictEqual(await result, expected);\n\t\t\t\tdeepStrictEqual(findSpan(await fixture.getSpans(), \"success\").status, { status: \"ok\" });\n\t\t\t\tstrictEqual(findSpan(await fixture.getSpans(), \"success\").settled, true);\n\t\t\t},\n\t\t),\n\n\t\tcreateCase(\n\t\t\tfactory,\n\t\t\t\"callback lifecycle\",\n\t\t\t\"preserves synchronous and asynchronous rejection values\",\n\t\t\tasync (fixture) => {\n\t\t\t\tconst syncError = new Error(\"sync\");\n\t\t\t\tawait rejectsWithSameValue(\n\t\t\t\t\tfixture.context.startSpan({ name: \"sync-error\" }, () => {\n\t\t\t\t\t\tthrow syncError;\n\t\t\t\t\t}),\n\t\t\t\t\tsyncError,\n\t\t\t\t);\n\n\t\t\t\tconst asyncError = { kind: \"async\" };\n\t\t\t\tawait rejectsWithSameValue(\n\t\t\t\t\tfixture.context.startSpan({ name: \"async-error\" }, async () => {\n\t\t\t\t\t\tthrow asyncError;\n\t\t\t\t\t}),\n\t\t\t\t\tasyncError,\n\t\t\t\t);\n\n\t\t\t\tawait rejectsWithSameValue(\n\t\t\t\t\tfixture.context.startSpan({ name: \"undefined-error\" }, () => Promise.reject(undefined)),\n\t\t\t\t\tundefined,\n\t\t\t\t);\n\n\t\t\t\tconst unreadableError = unreadable({ kind: \"unreadable\" });\n\t\t\t\tawait rejectsWithSameValue(\n\t\t\t\t\tfixture.context.startSpan({ name: \"unreadable-error\" }, () => {\n\t\t\t\t\t\tthrow unreadableError;\n\t\t\t\t\t}),\n\t\t\t\t\tunreadableError,\n\t\t\t\t);\n\n\t\t\t\tconst asyncUnreadableError = unreadable({ kind: \"async-unreadable\" });\n\t\t\t\tawait rejectsWithSameValue(\n\t\t\t\t\tfixture.context.startSpan({ name: \"async-unreadable-error\" }, () =>\n\t\t\t\t\t\tPromise.reject(asyncUnreadableError),\n\t\t\t\t\t),\n\t\t\t\t\tasyncUnreadableError,\n\t\t\t\t);\n\n\t\t\t\tconst spans = await fixture.getSpans();\n\t\t\t\tfor (const name of [\n\t\t\t\t\t\"sync-error\",\n\t\t\t\t\t\"async-error\",\n\t\t\t\t\t\"undefined-error\",\n\t\t\t\t\t\"unreadable-error\",\n\t\t\t\t\t\"async-unreadable-error\",\n\t\t\t\t]) {\n\t\t\t\t\tstrictEqual(findSpan(spans, name).status.status, \"error\");\n\t\t\t\t}\n\t\t\t},\n\t\t),\n\n\t\tcreateCase(factory, \"status\", \"uses last explicit status without automatic overwrite\", async (fixture) => {\n\t\t\tawait fixture.context.startSpan({ name: \"last-status\" }, (span) => {\n\t\t\t\tspan.setStatus({ status: \"error\", error: { name: \"Expected\", message: \"first\" } });\n\t\t\t\tspan.setStatus({ status: \"ok\" });\n\t\t\t});\n\n\t\t\tconst thrown = new Error(\"after explicit status\");\n\t\t\tawait rejectsWithSameValue(\n\t\t\t\tfixture.context.startSpan({ name: \"explicit-before-throw\" }, (span) => {\n\t\t\t\t\tspan.setStatus({ status: \"ok\" });\n\t\t\t\t\tthrow thrown;\n\t\t\t\t}),\n\t\t\t\tthrown,\n\t\t\t);\n\n\t\t\tconst rejected = new Error(\"after async explicit status\");\n\t\t\tawait rejectsWithSameValue(\n\t\t\t\tfixture.context.startSpan({ name: \"explicit-before-rejection\" }, (span) => {\n\t\t\t\t\tspan.setStatus({ status: \"error\", error: { name: \"Expected\", message: \"async failure\" } });\n\t\t\t\t\treturn Promise.reject(rejected);\n\t\t\t\t}),\n\t\t\t\trejected,\n\t\t\t);\n\n\t\t\tawait fixture.context.startSpan({ name: \"expected-failure\" }, (span) => {\n\t\t\t\tspan.setStatus({ status: \"error\", error: { name: \"Expected\", message: \"returned failure\" } });\n\t\t\t\treturn { ok: false };\n\t\t\t});\n\n\t\t\tconst spans = await fixture.getSpans();\n\t\t\tdeepStrictEqual(findSpan(spans, \"last-status\").status, { status: \"ok\" });\n\t\t\tdeepStrictEqual(findSpan(spans, \"explicit-before-throw\").status, { status: \"ok\" });\n\t\t\tdeepStrictEqual(findSpan(spans, \"explicit-before-rejection\").status, {\n\t\t\t\tstatus: \"error\",\n\t\t\t\terror: { name: \"Expected\", message: \"async failure\" },\n\t\t\t});\n\t\t\tdeepStrictEqual(findSpan(spans, \"expected-failure\").status, {\n\t\t\t\tstatus: \"error\",\n\t\t\t\terror: { name: \"Expected\", message: \"returned failure\" },\n\t\t\t});\n\t\t}),\n\n\t\tcreateCase(factory, \"recording\", \"merges attributes and records ordered events\", async (fixture) => {\n\t\t\tawait fixture.context.startSpan(\n\t\t\t\t{\n\t\t\t\t\tname: \"recording\",\n\t\t\t\t\tattributes: { start: \"value\", overwrite: \"start\", ignored: undefined },\n\t\t\t\t},\n\t\t\t\t(span) => {\n\t\t\t\t\tspan.setAttributes({ count: 1, overwrite: \"middle\" });\n\t\t\t\t\tspan.setAttributes({ count: undefined, overwrite: \"end\" });\n\t\t\t\t\tspan.addEvent(\"first\", { index: 1, ignored: undefined });\n\t\t\t\t\tspan.addEvent(\"second\", { index: 2 });\n\t\t\t\t},\n\t\t\t);\n\n\t\t\tconst span = findSpan(await fixture.getSpans(), \"recording\");\n\t\t\tdeepStrictEqual(span.attributes, { start: \"value\", overwrite: \"end\", count: 1 });\n\t\t\tdeepStrictEqual(span.events, [\n\t\t\t\t{ name: \"first\", attributes: { index: 1 } },\n\t\t\t\t{ name: \"second\", attributes: { index: 2 } },\n\t\t\t]);\n\t\t}),\n\n\t\tcreateCase(factory, \"recording\", \"ignores failed attribute calls atomically\", async (fixture) => {\n\t\t\tawait fixture.context.startSpan({ name: \"atomic-attributes\", attributes: { retained: \"value\" } }, (span) => {\n\t\t\t\tconst attributes: SpanAttributes = {\n\t\t\t\t\tpartial: \"must not survive\",\n\t\t\t\t\tunreadable: unreadable([\"value\"]),\n\t\t\t\t};\n\t\t\t\tdoesNotThrow(() => span.setAttributes(attributes));\n\t\t\t});\n\n\t\t\tdeepStrictEqual(findSpan(await fixture.getSpans(), \"atomic-attributes\").attributes, {\n\t\t\t\tretained: \"value\",\n\t\t\t});\n\t\t}),\n\n\t\tcreateCase(factory, \"recording\", \"makes calls after settlement inert\", async (fixture) => {\n\t\t\tlet settledSpan: TelemetrySpan | undefined;\n\t\t\tawait fixture.context.startSpan({ name: \"settled\", attributes: { value: \"initial\" } }, (span) => {\n\t\t\t\tsettledSpan = span;\n\t\t\t});\n\t\t\tconst capturedSpan = settledSpan;\n\t\t\tif (!capturedSpan) throw new Error(\"Expected callback span\");\n\n\t\t\tdoesNotThrow(() => capturedSpan.setAttributes({ value: \"late\" }));\n\t\t\tdoesNotThrow(() => capturedSpan.addEvent(\"late\", { value: true }));\n\t\t\tdoesNotThrow(() => capturedSpan.setStatus({ status: \"error\" }));\n\t\t\tlet childAdmitted = false;\n\t\t\tconst childResult = capturedSpan.startSpan({ name: \"late-child\" }, () => {\n\t\t\t\tchildAdmitted = true;\n\t\t\t\treturn 7;\n\t\t\t});\n\t\t\tstrictEqual(childAdmitted, true);\n\t\t\tstrictEqual(await childResult, 7);\n\n\t\t\tconst spans = await fixture.getSpans();\n\t\t\tstrictEqual(spans.length, 1);\n\t\t\tdeepStrictEqual(spans[0]?.attributes, { value: \"initial\" });\n\t\t\tdeepStrictEqual(spans[0]?.events, []);\n\t\t\tdeepStrictEqual(spans[0]?.status, { status: \"ok\" });\n\t\t}),\n\n\t\tcreateCase(factory, \"parentage\", \"records nested and concurrent child relationships\", async (fixture) => {\n\t\t\tlet releaseFirst: (() => void) | undefined;\n\t\t\tconst firstGate = new Promise<void>((resolve) => {\n\t\t\t\treleaseFirst = resolve;\n\t\t\t});\n\n\t\t\tawait fixture.context.startSpan({ name: \"parent\" }, async (parent) => {\n\t\t\t\tconst first = parent.startSpan({ name: \"first-child\" }, async () => {\n\t\t\t\t\tawait firstGate;\n\t\t\t\t});\n\t\t\t\tconst second = parent.startSpan({ name: \"second-child\" }, () => \"done\");\n\t\t\t\tstrictEqual(await second, \"done\");\n\t\t\t\treleaseFirst?.();\n\t\t\t\tawait first;\n\t\t\t});\n\n\t\t\tconst spans = await fixture.getSpans();\n\t\t\tconst parent = findSpan(spans, \"parent\");\n\t\t\tconst first = findSpan(spans, \"first-child\");\n\t\t\tconst second = findSpan(spans, \"second-child\");\n\t\t\tstrictEqual(parent.parentId, null);\n\t\t\tstrictEqual(first.parentId, parent.id);\n\t\t\tstrictEqual(second.parentId, parent.id);\n\t\t\tok(second.endSequence !== undefined && first.endSequence !== undefined && parent.endSequence !== undefined);\n\t\t\tok(second.endSequence < first.endSequence);\n\t\t\tok(first.endSequence < parent.endSequence);\n\t\t}),\n\n\t\tcreateCase(factory, \"passivity\", \"suppresses unreadable telemetry payload failures\", async (fixture) => {\n\t\t\tlet calls = 0;\n\t\t\tconst options = unreadable<SpanOptions>({ name: \"unreadable-options\", attributes: { secret: \"value\" } });\n\t\t\tconst result = fixture.context.startSpan(options, () => {\n\t\t\t\tcalls++;\n\t\t\t\treturn 9;\n\t\t\t});\n\n\t\t\tstrictEqual(calls, 1);\n\t\t\tstrictEqual(await result, 9);\n\t\t\tdeepStrictEqual(await fixture.getSpans(), []);\n\n\t\t\tawait fixture.context.startSpan({ name: \"unreadable-recording\" }, (span) => {\n\t\t\t\tconst attributes = unreadable<SpanAttributes>({ secret: \"value\" });\n\t\t\t\tconst status = unreadable<SpanStatus>({ status: \"ok\" });\n\t\t\t\tdoesNotThrow(() => span.setAttributes(attributes));\n\t\t\t\tdoesNotThrow(() => span.addEvent(\"unreadable-event\", attributes));\n\t\t\t\tdoesNotThrow(() => span.setStatus(status));\n\t\t\t});\n\n\t\t\tconst recorded = await fixture.getSpans();\n\t\t\tstrictEqual(recorded.length, 1);\n\t\t\tdeepStrictEqual(recorded[0]?.attributes, {});\n\t\t\tdeepStrictEqual(recorded[0]?.events, []);\n\t\t\tdeepStrictEqual(recorded[0]?.status, { status: \"ok\" });\n\t\t}),\n\n\t\tcreateCase(factory, \"passivity\", \"ignores failed status calls atomically\", async (fixture) => {\n\t\t\tconst rejection = new Error(\"rejected after unreadable status\");\n\t\t\tawait rejectsWithSameValue(\n\t\t\t\tfixture.context.startSpan({ name: \"unreadable-status\" }, (span) => {\n\t\t\t\t\tconst status = unreadable<SpanStatus>({ status: \"ok\" });\n\t\t\t\t\tdoesNotThrow(() => span.setStatus(status));\n\t\t\t\t\treturn Promise.reject(rejection);\n\t\t\t\t}),\n\t\t\t\trejection,\n\t\t\t);\n\n\t\t\tstrictEqual(findSpan(await fixture.getSpans(), \"unreadable-status\").status.status, \"error\");\n\t\t}),\n\t];\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC;AACrE,YAAY,EACX,+BAA+B,EAC/B,uBAAuB,EACvB,8BAA8B,GAC9B,MAAM,YAAY,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iCAAiC,EAAE,MAAM,kBAAkB,CAAC","sourcesContent":["export { createTelemetryAdapterConformance } from \"./conformance.ts\";\nexport type {\n\tTelemetryAdapterConformanceCase,\n\tTelemetryAdapterFixture,\n\tTelemetryAdapterFixtureFactory,\n} from \"./types.ts\";\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { TelemetryContext } from "../index.ts";
|
|
2
|
+
import type { RecordedTelemetrySpan } from "../memory.ts";
|
|
3
|
+
/** A fresh adapter instance and normalized snapshot reader owned by one conformance case. */
|
|
4
|
+
export interface TelemetryAdapterFixture extends AsyncDisposable {
|
|
5
|
+
readonly context: TelemetryContext;
|
|
6
|
+
getSpans(): Promise<readonly RecordedTelemetrySpan[]>;
|
|
7
|
+
}
|
|
8
|
+
/** Creates an isolated adapter fixture for one conformance case. */
|
|
9
|
+
export type TelemetryAdapterFixtureFactory = () => Promise<TelemetryAdapterFixture>;
|
|
10
|
+
/** A runner-independent conformance case that can be registered with any test framework. */
|
|
11
|
+
export interface TelemetryAdapterConformanceCase {
|
|
12
|
+
readonly group: string;
|
|
13
|
+
readonly name: string;
|
|
14
|
+
run(): Promise<void>;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/testing/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAE1D,6FAA6F;AAC7F,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAC/D,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC;IACnC,QAAQ,IAAI,OAAO,CAAC,SAAS,qBAAqB,EAAE,CAAC,CAAC;CACtD;AAED,oEAAoE;AACpE,MAAM,MAAM,8BAA8B,GAAG,MAAM,OAAO,CAAC,uBAAuB,CAAC,CAAC;AAEpF,4FAA4F;AAC5F,MAAM,WAAW,+BAA+B;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/testing/types.ts"],"names":[],"mappings":"","sourcesContent":["import type { TelemetryContext } from \"../index.ts\";\nimport type { RecordedTelemetrySpan } from \"../memory.ts\";\n\n/** A fresh adapter instance and normalized snapshot reader owned by one conformance case. */\nexport interface TelemetryAdapterFixture extends AsyncDisposable {\n\treadonly context: TelemetryContext;\n\tgetSpans(): Promise<readonly RecordedTelemetrySpan[]>;\n}\n\n/** Creates an isolated adapter fixture for one conformance case. */\nexport type TelemetryAdapterFixtureFactory = () => Promise<TelemetryAdapterFixture>;\n\n/** A runner-independent conformance case that can be registered with any test framework. */\nexport interface TelemetryAdapterConformanceCase {\n\treadonly group: string;\n\treadonly name: string;\n\trun(): Promise<void>;\n}\n"]}
|
package/package.json
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@code-yeongyu/senpi-telemetry",
|
|
3
|
+
"version": "2026.8.13",
|
|
4
|
+
"description": "Vendor-neutral telemetry contracts and typed schema utilities for pi",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/index.d.ts",
|
|
11
|
+
"import": "./dist/index.js"
|
|
12
|
+
},
|
|
13
|
+
"./testing": {
|
|
14
|
+
"types": "./dist/testing/index.d.ts",
|
|
15
|
+
"import": "./dist/testing/index.js"
|
|
16
|
+
}
|
|
17
|
+
},
|
|
18
|
+
"files": [
|
|
19
|
+
"dist",
|
|
20
|
+
"README.md"
|
|
21
|
+
],
|
|
22
|
+
"scripts": {
|
|
23
|
+
"clean": "shx rm -rf dist",
|
|
24
|
+
"build": "tsgo -p tsconfig.build.json",
|
|
25
|
+
"test": "vitest --run",
|
|
26
|
+
"prepublishOnly": "npm run clean && npm run build"
|
|
27
|
+
},
|
|
28
|
+
"keywords": [
|
|
29
|
+
"telemetry",
|
|
30
|
+
"tracing",
|
|
31
|
+
"observability"
|
|
32
|
+
],
|
|
33
|
+
"author": "Mario Zechner",
|
|
34
|
+
"license": "MIT",
|
|
35
|
+
"repository": {
|
|
36
|
+
"type": "git",
|
|
37
|
+
"url": "git+https://github.com/code-yeongyu/senpi.git",
|
|
38
|
+
"directory": "packages/telemetry"
|
|
39
|
+
},
|
|
40
|
+
"engines": {
|
|
41
|
+
"node": ">=22.19.0"
|
|
42
|
+
},
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"@types/node": "24.12.4",
|
|
45
|
+
"vitest": "4.1.9"
|
|
46
|
+
}
|
|
47
|
+
}
|