fullstackgtm 0.28.2 → 0.29.0

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
@@ -5,6 +5,27 @@ The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
5
5
  and the project adheres to [Semantic Versioning](https://semver.org/).
6
6
  The path to 1.0 is planned in [docs/roadmap-to-1.0.md](./docs/roadmap-to-1.0.md).
7
7
 
8
+ ## [0.29.0] — 2026-06-16
9
+
10
+ ### Added
11
+
12
+ - **`suggestMarketConfig` and its taxonomy types (`SeedVendor`,
13
+ `SuggestTaxonomyOptions`, `SuggestTaxonomyResult`) are now exported from the
14
+ package root.** The cold-start claim-taxonomy bootstrap behind `market init
15
+ --auto` (shipped in 0.26.0) is now usable as a library API, not just the CLI —
16
+ a consumer can run it with an injected `fetchPage` (e.g. a browser-rendered
17
+ capture) and compose it with the already-exported `captureMarket` /
18
+ `classifyMarket` / `marketMapToHtml`. No behaviour change to the CLI.
19
+
20
+ ## [0.28.3] — 2026-06-16
21
+
22
+ Fix broken links in the published mirror. CONTRIBUTING.md and CLAUDE.md
23
+ referenced `../../docs/open-core-boundary.md` — a monorepo-root path that
24
+ escapes the repo on the mirror (where the package is the repo root) and targets
25
+ a doc the mirror doesn't carry. Made those references self-contained (the
26
+ open-core model and release ritual are explained inline). A full sweep confirms
27
+ every relative link in the shipped docs now resolves within the package/mirror.
28
+
8
29
  ## [0.28.2] — 2026-06-16
9
30
 
10
31
  Collaborator/co-maintainer onboarding (from a readiness review). No runtime
package/CONTRIBUTING.md CHANGED
@@ -16,11 +16,12 @@ github:fullstackgtm/core` works without a build step).
16
16
  - **Issues / PRs:** open them on the public mirror (`fullstackgtm/core`). A
17
17
  maintainer applies accepted changes in the monorepo with credit
18
18
  (`Co-authored-by`); they land in the next mirrored release.
19
- - The open/closed boundary is defined in [docs/open-core-boundary.md](../../docs/open-core-boundary.md)
20
- (monorepo) client tools, the canonical model, rules, the plan/apply
21
- contract, connectors, CLI, and MCP server are open; hosted-app server code is
22
- not. **Features never move from open to closed**, and new work here must run
23
- standalone (no hosted deployment required).
19
+ - The open/closed boundary: client tools, the canonical model, rules, the
20
+ plan/apply contract, connectors, CLI, and MCP server are open; the hosted Full
21
+ Stack GTM application's server code is not. **Features never move from open to
22
+ closed**, and new work here must run standalone (no hosted deployment
23
+ required). (Maintainers: the full boundary policy lives in
24
+ `docs/open-core-boundary.md` in the development monorepo.)
24
25
 
25
26
  ## Architecture
26
27
 
@@ -72,9 +73,8 @@ the spec) and run the security suite (`fullstackgtmSecurity.test.ts`).
72
73
 
73
74
  ## Releasing (maintainers)
74
75
 
75
- The full ritual, with rationale, is in
76
- [docs/open-core-boundary.md](../../docs/open-core-boundary.md). In short, from
77
- the monorepo:
76
+ The steps are below (deeper rationale lives in `docs/open-core-boundary.md` in
77
+ the development monorepo). From the monorepo:
78
78
 
79
79
  1. Bump `packages/fullstackgtm/package.json` version + add a `CHANGELOG.md`
80
80
  entry; merge to `main`.
package/dist/index.d.ts CHANGED
@@ -27,6 +27,7 @@ export { sampleSnapshot } from "./sampleData.ts";
27
27
  export { DEFAULT_MODELS, DEFAULT_RUBRIC, detectProviderFromKey, extractInsightsLlm, forcedToolCall, parseRubric, resolveLlmCredential, scoreCallLlm, validateLlmKey, type CallScorecard, type LlmCredential, type LlmExtractedInsight, type LlmProvider, type Rubric, type ScoredDimension, } from "./llm.ts";
28
28
  export { resolveRecord, type ResolveCandidate, type ResolveMatch, type ResolveResult } from "./resolve.ts";
29
29
  export { captureMarket, computeFrontStates, createFileObservationStore, diffFrontStates, extractReadableText, loadCaptureTexts, loadMarketConfig, marketHome, normalizeForMatch, observationId, parseMarketConfig, starterMarketConfig, validateObservationSet, verifyEvidenceSpans, type CaptureEntry, type CaptureOptions, type ClaimFront, type ClaimIntensity, type FrontDrift, type FrontState, type MarketAxis, type MarketClaim, type MarketConfig, type MarketObservation, type MarketVendor, type ObservationConfidence, type ObservationSet, type ObservationStore, type ScaleSignal, type SpanVerificationFailure, } from "./market.ts";
30
+ export { suggestMarketConfig, type SeedVendor, type SuggestTaxonomyOptions, type SuggestTaxonomyResult, } from "./marketTaxonomy.ts";
30
31
  export { assessAxes, axesReportToText, axisPosition, messageBreadth, pcaTop2, pearson, type AxesReport, type AxisAssessment, type AxisPairing, type PrincipalComponent, } from "./marketAxes.ts";
31
32
  export { buildWorksheet, classifyMarket, type ClassifyMarketOptions, type ClassifyMarketResult, type MarketWorksheet, } from "./marketClassify.ts";
32
33
  export { computeDirectives, computeOverlayStats, directivesToPlan, overlayToMarkdown, type CallDocument, type ClaimMentionStats, type DirectiveStat, type DirectiveType, type MarketDirective, type OverlayOptions, type OverlayStats, type VendorMentionStats, } from "./marketOverlay.ts";
package/dist/index.js CHANGED
@@ -27,6 +27,7 @@ export { sampleSnapshot } from "./sampleData.js";
27
27
  export { DEFAULT_MODELS, DEFAULT_RUBRIC, detectProviderFromKey, extractInsightsLlm, forcedToolCall, parseRubric, resolveLlmCredential, scoreCallLlm, validateLlmKey, } from "./llm.js";
28
28
  export { resolveRecord } from "./resolve.js";
29
29
  export { captureMarket, computeFrontStates, createFileObservationStore, diffFrontStates, extractReadableText, loadCaptureTexts, loadMarketConfig, marketHome, normalizeForMatch, observationId, parseMarketConfig, starterMarketConfig, validateObservationSet, verifyEvidenceSpans, } from "./market.js";
30
+ export { suggestMarketConfig, } from "./marketTaxonomy.js";
30
31
  export { assessAxes, axesReportToText, axisPosition, messageBreadth, pcaTop2, pearson, } from "./marketAxes.js";
31
32
  export { buildWorksheet, classifyMarket, } from "./marketClassify.js";
32
33
  export { computeDirectives, computeOverlayStats, directivesToPlan, overlayToMarkdown, } from "./marketOverlay.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fullstackgtm",
3
- "version": "0.28.2",
3
+ "version": "0.29.0",
4
4
  "description": "Open-source agentic GTM ops framework: canonical GTM data model, pluggable deterministic audits, reviewable dry-run patch plans, approval-gated write-back with conflict detection, and cross-system entity resolution. HubSpot, Salesforce, and Stripe connectors included.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Full Stack GTM LLC <ryan@fullstackgtm.com> (https://fullstackgtm.com)",
package/src/index.ts CHANGED
@@ -226,6 +226,12 @@ export {
226
226
  type ScaleSignal,
227
227
  type SpanVerificationFailure,
228
228
  } from "./market.ts";
229
+ export {
230
+ suggestMarketConfig,
231
+ type SeedVendor,
232
+ type SuggestTaxonomyOptions,
233
+ type SuggestTaxonomyResult,
234
+ } from "./marketTaxonomy.ts";
229
235
  export {
230
236
  assessAxes,
231
237
  axesReportToText,