@contractspec/example.content-generation 1.46.2 → 1.47.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.
@@ -1,5 +1,5 @@
1
1
  $ tsdown
2
- ℹ tsdown v0.18.4 powered by rolldown v1.0.0-beta.57
2
+ ℹ tsdown v0.19.0 powered by rolldown v1.0.0-beta.59
3
3
  ℹ config file: /home/runner/work/contractspec/contractspec/packages/examples/content-generation/tsdown.config.js
4
4
  ℹ entry: src/example.ts, src/generate.ts, src/index.ts, src/docs/content-generation.docblock.ts, src/docs/index.ts
5
5
  ℹ target: esnext
@@ -8,18 +8,18 @@ $ tsdown
8
8
  ℹ Cleaning 16 files
9
9
  ℹ dist/generate.js 1.81 kB │ gzip: 0.90 kB
10
10
  ℹ dist/docs/content-generation.docblock.js 1.37 kB │ gzip: 0.69 kB
11
- ℹ dist/example.js 0.94 kB │ gzip: 0.48 kB
11
+ ℹ dist/example.js 1.02 kB │ gzip: 0.51 kB
12
12
  ℹ dist/index.js 0.20 kB │ gzip: 0.13 kB
13
13
  ℹ dist/docs/index.js 0.04 kB │ gzip: 0.06 kB
14
- ℹ dist/generate.js.map 2.89 kB │ gzip: 1.31 kB
14
+ ℹ dist/generate.js.map 2.87 kB │ gzip: 1.30 kB
15
15
  ℹ dist/docs/content-generation.docblock.js.map 1.86 kB │ gzip: 0.88 kB
16
- ℹ dist/example.js.map 1.47 kB │ gzip: 0.69 kB
16
+ ℹ dist/example.js.map 1.46 kB │ gzip: 0.69 kB
17
17
  ℹ dist/generate.d.ts.map 0.14 kB │ gzip: 0.13 kB
18
- ℹ dist/example.d.ts.map 0.12 kB │ gzip: 0.12 kB
19
- ℹ dist/example.d.ts 0.20 kB │ gzip: 0.16 kB
18
+ ℹ dist/example.d.ts.map 0.14 kB │ gzip: 0.13 kB
19
+ ℹ dist/example.d.ts 0.25 kB │ gzip: 0.17 kB
20
20
  ℹ dist/generate.d.ts 0.18 kB │ gzip: 0.15 kB
21
21
  ℹ dist/index.d.ts 0.14 kB │ gzip: 0.10 kB
22
22
  ℹ dist/docs/content-generation.docblock.d.ts 0.01 kB │ gzip: 0.03 kB
23
23
  ℹ dist/docs/index.d.ts 0.01 kB │ gzip: 0.03 kB
24
- ℹ 15 files, total: 11.41 kB
25
- ✔ Build complete in 29244ms
24
+ ℹ 15 files, total: 11.51 kB
25
+ ✔ Build complete in 18507ms
@@ -1,7 +1,7 @@
1
1
  $ bun build:types && bun build:bundle
2
2
  $ tsc --noEmit
3
3
  $ tsdown
4
- ℹ tsdown v0.18.4 powered by rolldown v1.0.0-beta.57
4
+ ℹ tsdown v0.19.0 powered by rolldown v1.0.0-beta.59
5
5
  ℹ config file: /home/runner/work/contractspec/contractspec/packages/examples/content-generation/tsdown.config.js
6
6
  ℹ entry: src/example.ts, src/generate.ts, src/index.ts, src/docs/content-generation.docblock.ts, src/docs/index.ts
7
7
  ℹ target: esnext
@@ -9,18 +9,18 @@ $ tsdown
9
9
  ℹ Build start
10
10
  ℹ dist/generate.js 1.81 kB │ gzip: 0.90 kB
11
11
  ℹ dist/docs/content-generation.docblock.js 1.37 kB │ gzip: 0.69 kB
12
- ℹ dist/example.js 0.94 kB │ gzip: 0.48 kB
12
+ ℹ dist/example.js 1.02 kB │ gzip: 0.51 kB
13
13
  ℹ dist/index.js 0.20 kB │ gzip: 0.13 kB
14
14
  ℹ dist/docs/index.js 0.04 kB │ gzip: 0.06 kB
15
- ℹ dist/generate.js.map 2.89 kB │ gzip: 1.31 kB
15
+ ℹ dist/generate.js.map 2.87 kB │ gzip: 1.30 kB
16
16
  ℹ dist/docs/content-generation.docblock.js.map 1.86 kB │ gzip: 0.88 kB
17
- ℹ dist/example.js.map 1.47 kB │ gzip: 0.69 kB
17
+ ℹ dist/example.js.map 1.46 kB │ gzip: 0.69 kB
18
18
  ℹ dist/generate.d.ts.map 0.14 kB │ gzip: 0.13 kB
19
- ℹ dist/example.d.ts.map 0.12 kB │ gzip: 0.12 kB
20
- ℹ dist/example.d.ts 0.20 kB │ gzip: 0.16 kB
19
+ ℹ dist/example.d.ts.map 0.14 kB │ gzip: 0.13 kB
20
+ ℹ dist/example.d.ts 0.25 kB │ gzip: 0.17 kB
21
21
  ℹ dist/generate.d.ts 0.18 kB │ gzip: 0.15 kB
22
22
  ℹ dist/index.d.ts 0.14 kB │ gzip: 0.10 kB
23
23
  ℹ dist/docs/content-generation.docblock.d.ts 0.01 kB │ gzip: 0.03 kB
24
24
  ℹ dist/docs/index.d.ts 0.01 kB │ gzip: 0.03 kB
25
- ℹ 15 files, total: 11.41 kB
26
- ✔ Build complete in 19732ms
25
+ ℹ 15 files, total: 11.51 kB
26
+ ✔ Build complete in 12132ms
package/CHANGELOG.md CHANGED
@@ -1,5 +1,28 @@
1
1
  # @contractspec/example.content-generation
2
2
 
3
+ ## 1.47.0
4
+
5
+ ### Minor Changes
6
+
7
+ - caf8701: feat: add cli vibe command to run workflow
8
+ - c69b849: feat: add api web services (mcp & website)
9
+ - 42b8d78: feat: add cli `contractspec vibe` workflow to simplify usage
10
+ - fd38e85: feat: auto-fix contractspec issues
11
+
12
+ ### Patch Changes
13
+
14
+ - e7ded36: feat: improve stability (adding ts-morph)
15
+ - c231a8b: test: improve workspace stability
16
+ - Updated dependencies [e7ded36]
17
+ - Updated dependencies [caf8701]
18
+ - Updated dependencies [c69b849]
19
+ - Updated dependencies [c231a8b]
20
+ - Updated dependencies [42b8d78]
21
+ - Updated dependencies [fd38e85]
22
+ - @contractspec/lib.content-gen@1.47.0
23
+ - @contractspec/lib.contracts@1.47.0
24
+ - @contractspec/lib.logger@1.47.0
25
+
3
26
  ## 1.46.2
4
27
 
5
28
  ### Patch Changes
package/dist/example.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { ExampleSpec } from "@contractspec/lib.contracts";
1
+ import * as _contractspec_lib_contracts0 from "@contractspec/lib.contracts";
2
2
 
3
3
  //#region src/example.d.ts
4
- declare const example: ExampleSpec;
4
+ declare const example: _contractspec_lib_contracts0.ExampleSpec;
5
5
  //#endregion
6
6
  export { example as default };
7
7
  //# sourceMappingURL=example.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"example.d.ts","names":[],"sources":["../src/example.ts"],"sourcesContent":[],"mappings":";;;cAEM,SAAS"}
1
+ {"version":3,"file":"example.d.ts","names":[],"sources":["../src/example.ts"],"sourcesContent":[],"mappings":";;;cAEM,SA2BJ,4BAAA,CA3BW"}
package/dist/example.js CHANGED
@@ -1,5 +1,7 @@
1
+ import { defineExample } from "@contractspec/lib.contracts";
2
+
1
3
  //#region src/example.ts
2
- const example = {
4
+ const example = defineExample({
3
5
  meta: {
4
6
  key: "content-generation",
5
7
  version: "1.0.0",
@@ -36,7 +38,7 @@ const example = {
36
38
  },
37
39
  mcp: { enabled: true }
38
40
  }
39
- };
41
+ });
40
42
  var example_default = example;
41
43
 
42
44
  //#endregion
@@ -1 +1 @@
1
- {"version":3,"file":"example.js","names":["example: ExampleSpec"],"sources":["../src/example.ts"],"sourcesContent":["import type { ExampleSpec } from '@contractspec/lib.contracts';\n\nconst example: ExampleSpec = {\n meta: {\n key: 'content-generation',\n version: '1.0.0',\n title: 'Content Generation',\n description:\n 'Generate blog/landing/email/social/SEO assets from a typed ContentBrief using @contractspec/lib.content-gen.',\n kind: 'script',\n visibility: 'public',\n stability: 'experimental',\n owners: ['@platform.core'],\n tags: ['content', 'marketing', 'generation', 'ai'],\n },\n docs: {\n rootDocId: 'docs.examples.content-generation',\n usageDocId: 'docs.examples.content-generation.usage',\n },\n entrypoints: {\n packageName: '@contractspec/example.content-generation',\n docs: './docs',\n },\n surfaces: {\n templates: true,\n sandbox: { enabled: true, modes: ['markdown'] },\n studio: { enabled: true, installable: true },\n mcp: { enabled: true },\n },\n};\n\nexport default example;\n"],"mappings":";AAEA,MAAMA,UAAuB;CAC3B,MAAM;EACJ,KAAK;EACL,SAAS;EACT,OAAO;EACP,aACE;EACF,MAAM;EACN,YAAY;EACZ,WAAW;EACX,QAAQ,CAAC,iBAAiB;EAC1B,MAAM;GAAC;GAAW;GAAa;GAAc;GAAK;EACnD;CACD,MAAM;EACJ,WAAW;EACX,YAAY;EACb;CACD,aAAa;EACX,aAAa;EACb,MAAM;EACP;CACD,UAAU;EACR,WAAW;EACX,SAAS;GAAE,SAAS;GAAM,OAAO,CAAC,WAAW;GAAE;EAC/C,QAAQ;GAAE,SAAS;GAAM,aAAa;GAAM;EAC5C,KAAK,EAAE,SAAS,MAAM;EACvB;CACF;AAED,sBAAe"}
1
+ {"version":3,"file":"example.js","names":[],"sources":["../src/example.ts"],"sourcesContent":["import { defineExample } from '@contractspec/lib.contracts';\n\nconst example = defineExample({\n meta: {\n key: 'content-generation',\n version: '1.0.0',\n title: 'Content Generation',\n description:\n 'Generate blog/landing/email/social/SEO assets from a typed ContentBrief using @contractspec/lib.content-gen.',\n kind: 'script',\n visibility: 'public',\n stability: 'experimental',\n owners: ['@platform.core'],\n tags: ['content', 'marketing', 'generation', 'ai'],\n },\n docs: {\n rootDocId: 'docs.examples.content-generation',\n usageDocId: 'docs.examples.content-generation.usage',\n },\n entrypoints: {\n packageName: '@contractspec/example.content-generation',\n docs: './docs',\n },\n surfaces: {\n templates: true,\n sandbox: { enabled: true, modes: ['markdown'] },\n studio: { enabled: true, installable: true },\n mcp: { enabled: true },\n },\n});\n\nexport default example;\n"],"mappings":";;;AAEA,MAAM,UAAU,cAAc;CAC5B,MAAM;EACJ,KAAK;EACL,SAAS;EACT,OAAO;EACP,aACE;EACF,MAAM;EACN,YAAY;EACZ,WAAW;EACX,QAAQ,CAAC,iBAAiB;EAC1B,MAAM;GAAC;GAAW;GAAa;GAAc;GAAK;EACnD;CACD,MAAM;EACJ,WAAW;EACX,YAAY;EACb;CACD,aAAa;EACX,aAAa;EACb,MAAM;EACP;CACD,UAAU;EACR,WAAW;EACX,SAAS;GAAE,SAAS;GAAM,OAAO,CAAC,WAAW;GAAE;EAC/C,QAAQ;GAAE,SAAS;GAAM,aAAa;GAAM;EAC5C,KAAK,EAAE,SAAS,MAAM;EACvB;CACF,CAAC;AAEF,sBAAe"}
@@ -1 +1 @@
1
- {"version":3,"file":"generate.js","names":["brief: ContentBrief"],"sources":["../src/generate.ts"],"sourcesContent":["import {\n BlogGenerator,\n EmailCampaignGenerator,\n LandingPageGenerator,\n SocialPostGenerator,\n} from '@contractspec/lib.content-gen/generators';\nimport { SeoOptimizer } from '@contractspec/lib.content-gen/seo';\nimport type { ContentBrief } from '@contractspec/lib.content-gen';\nimport { Logger, LogLevel } from '@contractspec/lib.logger';\nimport type { LoggerConfig } from '@contractspec/lib.logger/types';\n\nconst logger = new Logger({\n level: process.env.NODE_ENV === 'production' ? LogLevel.INFO : LogLevel.DEBUG,\n environment:\n (process.env.NODE_ENV as LoggerConfig['environment']) || 'development',\n enableColors: process.env.NODE_ENV !== 'production',\n});\n\nexport async function runContentGenerationExample(): Promise<void> {\n const brief: ContentBrief = {\n title: 'AI-Native Operations Copilot',\n summary:\n 'Automates support resolutions, growth playbooks, and DevOps rituals.',\n problems: [\n 'Support queues pile up after hours',\n 'Growth teams lack fresh experiments',\n ],\n solutions: [\n 'Stateful AI agents grounded in your knowledge spaces',\n 'CI-safe approval workflows for human review',\n 'Analytics + experimentation stack built into ContractSpec',\n ],\n metrics: ['80% auto-resolution rate', '10+ experiments shipped weekly'],\n audience: { role: 'COO', industry: 'Fintech', maturity: 'scaleup' },\n callToAction: 'Book a 15‑minute pilot run',\n };\n\n const blog = await new BlogGenerator().generate(brief);\n const landing = await new LandingPageGenerator().generate(brief);\n const email = await new EmailCampaignGenerator().generate({\n brief,\n variant: 'announcement',\n });\n const social = await new SocialPostGenerator().generate(brief);\n const seo = new SeoOptimizer().optimize(brief);\n\n logger.info('Generated content assets', {\n blogIntro: blog.intro,\n landingHero: landing.hero,\n emailSubject: email.subject,\n socialPosts: social.map((post) => post.body),\n seo,\n });\n}\n"],"mappings":";;;;;AAWA,MAAM,SAAS,IAAI,OAAO;CACxB,OAAO,QAAQ,IAAI,aAAa,eAAe,SAAS,OAAO,SAAS;CACxE,aACG,QAAQ,IAAI,YAA4C;CAC3D,cAAc,QAAQ,IAAI,aAAa;CACxC,CAAC;AAEF,eAAsB,8BAA6C;CACjE,MAAMA,QAAsB;EAC1B,OAAO;EACP,SACE;EACF,UAAU,CACR,sCACA,sCACD;EACD,WAAW;GACT;GACA;GACA;GACD;EACD,SAAS,CAAC,4BAA4B,iCAAiC;EACvE,UAAU;GAAE,MAAM;GAAO,UAAU;GAAW,UAAU;GAAW;EACnE,cAAc;EACf;CAED,MAAM,OAAO,MAAM,IAAI,eAAe,CAAC,SAAS,MAAM;CACtD,MAAM,UAAU,MAAM,IAAI,sBAAsB,CAAC,SAAS,MAAM;CAChE,MAAM,QAAQ,MAAM,IAAI,wBAAwB,CAAC,SAAS;EACxD;EACA,SAAS;EACV,CAAC;CACF,MAAM,SAAS,MAAM,IAAI,qBAAqB,CAAC,SAAS,MAAM;CAC9D,MAAM,MAAM,IAAI,cAAc,CAAC,SAAS,MAAM;AAE9C,QAAO,KAAK,4BAA4B;EACtC,WAAW,KAAK;EAChB,aAAa,QAAQ;EACrB,cAAc,MAAM;EACpB,aAAa,OAAO,KAAK,SAAS,KAAK,KAAK;EAC5C;EACD,CAAC"}
1
+ {"version":3,"file":"generate.js","names":[],"sources":["../src/generate.ts"],"sourcesContent":["import {\n BlogGenerator,\n EmailCampaignGenerator,\n LandingPageGenerator,\n SocialPostGenerator,\n} from '@contractspec/lib.content-gen/generators';\nimport { SeoOptimizer } from '@contractspec/lib.content-gen/seo';\nimport type { ContentBrief } from '@contractspec/lib.content-gen';\nimport { Logger, LogLevel } from '@contractspec/lib.logger';\nimport type { LoggerConfig } from '@contractspec/lib.logger/types';\n\nconst logger = new Logger({\n level: process.env.NODE_ENV === 'production' ? LogLevel.INFO : LogLevel.DEBUG,\n environment:\n (process.env.NODE_ENV as LoggerConfig['environment']) || 'development',\n enableColors: process.env.NODE_ENV !== 'production',\n});\n\nexport async function runContentGenerationExample(): Promise<void> {\n const brief: ContentBrief = {\n title: 'AI-Native Operations Copilot',\n summary:\n 'Automates support resolutions, growth playbooks, and DevOps rituals.',\n problems: [\n 'Support queues pile up after hours',\n 'Growth teams lack fresh experiments',\n ],\n solutions: [\n 'Stateful AI agents grounded in your knowledge spaces',\n 'CI-safe approval workflows for human review',\n 'Analytics + experimentation stack built into ContractSpec',\n ],\n metrics: ['80% auto-resolution rate', '10+ experiments shipped weekly'],\n audience: { role: 'COO', industry: 'Fintech', maturity: 'scaleup' },\n callToAction: 'Book a 15‑minute pilot run',\n };\n\n const blog = await new BlogGenerator().generate(brief);\n const landing = await new LandingPageGenerator().generate(brief);\n const email = await new EmailCampaignGenerator().generate({\n brief,\n variant: 'announcement',\n });\n const social = await new SocialPostGenerator().generate(brief);\n const seo = new SeoOptimizer().optimize(brief);\n\n logger.info('Generated content assets', {\n blogIntro: blog.intro,\n landingHero: landing.hero,\n emailSubject: email.subject,\n socialPosts: social.map((post) => post.body),\n seo,\n });\n}\n"],"mappings":";;;;;AAWA,MAAM,SAAS,IAAI,OAAO;CACxB,OAAO,QAAQ,IAAI,aAAa,eAAe,SAAS,OAAO,SAAS;CACxE,aACG,QAAQ,IAAI,YAA4C;CAC3D,cAAc,QAAQ,IAAI,aAAa;CACxC,CAAC;AAEF,eAAsB,8BAA6C;CACjE,MAAM,QAAsB;EAC1B,OAAO;EACP,SACE;EACF,UAAU,CACR,sCACA,sCACD;EACD,WAAW;GACT;GACA;GACA;GACD;EACD,SAAS,CAAC,4BAA4B,iCAAiC;EACvE,UAAU;GAAE,MAAM;GAAO,UAAU;GAAW,UAAU;GAAW;EACnE,cAAc;EACf;CAED,MAAM,OAAO,MAAM,IAAI,eAAe,CAAC,SAAS,MAAM;CACtD,MAAM,UAAU,MAAM,IAAI,sBAAsB,CAAC,SAAS,MAAM;CAChE,MAAM,QAAQ,MAAM,IAAI,wBAAwB,CAAC,SAAS;EACxD;EACA,SAAS;EACV,CAAC;CACF,MAAM,SAAS,MAAM,IAAI,qBAAqB,CAAC,SAAS,MAAM;CAC9D,MAAM,MAAM,IAAI,cAAc,CAAC,SAAS,MAAM;AAE9C,QAAO,KAAK,4BAA4B;EACtC,WAAW,KAAK;EAChB,aAAa,QAAQ;EACrB,cAAc,MAAM;EACpB,aAAa,OAAO,KAAK,SAAS,KAAK,KAAK;EAC5C;EACD,CAAC"}
package/package.json CHANGED
@@ -1,9 +1,8 @@
1
1
  {
2
2
  "name": "@contractspec/example.content-generation",
3
- "version": "1.46.2",
3
+ "version": "1.47.0",
4
4
  "description": "Content generation example using @contractspec/lib.content-gen.",
5
5
  "type": "module",
6
- "main": "./dist/index.js",
7
6
  "types": "./dist/index.d.ts",
8
7
  "exports": {
9
8
  ".": "./dist/index.js",
@@ -27,14 +26,14 @@
27
26
  "test": "bun test"
28
27
  },
29
28
  "dependencies": {
30
- "@contractspec/lib.contracts": "1.46.2",
31
- "@contractspec/lib.content-gen": "1.46.2",
32
- "@contractspec/lib.logger": "1.46.2"
29
+ "@contractspec/lib.contracts": "1.47.0",
30
+ "@contractspec/lib.content-gen": "1.47.0",
31
+ "@contractspec/lib.logger": "1.47.0"
33
32
  },
34
33
  "devDependencies": {
35
- "@contractspec/tool.tsdown": "1.46.2",
36
- "@contractspec/tool.typescript": "1.46.2",
37
- "tsdown": "^0.18.3",
34
+ "@contractspec/tool.tsdown": "1.47.0",
35
+ "@contractspec/tool.typescript": "1.47.0",
36
+ "tsdown": "^0.19.0",
38
37
  "typescript": "^5.9.3"
39
38
  },
40
39
  "publishConfig": {
@@ -49,7 +48,6 @@
49
48
  },
50
49
  "registry": "https://registry.npmjs.org/"
51
50
  },
52
- "module": "./dist/index.js",
53
51
  "license": "MIT",
54
52
  "repository": {
55
53
  "type": "git",
package/src/example.ts CHANGED
@@ -1,6 +1,6 @@
1
- import type { ExampleSpec } from '@contractspec/lib.contracts';
1
+ import { defineExample } from '@contractspec/lib.contracts';
2
2
 
3
- const example: ExampleSpec = {
3
+ const example = defineExample({
4
4
  meta: {
5
5
  key: 'content-generation',
6
6
  version: '1.0.0',
@@ -27,6 +27,6 @@ const example: ExampleSpec = {
27
27
  studio: { enabled: true, installable: true },
28
28
  mcp: { enabled: true },
29
29
  },
30
- };
30
+ });
31
31
 
32
32
  export default example;