@warpgogol/forge 0.13.0 → 0.15.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.
Files changed (57) hide show
  1. package/AGENTS.md +4 -3
  2. package/README.md +58 -5
  3. package/dist/bin/cli.js +0 -0
  4. package/dist/os/core/core.module.d.ts.map +1 -1
  5. package/dist/os/core/core.module.js +10 -0
  6. package/dist/os/core/core.module.js.map +1 -1
  7. package/dist/os/rfc/handlers/shared.d.ts.map +1 -1
  8. package/dist/os/rfc/handlers/shared.js +12 -6
  9. package/dist/os/rfc/handlers/shared.js.map +1 -1
  10. package/dist/os/rfc/index.d.ts +1 -1
  11. package/dist/os/rfc/index.d.ts.map +1 -1
  12. package/dist/os/rfc/index.js +1 -1
  13. package/dist/os/rfc/index.js.map +1 -1
  14. package/dist/os/rfc/types.d.ts +2 -1
  15. package/dist/os/rfc/types.d.ts.map +1 -1
  16. package/dist/os/rfc/types.js +2 -1
  17. package/dist/os/rfc/types.js.map +1 -1
  18. package/dist/os/spec/spec-materialize.d.ts.map +1 -1
  19. package/dist/os/spec/spec-materialize.js +4 -10
  20. package/dist/os/spec/spec-materialize.js.map +1 -1
  21. package/dist/src/onboarding/create.d.ts.map +1 -1
  22. package/dist/src/onboarding/create.js +5 -2
  23. package/dist/src/onboarding/create.js.map +1 -1
  24. package/dist/src/onboarding/doctor.d.ts.map +1 -1
  25. package/dist/src/onboarding/doctor.js +38 -0
  26. package/dist/src/onboarding/doctor.js.map +1 -1
  27. package/dist/src/onboarding/invariant-engine.d.ts.map +1 -1
  28. package/dist/src/onboarding/invariant-engine.js +52 -1
  29. package/dist/src/onboarding/invariant-engine.js.map +1 -1
  30. package/dist/src/onboarding/scaffold-project.d.ts.map +1 -1
  31. package/dist/src/onboarding/scaffold-project.js +25 -5
  32. package/dist/src/onboarding/scaffold-project.js.map +1 -1
  33. package/dist/src/profiles/profile-schema.d.ts +77 -1
  34. package/dist/src/profiles/profile-schema.d.ts.map +1 -1
  35. package/dist/src/profiles/profile-schema.js +39 -2
  36. package/dist/src/profiles/profile-schema.js.map +1 -1
  37. package/dist/src/profiles/stack-profile.d.ts +27 -0
  38. package/dist/src/profiles/stack-profile.d.ts.map +1 -1
  39. package/dist/src/profiles/stack-profile.js +4 -0
  40. package/dist/src/profiles/stack-profile.js.map +1 -1
  41. package/package.json +162 -60
  42. package/profiles/editframe-templates/composition-agents.md +70 -0
  43. package/profiles/editframe-templates/composition.tsx +33 -0
  44. package/profiles/editframe-templates/html-composition-agents.md +62 -0
  45. package/profiles/{editframe-html.yaml → editframe.yaml} +203 -38
  46. package/skills/fo/ef-brand-video-generator/SKILL.md +101 -0
  47. package/skills/fo/ef-composition/SKILL.md +147 -0
  48. package/skills/fo/ef-composition-review/SKILL.md +66 -0
  49. package/skills/fo/ef-dev-server/SKILL.md +107 -0
  50. package/skills/fo/ef-editor-gui/SKILL.md +131 -0
  51. package/skills/fo/ef-motion-design/SKILL.md +118 -0
  52. package/skills/fo/ef-onboard/SKILL.md +77 -0
  53. package/skills/fo/ef-render-verify/SKILL.md +56 -0
  54. package/skills/fo/ef-webhooks/SKILL.md +95 -0
  55. package/skills/fo/fo-session-retro/SKILL.md +2 -2
  56. package/profiles/editframe-html-templates/composition-agents.md +0 -34
  57. package/profiles/editframe-html-templates/composition.html +0 -32
@@ -63,16 +63,21 @@ export declare const profileInvariantCheckSchema: z.ZodObject<{
63
63
  "filename-pattern": "filename-pattern";
64
64
  "file-contains": "file-contains";
65
65
  "file-not-contains": "file-not-contains";
66
+ "attribute-pattern": "attribute-pattern";
66
67
  }>;
67
68
  glob: z.ZodOptional<z.ZodString>;
68
69
  pattern: z.ZodOptional<z.ZodString>;
69
70
  negatedPattern: z.ZodOptional<z.ZodString>;
71
+ elements: z.ZodOptional<z.ZodArray<z.ZodString>>;
72
+ attribute: z.ZodOptional<z.ZodString>;
70
73
  }, z.core.$strip>;
71
74
  export interface ProfileInvariantCheck {
72
- kind: "filename-pattern" | "file-contains" | "file-not-contains";
75
+ kind: "filename-pattern" | "file-contains" | "file-not-contains" | "attribute-pattern";
73
76
  glob?: string;
74
77
  pattern?: string;
75
78
  negatedPattern?: string;
79
+ elements?: string[];
80
+ attribute?: string;
76
81
  }
77
82
  export declare const profileInvariantSchema: z.ZodObject<{
78
83
  id: z.ZodString;
@@ -86,10 +91,13 @@ export declare const profileInvariantSchema: z.ZodObject<{
86
91
  "filename-pattern": "filename-pattern";
87
92
  "file-contains": "file-contains";
88
93
  "file-not-contains": "file-not-contains";
94
+ "attribute-pattern": "attribute-pattern";
89
95
  }>;
90
96
  glob: z.ZodOptional<z.ZodString>;
91
97
  pattern: z.ZodOptional<z.ZodString>;
92
98
  negatedPattern: z.ZodOptional<z.ZodString>;
99
+ elements: z.ZodOptional<z.ZodArray<z.ZodString>>;
100
+ attribute: z.ZodOptional<z.ZodString>;
93
101
  }, z.core.$strip>>;
94
102
  }, z.core.$strip>;
95
103
  export interface ProfileInvariant {
@@ -156,6 +164,47 @@ export interface ProfileRelease {
156
164
  prefix: string;
157
165
  };
158
166
  }
167
+ export declare const profilePrerequisiteSchema: z.ZodObject<{
168
+ id: z.ZodString;
169
+ name: z.ZodString;
170
+ check: z.ZodString;
171
+ installHint: z.ZodOptional<z.ZodString>;
172
+ severity: z.ZodDefault<z.ZodEnum<{
173
+ error: "error";
174
+ warning: "warning";
175
+ }>>;
176
+ }, z.core.$strip>;
177
+ export interface ProfilePrerequisite {
178
+ id: string;
179
+ name: string;
180
+ check: string;
181
+ installHint?: string;
182
+ severity: "error" | "warning";
183
+ }
184
+ export declare const profileTemplateSchema: z.ZodObject<{
185
+ id: z.ZodString;
186
+ default: z.ZodOptional<z.ZodBoolean>;
187
+ firstWorkspace: z.ZodObject<{
188
+ path: z.ZodString;
189
+ files: z.ZodArray<z.ZodObject<{
190
+ path: z.ZodString;
191
+ content: z.ZodString;
192
+ }, z.core.$strip>>;
193
+ install: z.ZodDefault<z.ZodArray<z.ZodString>>;
194
+ }, z.core.$strip>;
195
+ }, z.core.$strip>;
196
+ export interface ProfileTemplate {
197
+ id: string;
198
+ default?: boolean;
199
+ firstWorkspace: {
200
+ path: string;
201
+ files: Array<{
202
+ path: string;
203
+ content: string;
204
+ }>;
205
+ install: string[];
206
+ };
207
+ }
159
208
  export declare const stackProfileDomainFieldsSchema: z.ZodObject<{
160
209
  domain: z.ZodOptional<z.ZodString>;
161
210
  terminology: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
@@ -201,10 +250,13 @@ export declare const stackProfileDomainFieldsSchema: z.ZodObject<{
201
250
  "filename-pattern": "filename-pattern";
202
251
  "file-contains": "file-contains";
203
252
  "file-not-contains": "file-not-contains";
253
+ "attribute-pattern": "attribute-pattern";
204
254
  }>;
205
255
  glob: z.ZodOptional<z.ZodString>;
206
256
  pattern: z.ZodOptional<z.ZodString>;
207
257
  negatedPattern: z.ZodOptional<z.ZodString>;
258
+ elements: z.ZodOptional<z.ZodArray<z.ZodString>>;
259
+ attribute: z.ZodOptional<z.ZodString>;
208
260
  }, z.core.$strip>>;
209
261
  }, z.core.$strip>>>;
210
262
  register: z.ZodOptional<z.ZodEnum<{
@@ -239,6 +291,28 @@ export declare const stackProfileDomainFieldsSchema: z.ZodObject<{
239
291
  prefix: z.ZodDefault<z.ZodString>;
240
292
  }, z.core.$strip>>;
241
293
  }, z.core.$strip>>;
294
+ prerequisites: z.ZodOptional<z.ZodArray<z.ZodObject<{
295
+ id: z.ZodString;
296
+ name: z.ZodString;
297
+ check: z.ZodString;
298
+ installHint: z.ZodOptional<z.ZodString>;
299
+ severity: z.ZodDefault<z.ZodEnum<{
300
+ error: "error";
301
+ warning: "warning";
302
+ }>>;
303
+ }, z.core.$strip>>>;
304
+ templates: z.ZodOptional<z.ZodArray<z.ZodObject<{
305
+ id: z.ZodString;
306
+ default: z.ZodOptional<z.ZodBoolean>;
307
+ firstWorkspace: z.ZodObject<{
308
+ path: z.ZodString;
309
+ files: z.ZodArray<z.ZodObject<{
310
+ path: z.ZodString;
311
+ content: z.ZodString;
312
+ }, z.core.$strip>>;
313
+ install: z.ZodDefault<z.ZodArray<z.ZodString>>;
314
+ }, z.core.$strip>;
315
+ }, z.core.$strip>>>;
242
316
  }, z.core.$strip>;
243
317
  export interface StackProfileDomainFields {
244
318
  domain?: string;
@@ -250,5 +324,7 @@ export interface StackProfileDomainFields {
250
324
  devServer?: ProfileDevServer;
251
325
  assets?: ProfileAsset;
252
326
  release?: ProfileRelease;
327
+ prerequisites?: ProfilePrerequisite[];
328
+ templates?: ProfileTemplate[];
253
329
  }
254
330
  //# sourceMappingURL=profile-schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile-schema.d.ts","sourceRoot":"","sources":["../../../src/profiles/profile-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profile-schema.d.ts","sourceRoot":"","sources":["../../../src/profiles/profile-schema.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,9 @@
12
12
  <item>RFC-0675: add profileInvariantCheckSchema and check field to profileInvariantSchema for enforcement.</item>
13
13
  <item>RFC-0679: add profileAssetSchema and assets field for asset management commands.</item>
14
14
  <item>RFC-0680: add profileReleaseSchema and release field for release lifecycle commands.</item>
15
+ <item>RFC-0694: replace html-attribute-pattern with attribute-pattern (elements array) for HTML+JSX support.</item>
16
+ <item>Add prerequisites field for profile-declared system dependency checks (e.g. FFmpeg).</item>
17
+ <item>Add templates field for multi-template profiles (e.g. React + HTML).</item>
15
18
  </CHANGE_SUMMARY>
16
19
  */
17
20
  import { z } from "zod";
@@ -78,11 +81,18 @@ export const profileWorkspaceTypeSchema = z.object({
78
81
  // ---------------------------------------------------------------------------
79
82
  // Profile invariant schema
80
83
  // ---------------------------------------------------------------------------
81
- export const profileInvariantCheckSchema = z.object({
82
- kind: z.enum(["filename-pattern", "file-contains", "file-not-contains"]),
84
+ export const profileInvariantCheckSchema = z
85
+ .object({
86
+ kind: z.enum(["filename-pattern", "file-contains", "file-not-contains", "attribute-pattern"]),
83
87
  glob: z.string().optional(),
84
88
  pattern: z.string().optional(),
85
89
  negatedPattern: z.string().optional(),
90
+ elements: z.array(z.string()).optional(),
91
+ attribute: z.string().optional(),
92
+ })
93
+ .refine((v) => v.kind !== "attribute-pattern" ||
94
+ (v.elements != null && v.elements.length > 0 && v.attribute != null && v.pattern != null), {
95
+ message: "elements (non-empty array), attribute, and pattern are required for kind: attribute-pattern",
86
96
  });
87
97
  export const profileInvariantSchema = z.object({
88
98
  id: z
@@ -130,6 +140,31 @@ export const profileReleaseSchema = z.object({
130
140
  .optional(),
131
141
  });
132
142
  // ---------------------------------------------------------------------------
143
+ // Profile prerequisite schema
144
+ // ---------------------------------------------------------------------------
145
+ export const profilePrerequisiteSchema = z.object({
146
+ id: z.string().min(1),
147
+ name: z.string().min(1),
148
+ check: z.string().min(1),
149
+ installHint: z.string().optional(),
150
+ severity: z.enum(["error", "warning"]).default("error"),
151
+ });
152
+ // ---------------------------------------------------------------------------
153
+ // Profile template schema (multi-template profiles)
154
+ // ---------------------------------------------------------------------------
155
+ export const profileTemplateSchema = z.object({
156
+ id: z.string().min(1),
157
+ default: z.boolean().optional(),
158
+ firstWorkspace: z.object({
159
+ path: z.string().min(1),
160
+ files: z.array(z.object({
161
+ path: z.string().min(1),
162
+ content: z.string(),
163
+ })),
164
+ install: z.array(z.string()).default([]),
165
+ }),
166
+ });
167
+ // ---------------------------------------------------------------------------
133
168
  // Stack profile domain fields
134
169
  // ---------------------------------------------------------------------------
135
170
  export const stackProfileDomainFieldsSchema = z.object({
@@ -142,5 +177,7 @@ export const stackProfileDomainFieldsSchema = z.object({
142
177
  devServer: profileDevServerSchema.optional(),
143
178
  assets: profileAssetSchema.optional(),
144
179
  release: profileReleaseSchema.optional(),
180
+ prerequisites: z.array(profilePrerequisiteSchema).optional(),
181
+ templates: z.array(profileTemplateSchema).optional(),
145
182
  });
146
183
  //# sourceMappingURL=profile-schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"profile-schema.js","sourceRoot":"","sources":["../../../src/profiles/profile-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profile-schema.js","sourceRoot":"","sources":["../../../src/profiles/profile-schema.ts"],"names":[],"mappings":"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"}
@@ -67,10 +67,13 @@ export declare const stackProfileSchema: z.ZodObject<{
67
67
  "filename-pattern": "filename-pattern";
68
68
  "file-contains": "file-contains";
69
69
  "file-not-contains": "file-not-contains";
70
+ "attribute-pattern": "attribute-pattern";
70
71
  }>;
71
72
  glob: z.ZodOptional<z.ZodString>;
72
73
  pattern: z.ZodOptional<z.ZodString>;
73
74
  negatedPattern: z.ZodOptional<z.ZodString>;
75
+ elements: z.ZodOptional<z.ZodArray<z.ZodString>>;
76
+ attribute: z.ZodOptional<z.ZodString>;
74
77
  }, z.core.$strip>>;
75
78
  }, z.core.$strip>>>;
76
79
  register: z.ZodOptional<z.ZodEnum<{
@@ -105,6 +108,28 @@ export declare const stackProfileSchema: z.ZodObject<{
105
108
  prefix: z.ZodDefault<z.ZodString>;
106
109
  }, z.core.$strip>>;
107
110
  }, z.core.$strip>>;
111
+ prerequisites: z.ZodOptional<z.ZodArray<z.ZodObject<{
112
+ id: z.ZodString;
113
+ name: z.ZodString;
114
+ check: z.ZodString;
115
+ installHint: z.ZodOptional<z.ZodString>;
116
+ severity: z.ZodDefault<z.ZodEnum<{
117
+ error: "error";
118
+ warning: "warning";
119
+ }>>;
120
+ }, z.core.$strip>>>;
121
+ templates: z.ZodOptional<z.ZodArray<z.ZodObject<{
122
+ id: z.ZodString;
123
+ default: z.ZodOptional<z.ZodBoolean>;
124
+ firstWorkspace: z.ZodObject<{
125
+ path: z.ZodString;
126
+ files: z.ZodArray<z.ZodObject<{
127
+ path: z.ZodString;
128
+ content: z.ZodString;
129
+ }, z.core.$strip>>;
130
+ install: z.ZodDefault<z.ZodArray<z.ZodString>>;
131
+ }, z.core.$strip>;
132
+ }, z.core.$strip>>>;
108
133
  }, z.core.$strip>;
109
134
  export interface ProfileFile {
110
135
  path: string;
@@ -127,6 +152,8 @@ export interface StackProfile extends StackProfileDomainFields {
127
152
  files: ProfileFile[];
128
153
  install: string[];
129
154
  };
155
+ prerequisites?: import("./profile-schema.ts").ProfilePrerequisite[];
156
+ templates?: import("./profile-schema.ts").ProfileTemplate[];
130
157
  }
131
158
  export declare function loadStackProfile(profilePath: string): StackProfile;
132
159
  export declare function listStackProfiles(forgeRoot: string): StackProfile[];
@@ -1 +1 @@
1
- {"version":3,"file":"stack-profile.d.ts","sourceRoot":"","sources":["../../../src/profiles/stack-profile.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAkC,KAAK,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAMpG,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0C7B,CAAC;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAa,SAAQ,wBAAwB;IAC5D,MAAM,EAAE,uBAAuB,CAAC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC5B,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,KAAK,EAAE,WAAW,EAAE,CAAC;KACtB,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,CAAC,EAAE;QACf,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,WAAW,EAAE,CAAC;QACrB,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;CACH;AAMD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,CAkBlE;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,EAAE,CAiBnE;AAMD,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,GAAG,IAAI,CAO9F"}
1
+ {"version":3,"file":"stack-profile.d.ts","sourceRoot":"","sources":["../../../src/profiles/stack-profile.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAkC,KAAK,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAMpG,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA8C7B,CAAC;AAEH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAa,SAAQ,wBAAwB;IAC5D,MAAM,EAAE,uBAAuB,CAAC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC5B,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,EAAE,CAAC;QACf,KAAK,EAAE,WAAW,EAAE,CAAC;KACtB,CAAC;IACF,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,CAAC,EAAE;QACf,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,WAAW,EAAE,CAAC;QACrB,OAAO,EAAE,MAAM,EAAE,CAAC;KACnB,CAAC;IACF,aAAa,CAAC,EAAE,OAAO,qBAAqB,EAAE,mBAAmB,EAAE,CAAC;IACpE,SAAS,CAAC,EAAE,OAAO,qBAAqB,EAAE,eAAe,EAAE,CAAC;CAC7D;AAMD,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY,CAkBlE;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,EAAE,CAiBnE;AAMD,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,GAAG,YAAY,GAAG,IAAI,CAO9F"}
@@ -60,6 +60,10 @@ export const stackProfileSchema = z.object({
60
60
  assets: stackProfileDomainFieldsSchema.shape.assets,
61
61
  // RFC-0680: Release lifecycle declaration
62
62
  release: stackProfileDomainFieldsSchema.shape.release,
63
+ // Prerequisites: system-level dependency checks (e.g. FFmpeg)
64
+ prerequisites: stackProfileDomainFieldsSchema.shape.prerequisites,
65
+ // Templates: multi-template profiles (e.g. React + HTML)
66
+ templates: stackProfileDomainFieldsSchema.shape.templates,
63
67
  });
64
68
  // ---------------------------------------------------------------------------
65
69
  // Loader
@@ -1 +1 @@
1
- {"version":3,"file":"stack-profile.js","sourceRoot":"","sources":["../../../src/profiles/stack-profile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stack-profile.js","sourceRoot":"","sources":["../../../src/profiles/stack-profile.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@warpgogol/forge",
3
- "version": "0.13.0",
3
+ "version": "0.15.0",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -15,107 +15,107 @@
15
15
  "framework"
16
16
  ],
17
17
  "homepage": "https://warpgogol.com",
18
- "main": "./dist/src/index.js",
19
- "types": "./dist/src/index.d.ts",
18
+ "main": "./src/index.ts",
19
+ "types": "./src/index.ts",
20
20
  "bin": {
21
21
  "forge": "./bin/cli.js"
22
22
  },
23
23
  "exports": {
24
24
  ".": {
25
- "types": "./dist/src/index.d.ts",
26
- "default": "./dist/src/index.js"
25
+ "types": "./src/index.ts",
26
+ "default": "./src/index.ts"
27
27
  },
28
28
  "./types": {
29
- "types": "./dist/src/types.d.ts",
30
- "default": "./dist/src/types.js"
29
+ "types": "./src/types.ts",
30
+ "default": "./src/types.ts"
31
31
  },
32
32
  "./utils": {
33
- "types": "./dist/src/utils/index.d.ts",
34
- "default": "./dist/src/utils/index.js"
33
+ "types": "./src/utils/index.ts",
34
+ "default": "./src/utils/index.ts"
35
35
  },
36
36
  "./config": {
37
- "types": "./dist/src/config/forge-config.d.ts",
38
- "default": "./dist/src/config/forge-config.js"
37
+ "types": "./src/config/forge-config.ts",
38
+ "default": "./src/config/forge-config.ts"
39
39
  },
40
40
  "./os/core": {
41
- "types": "./dist/os/core/core.module.d.ts",
42
- "default": "./dist/os/core/core.module.js"
41
+ "types": "./os/core/core.module.ts",
42
+ "default": "./os/core/core.module.ts"
43
43
  },
44
44
  "./os/compass": {
45
- "types": "./dist/os/compass/index.d.ts",
46
- "default": "./dist/os/compass/index.js"
45
+ "types": "./os/compass/index.ts",
46
+ "default": "./os/compass/index.ts"
47
47
  },
48
48
  "./os/naming": {
49
- "types": "./dist/os/naming/index.d.ts",
50
- "default": "./dist/os/naming/index.js"
49
+ "types": "./os/naming/index.ts",
50
+ "default": "./os/naming/index.ts"
51
51
  },
52
52
  "./os/naming-module": {
53
- "types": "./dist/os/naming/naming.module.d.ts",
54
- "default": "./dist/os/naming/naming.module.js"
53
+ "types": "./os/naming/naming.module.ts",
54
+ "default": "./os/naming/naming.module.ts"
55
55
  },
56
56
  "./os/rfc": {
57
- "types": "./dist/os/rfc/index.d.ts",
58
- "default": "./dist/os/rfc/index.js"
57
+ "types": "./os/rfc/index.ts",
58
+ "default": "./os/rfc/index.ts"
59
59
  },
60
60
  "./os/rfc-module": {
61
- "types": "./dist/os/rfc/rfc.module.d.ts",
62
- "default": "./dist/os/rfc/rfc.module.js"
61
+ "types": "./os/rfc/rfc.module.ts",
62
+ "default": "./os/rfc/rfc.module.ts"
63
63
  },
64
64
  "./os/werkstatt": {
65
- "types": "./dist/os/werkstatt/index.d.ts",
66
- "default": "./dist/os/werkstatt/index.js"
65
+ "types": "./os/werkstatt/index.ts",
66
+ "default": "./os/werkstatt/index.ts"
67
67
  },
68
68
  "./os/workflow": {
69
- "types": "./dist/os/workflow/index.d.ts",
70
- "default": "./dist/os/workflow/index.js"
69
+ "types": "./os/workflow/index.ts",
70
+ "default": "./os/workflow/index.ts"
71
71
  },
72
72
  "./os/workflow-module": {
73
- "types": "./dist/os/workflow/workflow.module.d.ts",
74
- "default": "./dist/os/workflow/workflow.module.js"
73
+ "types": "./os/workflow/workflow.module.ts",
74
+ "default": "./os/workflow/workflow.module.ts"
75
75
  },
76
76
  "./os/spec-module": {
77
- "types": "./dist/os/spec/spec.module.d.ts",
78
- "default": "./dist/os/spec/spec.module.js"
77
+ "types": "./os/spec/spec.module.ts",
78
+ "default": "./os/spec/spec.module.ts"
79
79
  },
80
80
  "./os/adr": {
81
- "types": "./dist/os/adr/index.d.ts",
82
- "default": "./dist/os/adr/index.js"
81
+ "types": "./os/adr/index.ts",
82
+ "default": "./os/adr/index.ts"
83
83
  },
84
84
  "./os/adr-module": {
85
- "types": "./dist/os/adr/adr.module.d.ts",
86
- "default": "./dist/os/adr/adr.module.js"
85
+ "types": "./os/adr/adr.module.ts",
86
+ "default": "./os/adr/adr.module.ts"
87
87
  },
88
88
  "./os/plan": {
89
- "types": "./dist/os/plan/index.d.ts",
90
- "default": "./dist/os/plan/index.js"
89
+ "types": "./os/plan/index.ts",
90
+ "default": "./os/plan/index.ts"
91
91
  },
92
92
  "./os/plan-module": {
93
- "types": "./dist/os/plan/plan.module.d.ts",
94
- "default": "./dist/os/plan/plan.module.js"
93
+ "types": "./os/plan/plan.module.ts",
94
+ "default": "./os/plan/plan.module.ts"
95
95
  },
96
96
  "./os/audit": {
97
- "types": "./dist/os/audit/index.d.ts",
98
- "default": "./dist/os/audit/index.js"
97
+ "types": "./os/audit/index.ts",
98
+ "default": "./os/audit/index.ts"
99
99
  },
100
100
  "./os/audit-module": {
101
- "types": "./dist/os/audit/audit.module.d.ts",
102
- "default": "./dist/os/audit/audit.module.js"
101
+ "types": "./os/audit/audit.module.ts",
102
+ "default": "./os/audit/audit.module.ts"
103
103
  },
104
104
  "./os/session": {
105
- "types": "./dist/os/session/index.d.ts",
106
- "default": "./dist/os/session/index.js"
105
+ "types": "./os/session/index.ts",
106
+ "default": "./os/session/index.ts"
107
107
  },
108
108
  "./os/session-module": {
109
- "types": "./dist/os/session/session.module.d.ts",
110
- "default": "./dist/os/session/session.module.js"
109
+ "types": "./os/session/session.module.ts",
110
+ "default": "./os/session/session.module.ts"
111
111
  },
112
112
  "./os/mission": {
113
- "types": "./dist/os/mission/index.d.ts",
114
- "default": "./dist/os/mission/index.js"
113
+ "types": "./os/mission/index.ts",
114
+ "default": "./os/mission/index.ts"
115
115
  },
116
116
  "./os/mission-module": {
117
- "types": "./dist/os/mission/mission.module.d.ts",
118
- "default": "./dist/os/mission/mission.module.js"
117
+ "types": "./os/mission/mission.module.ts",
118
+ "default": "./os/mission/mission.module.ts"
119
119
  }
120
120
  },
121
121
  "files": [
@@ -129,6 +129,15 @@
129
129
  "README.md",
130
130
  "LICENSE"
131
131
  ],
132
+ "scripts": {
133
+ "build": "pnpm exec tsc -p tsconfig.json",
134
+ "build:check": "pnpm exec tsc -p tsconfig.json --noEmit",
135
+ "clean": "rm -rf dist",
136
+ "prepublishOnly": "pnpm run clean && pnpm run build && node scripts/publish-check.mjs && node scripts/strip-workspace-deps.mjs",
137
+ "postpublish": "git checkout -- ./package.json",
138
+ "test": "vitest run --passWithNoTests",
139
+ "test:watch": "vitest"
140
+ },
132
141
  "dependencies": {
133
142
  "@aws-sdk/client-s3": "^3.700.0",
134
143
  "trash": "^10.1.1",
@@ -145,13 +154,106 @@
145
154
  "node": ">=20.0.0"
146
155
  },
147
156
  "publishConfig": {
148
- "access": "public"
149
- },
150
- "scripts": {
151
- "build": "pnpm exec tsc -p tsconfig.json",
152
- "build:check": "pnpm exec tsc -p tsconfig.json --noEmit",
153
- "clean": "rm -rf dist",
154
- "test": "vitest run --passWithNoTests",
155
- "test:watch": "vitest"
157
+ "access": "public",
158
+ "main": "./dist/src/index.js",
159
+ "types": "./dist/src/index.d.ts",
160
+ "exports": {
161
+ ".": {
162
+ "types": "./dist/src/index.d.ts",
163
+ "default": "./dist/src/index.js"
164
+ },
165
+ "./types": {
166
+ "types": "./dist/src/types.d.ts",
167
+ "default": "./dist/src/types.js"
168
+ },
169
+ "./utils": {
170
+ "types": "./dist/src/utils/index.d.ts",
171
+ "default": "./dist/src/utils/index.js"
172
+ },
173
+ "./config": {
174
+ "types": "./dist/src/config/forge-config.d.ts",
175
+ "default": "./dist/src/config/forge-config.js"
176
+ },
177
+ "./os/core": {
178
+ "types": "./dist/os/core/core.module.d.ts",
179
+ "default": "./dist/os/core/core.module.js"
180
+ },
181
+ "./os/compass": {
182
+ "types": "./dist/os/compass/index.d.ts",
183
+ "default": "./dist/os/compass/index.js"
184
+ },
185
+ "./os/naming": {
186
+ "types": "./dist/os/naming/index.d.ts",
187
+ "default": "./dist/os/naming/index.js"
188
+ },
189
+ "./os/naming-module": {
190
+ "types": "./dist/os/naming/naming.module.d.ts",
191
+ "default": "./dist/os/naming/naming.module.js"
192
+ },
193
+ "./os/rfc": {
194
+ "types": "./dist/os/rfc/index.d.ts",
195
+ "default": "./dist/os/rfc/index.js"
196
+ },
197
+ "./os/rfc-module": {
198
+ "types": "./dist/os/rfc/rfc.module.d.ts",
199
+ "default": "./dist/os/rfc/rfc.module.js"
200
+ },
201
+ "./os/werkstatt": {
202
+ "types": "./dist/os/werkstatt/index.d.ts",
203
+ "default": "./dist/os/werkstatt/index.js"
204
+ },
205
+ "./os/workflow": {
206
+ "types": "./dist/os/workflow/index.d.ts",
207
+ "default": "./dist/os/workflow/index.js"
208
+ },
209
+ "./os/workflow-module": {
210
+ "types": "./dist/os/workflow/workflow.module.d.ts",
211
+ "default": "./dist/os/workflow/workflow.module.js"
212
+ },
213
+ "./os/spec-module": {
214
+ "types": "./dist/os/spec/spec.module.d.ts",
215
+ "default": "./dist/os/spec/spec.module.js"
216
+ },
217
+ "./os/adr": {
218
+ "types": "./dist/os/adr/index.d.ts",
219
+ "default": "./dist/os/adr/index.js"
220
+ },
221
+ "./os/adr-module": {
222
+ "types": "./dist/os/adr/adr.module.d.ts",
223
+ "default": "./dist/os/adr/adr.module.js"
224
+ },
225
+ "./os/plan": {
226
+ "types": "./dist/os/plan/index.d.ts",
227
+ "default": "./dist/os/plan/index.js"
228
+ },
229
+ "./os/plan-module": {
230
+ "types": "./dist/os/plan/plan.module.d.ts",
231
+ "default": "./dist/os/plan/plan.module.js"
232
+ },
233
+ "./os/audit": {
234
+ "types": "./dist/os/audit/index.d.ts",
235
+ "default": "./dist/os/audit/index.js"
236
+ },
237
+ "./os/audit-module": {
238
+ "types": "./dist/os/audit/audit.module.d.ts",
239
+ "default": "./dist/os/audit/audit.module.js"
240
+ },
241
+ "./os/session": {
242
+ "types": "./dist/os/session/index.d.ts",
243
+ "default": "./dist/os/session/index.js"
244
+ },
245
+ "./os/session-module": {
246
+ "types": "./dist/os/session/session.module.d.ts",
247
+ "default": "./dist/os/session/session.module.js"
248
+ },
249
+ "./os/mission": {
250
+ "types": "./dist/os/mission/index.d.ts",
251
+ "default": "./dist/os/mission/index.js"
252
+ },
253
+ "./os/mission-module": {
254
+ "types": "./dist/os/mission/mission.module.d.ts",
255
+ "default": "./dist/os/mission/mission.module.js"
256
+ }
257
+ }
156
258
  }
157
- }
259
+ }