10 Commits

Author SHA1 Message Date
bf001813b8 fix: add CJS build for NestJS CommonJS compatibility
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
NestJS compiles to CommonJS, but the package only exported ESM.
Node throws ERR_PACKAGE_PATH_NOT_EXPORTED when CJS code requires
an ESM-only package. Added dual ESM/CJS build with proper exports
conditions.

- ESM output in dist/esm/, CJS output in dist/cjs/
- package.json exports now includes import, require, and default
- Bumped to 0.1.1

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 15:07:23 -06:00
20f56edb49 docs(#1): document dev/release package versioning convention
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Add versioning table to README and integration guide showing dist-tags,
version formats, and .npmrc registry configuration for the Gitea npm
registry.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 23:02:46 -06:00
0b0fb9ab7b fix(#1): link-package depends on build, not skipped publish steps
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Woodpecker cannot resolve depends_on for steps excluded by when
clauses. On develop, publish-release is skipped (main-only), making
it an unknown dependency. Changed to depend on build instead.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 22:58:37 -06:00
3b5c47af84 feat(#1): split publish into release and dev channels
- publish-release (main): publishes package.json version as-is with
  'latest' dist-tag, skips if version already published
- publish-dev (develop): publishes {version}-dev.{timestamp} with
  'dev' dist-tag, every push gets a unique prerelease version

Install channels:
  npm install @mosaicstack/telemetry-client        # latest stable
  npm install @mosaicstack/telemetry-client@dev     # latest dev build

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 22:57:21 -06:00
ea00334ded fix(#1): add package linking step to CI pipeline
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Links the published npm package to the telemetry-client-js repository
in Gitea so it appears on the repo's Packages tab.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 22:53:51 -06:00
493bc72601 chore(#1): apply Prettier formatting to all source and test files
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 22:48:08 -06:00
9df760cab2 fix(#1): remove duplicate npm ci from parallel CI steps
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
Woodpecker shares the workspace volume across steps. Only the install
step should run npm ci — parallel steps (lint, typecheck, test, etc.)
were each re-running npm ci concurrently, corrupting node_modules.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 22:47:06 -06:00
07bf9dd9b4 fix(#1): add Node.js globals to ESLint config
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
ESLint 9 flat config requires explicit globals. Without them, Node.js
builtins (fetch, crypto, setTimeout, AbortController, etc.) trigger
no-undef errors, blocking the CI pipeline.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 22:43:21 -06:00
231a799a46 docs(#1): SDK integration guide, API reference, and CI pipeline
Some checks failed
ci/woodpecker/push/woodpecker Pipeline failed
- Rewrite README with quick start, config table, prediction usage, API version note
- Add docs/integration-guide.md with Next.js and Node.js examples, env-specific
  config, error handling patterns, batch behavior, and API version compatibility
- Add docs/api-reference.md with full reference for all exported classes, methods,
  types, and enums
- Add .woodpecker.yml with quality gates (lint, typecheck, format, security audit,
  test with coverage) and npm publish to Gitea registry
- Add AGENTS.md and update CLAUDE.md with project conventions

Fixes #1

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-14 22:38:19 -06:00
177720e523 feat: TypeScript telemetry client SDK v0.1.0
Standalone npm package (@mosaicstack/telemetry-client) for reporting
task-completion telemetry and querying predictions from the Mosaic
Stack Telemetry server.

- TelemetryClient with setInterval-based background flush
- EventQueue (bounded FIFO array)
- BatchSubmitter with native fetch, exponential backoff, Retry-After
- PredictionCache (Map + TTL)
- EventBuilder with auto-generated event_id/timestamp
- Zero runtime dependencies (Node 18+ native APIs)
- 43 tests, 86% branch coverage

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 23:25:31 -06:00