@forgehive/forge-cli 0.2.6 → 0.2.8

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.
@@ -140,21 +140,15 @@ exports.run = (0, task_1.createTask)(schema, boundaries, async function ({ descr
140
140
  catch (_error) {
141
141
  // if the tape is not found, create a new one on saving
142
142
  }
143
- tape.recordFrom(descriptorName, task);
144
143
  // Run the task with provided arguments
145
- let result, error;
146
- try {
147
- result = await task.run(args);
148
- }
149
- catch (e) {
150
- error = e;
151
- }
144
+ const [result, error, record] = await task.safeRun(args);
145
+ const logItem = tape.push(descriptorName, record, {
146
+ environment: 'cli'
147
+ });
152
148
  await tape.save();
153
- const logItems = tape.getLog();
154
- const lastLogItem = logItems[logItems.length - 1];
155
149
  if (profile) {
156
150
  try {
157
- await sendLogToAPI(profile, projectName, descriptorName, lastLogItem);
151
+ await sendLogToAPI(profile, projectName, descriptorName, logItem);
158
152
  }
159
153
  catch (e) {
160
154
  console.error('Failed to send log to API:', e);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forgehive/forge-cli",
3
- "version": "0.2.6",
3
+ "version": "0.2.8",
4
4
  "description": "TypeScript CLI application",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
@@ -10,10 +10,10 @@
10
10
  "publishConfig": {
11
11
  "access": "public",
12
12
  "dependencies": {
13
- "@forgehive/record-tape": "^0.0.1",
14
- "@forgehive/runner": "^0.1.4",
13
+ "@forgehive/record-tape": "^0.1.1",
14
+ "@forgehive/runner": "^0.1.7",
15
15
  "@forgehive/schema": "^0.1.4",
16
- "@forgehive/task": "^0.1.6",
16
+ "@forgehive/task": "^0.1.7",
17
17
  "esbuild": "^0.25.0",
18
18
  "handlebars": "^4.7.8",
19
19
  "minimist": "^1.2.8"
@@ -25,10 +25,10 @@
25
25
  "esbuild": "^0.25.0",
26
26
  "handlebars": "^4.7.8",
27
27
  "minimist": "^1.2.8",
28
- "@forgehive/record-tape": "0.0.3",
29
- "@forgehive/runner": "0.1.6",
28
+ "@forgehive/runner": "0.1.7",
30
29
  "@forgehive/schema": "0.1.4",
31
- "@forgehive/task": "0.1.6"
30
+ "@forgehive/record-tape": "0.1.1",
31
+ "@forgehive/task": "0.1.7"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@types/jest": "^29.5.3",
@@ -166,23 +166,16 @@ export const run = createTask(
166
166
  // if the tape is not found, create a new one on saving
167
167
  }
168
168
 
169
- tape.recordFrom(descriptorName, task)
170
-
171
169
  // Run the task with provided arguments
172
- let result, error
173
- try {
174
- result = await task.run(args)
175
- } catch (e) {
176
- error = e as Error
177
- }
178
-
170
+ const [result, error, record] = await task.safeRun(args)
171
+ const logItem = tape.push(descriptorName, record, {
172
+ environment: 'cli'
173
+ })
179
174
  await tape.save()
180
- const logItems = tape.getLog()
181
- const lastLogItem = logItems[logItems.length - 1]
182
175
 
183
176
  if (profile) {
184
177
  try {
185
- await sendLogToAPI(profile, projectName, descriptorName, lastLogItem)
178
+ await sendLogToAPI(profile, projectName, descriptorName, logItem)
186
179
  } catch (e) {
187
180
  console.error('Failed to send log to API:', e)
188
181
  }