You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
improvement(logfire): scope block outputs per operation and refresh brand chrome (#6178)
* improvement(logfire): scope block outputs per operation and refresh brand chrome
- gate each block output on the operations that actually return it
- swap in the official Logfire mark, black tile with brand-magenta bare icon
- move host to advanced mode and alphabetize the tool registry entries
- add track-logfire-llm-cost and verify-logfire-token-target skills
* fix(logfire): honor numeric-string limits and surface token validity fields
- accept a numeric-string limit so agent-invoked calls stop silently
falling back to Logfire's 100-row default
- keep an hour-only UTC offset intact instead of producing +05Z
- surface expiresAt and spendingCapReachedAt on Get Token Info
- document pending_span as a fourth record kind
* chore(logfire): regenerate tool metadata and document the step in the skill
- regenerate apps/sim/tools/generated/tool-outputs.ts, which CI's
tool-metadata:check requires after a tool output change
- add the regeneration step and artifact-diff guidance to the
validate-integration skill so the gate stops being missed
* chore(skills): sync validate-integration projections
Copy file name to clipboardExpand all lines: .agents/skills/validate-integration/SKILL.md
+24-3Lines changed: 24 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -295,13 +295,31 @@ Group findings by severity:
295
295
296
296
After reporting, fix every **critical** and **warning** issue. Apply **suggestions** where they don't add unnecessary complexity.
297
297
298
+
### Regenerate Derived Artifacts
299
+
300
+
Several files are generated from tool and block definitions. Editing a tool or block WITHOUT regenerating them fails CI, so run these before pushing:
301
+
302
+
```bash
303
+
bun run tool-metadata:generate # repo root — apps/sim/tools/generated/*
304
+
cd apps/sim && bun run generate-docs # docs .mdx + lib/integrations/integrations.json + docs icons
305
+
```
306
+
307
+
-**`tool-metadata:generate`** — required whenever a tool's `outputs`, `params`, or descriptions change. CI enforces this with `bun run tool-metadata:check`, which fails with *"Generated tool metadata is stale"*. This is the easiest gate to miss, because nothing in the tool file hints that a generated artifact mirrors it.
308
+
-**`generate-docs`** — required whenever block metadata changes (`bgColor`, `name`, `description`, operations, outputs). Regenerates the integration `.mdx`, `integrations.json`, and the docs copy of `components/icons.tsx`.
309
+
310
+
**Always diff the regen output before committing.** These generators rewrite every file they own, so they will also sweep in unrelated drift that accumulated on the base branch — pages losing sections, unrelated icons appearing. Keep only the hunks belonging to the integration under validation and `git checkout --` the rest, otherwise an unrelated doc regression rides along in the PR. Verify no page was silently dropped by comparing the directory listing before and after.
311
+
312
+
If an icon changed, `apps/sim/components/icons.tsx` is the source of truth and `apps/docs/components/icons.tsx` is its generated mirror — they must end up byte-identical for that component.
313
+
298
314
### Validation Output
299
315
300
316
After fixing, confirm:
301
317
1.`bun run lint` passes with no fixes needed
302
-
2. TypeScript compiles clean (no type errors)
303
-
3. Re-read all modified files to verify fixes are correct
304
-
4. Any remaining unknown response schemas were explicitly reported to the user instead of guessed
318
+
2. TypeScript compiles clean (no type errors) — check the error list is empty for the files you touched; pre-existing unrelated errors in a worktree usually mean workspace packages resolve to the main checkout
319
+
3. The integration's tests pass, and any test you added actually fails without its fix (revert it once and watch it go red)
320
+
4. Derived artifacts regenerated and their diffs reviewed (see above)
321
+
5. Re-read all modified files to verify fixes are correct
322
+
6. Any remaining unknown response schemas were explicitly reported to the user instead of guessed
305
323
306
324
## Checklist Summary
307
325
@@ -322,5 +340,8 @@ After fixing, confirm:
322
340
-[ ] Validated `{Service}BlockMeta` exported with at least 7 templates
323
341
-[ ] Reported all issues grouped by severity
324
342
-[ ] Fixed all critical and warning issues
343
+
-[ ] Ran `bun run tool-metadata:generate` if any tool outputs/params changed, and confirmed `bun run tool-metadata:check` passes
344
+
-[ ] Ran `bun run generate-docs` if any block metadata changed, and reverted unrelated drift the generator swept in
Copy file name to clipboardExpand all lines: .claude/commands/validate-integration.md
+24-3Lines changed: 24 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -294,13 +294,31 @@ Group findings by severity:
294
294
295
295
After reporting, fix every **critical** and **warning** issue. Apply **suggestions** where they don't add unnecessary complexity.
296
296
297
+
### Regenerate Derived Artifacts
298
+
299
+
Several files are generated from tool and block definitions. Editing a tool or block WITHOUT regenerating them fails CI, so run these before pushing:
300
+
301
+
```bash
302
+
bun run tool-metadata:generate # repo root — apps/sim/tools/generated/*
303
+
cd apps/sim && bun run generate-docs # docs .mdx + lib/integrations/integrations.json + docs icons
304
+
```
305
+
306
+
-**`tool-metadata:generate`** — required whenever a tool's `outputs`, `params`, or descriptions change. CI enforces this with `bun run tool-metadata:check`, which fails with *"Generated tool metadata is stale"*. This is the easiest gate to miss, because nothing in the tool file hints that a generated artifact mirrors it.
307
+
-**`generate-docs`** — required whenever block metadata changes (`bgColor`, `name`, `description`, operations, outputs). Regenerates the integration `.mdx`, `integrations.json`, and the docs copy of `components/icons.tsx`.
308
+
309
+
**Always diff the regen output before committing.** These generators rewrite every file they own, so they will also sweep in unrelated drift that accumulated on the base branch — pages losing sections, unrelated icons appearing. Keep only the hunks belonging to the integration under validation and `git checkout --` the rest, otherwise an unrelated doc regression rides along in the PR. Verify no page was silently dropped by comparing the directory listing before and after.
310
+
311
+
If an icon changed, `apps/sim/components/icons.tsx` is the source of truth and `apps/docs/components/icons.tsx` is its generated mirror — they must end up byte-identical for that component.
312
+
297
313
### Validation Output
298
314
299
315
After fixing, confirm:
300
316
1.`bun run lint` passes with no fixes needed
301
-
2. TypeScript compiles clean (no type errors)
302
-
3. Re-read all modified files to verify fixes are correct
303
-
4. Any remaining unknown response schemas were explicitly reported to the user instead of guessed
317
+
2. TypeScript compiles clean (no type errors) — check the error list is empty for the files you touched; pre-existing unrelated errors in a worktree usually mean workspace packages resolve to the main checkout
318
+
3. The integration's tests pass, and any test you added actually fails without its fix (revert it once and watch it go red)
319
+
4. Derived artifacts regenerated and their diffs reviewed (see above)
320
+
5. Re-read all modified files to verify fixes are correct
321
+
6. Any remaining unknown response schemas were explicitly reported to the user instead of guessed
304
322
305
323
## Checklist Summary
306
324
@@ -321,5 +339,8 @@ After fixing, confirm:
321
339
-[ ] Validated `{Service}BlockMeta` exported with at least 7 templates
322
340
-[ ] Reported all issues grouped by severity
323
341
-[ ] Fixed all critical and warning issues
342
+
-[ ] Ran `bun run tool-metadata:generate` if any tool outputs/params changed, and confirmed `bun run tool-metadata:check` passes
343
+
-[ ] Ran `bun run generate-docs` if any block metadata changed, and reverted unrelated drift the generator swept in
Copy file name to clipboardExpand all lines: .cursor/commands/validate-integration.md
+24-3Lines changed: 24 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -289,13 +289,31 @@ Group findings by severity:
289
289
290
290
After reporting, fix every **critical** and **warning** issue. Apply **suggestions** where they don't add unnecessary complexity.
291
291
292
+
### Regenerate Derived Artifacts
293
+
294
+
Several files are generated from tool and block definitions. Editing a tool or block WITHOUT regenerating them fails CI, so run these before pushing:
295
+
296
+
```bash
297
+
bun run tool-metadata:generate # repo root — apps/sim/tools/generated/*
298
+
cd apps/sim && bun run generate-docs # docs .mdx + lib/integrations/integrations.json + docs icons
299
+
```
300
+
301
+
-**`tool-metadata:generate`** — required whenever a tool's `outputs`, `params`, or descriptions change. CI enforces this with `bun run tool-metadata:check`, which fails with *"Generated tool metadata is stale"*. This is the easiest gate to miss, because nothing in the tool file hints that a generated artifact mirrors it.
302
+
-**`generate-docs`** — required whenever block metadata changes (`bgColor`, `name`, `description`, operations, outputs). Regenerates the integration `.mdx`, `integrations.json`, and the docs copy of `components/icons.tsx`.
303
+
304
+
**Always diff the regen output before committing.** These generators rewrite every file they own, so they will also sweep in unrelated drift that accumulated on the base branch — pages losing sections, unrelated icons appearing. Keep only the hunks belonging to the integration under validation and `git checkout --` the rest, otherwise an unrelated doc regression rides along in the PR. Verify no page was silently dropped by comparing the directory listing before and after.
305
+
306
+
If an icon changed, `apps/sim/components/icons.tsx` is the source of truth and `apps/docs/components/icons.tsx` is its generated mirror — they must end up byte-identical for that component.
307
+
292
308
### Validation Output
293
309
294
310
After fixing, confirm:
295
311
1.`bun run lint` passes with no fixes needed
296
-
2. TypeScript compiles clean (no type errors)
297
-
3. Re-read all modified files to verify fixes are correct
298
-
4. Any remaining unknown response schemas were explicitly reported to the user instead of guessed
312
+
2. TypeScript compiles clean (no type errors) — check the error list is empty for the files you touched; pre-existing unrelated errors in a worktree usually mean workspace packages resolve to the main checkout
313
+
3. The integration's tests pass, and any test you added actually fails without its fix (revert it once and watch it go red)
314
+
4. Derived artifacts regenerated and their diffs reviewed (see above)
315
+
5. Re-read all modified files to verify fixes are correct
316
+
6. Any remaining unknown response schemas were explicitly reported to the user instead of guessed
299
317
300
318
## Checklist Summary
301
319
@@ -316,5 +334,8 @@ After fixing, confirm:
316
334
-[ ] Validated `{Service}BlockMeta` exported with at least 7 templates
317
335
-[ ] Reported all issues grouped by severity
318
336
-[ ] Fixed all critical and warning issues
337
+
-[ ] Ran `bun run tool-metadata:generate` if any tool outputs/params changed, and confirmed `bun run tool-metadata:check` passes
338
+
-[ ] Ran `bun run generate-docs` if any block metadata changed, and reverted unrelated drift the generator swept in
<path d='M 741.496094 539.726562 L 398.203125 63.890625 C 387.398438 49.039062 362.480469 49.039062 351.789062 63.890625 L 8.492188 539.726562 C 6.746094 542.160156 5.414062 544.804688 4.496094 547.65625 C 3.578125 550.511719 3.117188 553.4375 3.117188 556.433594 C 3.117188 557.929688 3.238281 559.414062 3.472656 560.890625 C 3.703125 562.371094 4.050781 563.820312 4.511719 565.242188 C 4.972656 566.664062 5.539062 568.042969 6.214844 569.378906 C 6.890625 570.710938 7.667969 571.984375 8.542969 573.199219 C 9.417969 574.410156 10.378906 575.550781 11.433594 576.613281 C 12.484375 577.675781 13.613281 578.648438 14.816406 579.535156 C 16.023438 580.421875 17.289062 581.207031 18.617188 581.898438 C 19.941406 582.585938 21.316406 583.167969 22.734375 583.640625 L 366.03125 695.972656 L 366.085938 695.972656 C 368.96875 696.914062 371.921875 697.382812 374.953125 697.382812 C 377.984375 697.382812 380.941406 696.914062 383.824219 695.972656 L 383.875 695.972656 L 727.175781 583.644531 C 729.316406 582.953125 731.347656 582.015625 733.265625 580.839844 C 735.183594 579.660156 736.941406 578.273438 738.527344 576.679688 C 740.117188 575.082031 741.496094 573.324219 742.667969 571.398438 C 743.835938 569.476562 744.765625 567.441406 745.449219 565.296875 C 746.15625 563.15625 746.601562 560.96875 746.785156 558.722656 C 746.96875 556.480469 746.882812 554.246094 746.53125 552.023438 C 746.183594 549.796875 745.574219 547.644531 744.710938 545.566406 C 743.84375 543.488281 742.746094 541.542969 741.414062 539.726562 Z M 375.011719 129.460938 L 512.605469 320.195312 L 383.929688 278.105469 C 382.941406 277.78125 381.882812 277.835938 380.894531 277.597656 C 379.917969 277.355469 378.933594 277.195312 377.933594 277.113281 C 376.945312 276.976562 376 276.601562 375.011719 276.601562 C 374.015625 276.601562 373.097656 276.976562 372.101562 277.113281 C 371.109375 277.21875 370.121094 277.382812 369.152344 277.597656 C 368.128906 277.785156 367.082031 277.785156 366.167969 278.105469 L 238.269531 319.953125 L 237.460938 320.222656 L 375.070312 129.453125 L 375.015625 129.453125 Z M 180.597656 398.976562 L 330.394531 349.929688 L 346.386719 344.71875 L 346.386719 629.386719 L 77.804688 541.472656 Z M 403.65625 629.332031 L 403.65625 344.71875 L 569.445312 398.976562 L 672.246094 541.390625 L 403.628906 629.332031 Z M 403.65625 629.332031 ' />
0 commit comments