Skip to content

Commit 27b5356

Browse files
authored
v0.9.30: mship improvements, mcp tool and skill discovery, docs refinements
2 parents 10de126 + f839cc2 commit 27b5356

609 files changed

Lines changed: 39252 additions & 6308 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.github/actions/cache/action.yml‎

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,10 @@ inputs:
1212
path:
1313
description: Path to mount.
1414
required: true
15+
save-suffix:
16+
description: Appended to the actions/cache save key, for a job that must replace an entry another job of the same run already saved under that key. Sticky disks ignore it.
17+
required: false
18+
default: ''
1519

1620
# Predicates must stay the exact complement of the caller's runs-on — stickydisk
1721
# only runs on Blacksmith.
@@ -31,6 +35,6 @@ runs:
3135
if: inputs.provider != '' && inputs.provider != 'blacksmith'
3236
uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v5
3337
with:
34-
key: ${{ inputs.key }}-${{ github.run_id }}
38+
key: ${{ inputs.key }}-${{ github.run_id }}${{ inputs.save-suffix }}
3539
restore-keys: ${{ inputs.key }}-
3640
path: ${{ inputs.path }}

‎.github/workflows/checks.yml‎

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -469,6 +469,12 @@ jobs:
469469
clear_cache() {
470470
find "$GITHUB_WORKSPACE/apps/sim/.next/dev" -mindepth 1 -maxdepth 1 -exec rm -rf {} +
471471
}
472+
# A sticky disk keeps nothing from a failed job, so a clear here sticks only when the job
473+
# passes. The marker names the cache for desktop-live-cache-reset, which empties it after
474+
# a failed job; written on each panic, it survives the restart truncating the log.
475+
mark_cache_broken() {
476+
jq -r .version "$GITHUB_WORKSPACE/node_modules/next/package.json" > "$report_dir/turbopack-cache-broken"
477+
}
472478
# SIGINT first: `next dev` SIGKILLs its server 100ms after SIGTERM, which discards a cache
473479
# write in flight. stop-session.sh then removes anything still running.
474480
# SIGINT is best-effort; the cleanup always runs, since workers and the detached telemetry
@@ -490,6 +496,7 @@ jobs:
490496
wait "$server_pid" "$realtime_pid" 2>/dev/null || true
491497
if cache_broken; then
492498
echo "::warning::Turbopack reported a broken dev cache; clearing it for the next run."
499+
mark_cache_broken
493500
clear_cache
494501
fi
495502
exit "$status"
@@ -511,6 +518,7 @@ jobs:
511518
if [ "$retried" = 0 ] && cache_broken; then
512519
echo "::warning::Turbopack rejected the restored dev cache; restarting from an empty cache."
513520
bash "$GITHUB_WORKSPACE/.github/scripts/stop-session.sh" "$server_pid" "$server_tag"
521+
mark_cache_broken
514522
clear_cache
515523
: > "$next_log"
516524
retried=1
@@ -543,6 +551,63 @@ jobs:
543551
if-no-files-found: ignore
544552
retention-days: 7
545553

554+
# Empties a dev cache Turbopack panicked on in a failed desktop-live run. The run's own clear is
555+
# discarded with the rest of its failed job, so every later run would restore the same broken
556+
# cache and fail; emptied in this passing job, the empty cache is what the next run mounts. A
557+
# failure the cache did not cause leaves no marker, and the warm cache stays.
558+
desktop-live-cache-reset:
559+
name: desktop-live cache reset
560+
needs: desktop-live
561+
if: ${{ always() && needs.desktop-live.result == 'failure' }}
562+
runs-on: *runner-2vcpu
563+
timeout-minutes: 5
564+
steps:
565+
- name: Download desktop-live results
566+
uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
567+
with:
568+
pattern: desktop-live-e2e-results-*
569+
path: ${{ runner.temp }}/desktop-live
570+
merge-multiple: true
571+
572+
# The marker carries only the Next version; the rest of the key comes from this run's own
573+
# context, as in desktop-live, so a fork's marker can name no cache but its own.
574+
- name: Resolve the broken cache's key
575+
id: broken
576+
env:
577+
MARKER: ${{ runner.temp }}/desktop-live/turbopack-cache-broken
578+
FORK_SUFFIX: ${{ github.event.pull_request.head.repo.fork && '-fork' || '' }}
579+
run: |
580+
if [ ! -s "$MARKER" ]; then
581+
echo "No broken dev cache reported; keeping the warm cache."
582+
exit 0
583+
fi
584+
next_version="$(head -n 1 "$MARKER")"
585+
if ! [[ "$next_version" =~ ^[0-9]+\.[0-9]+\.[0-9]+[0-9A-Za-z.-]*$ ]]; then
586+
echo "::error::The broken cache marker holds no Next version: '$next_version'"
587+
exit 1
588+
fi
589+
echo "key=${GITHUB_REPOSITORY}-next-dev-desktop-live-${GITHUB_EVENT_NAME}${FORK_SUFFIX}-${next_version}" >> "$GITHUB_OUTPUT"
590+
591+
- *checkout-mirror
592+
- *checkout-plain
593+
594+
# A desktop-live leg that passed may have saved this run's actions/cache entry already; the
595+
# suffix gives the emptied cache its own, newer entry for the next run's prefix restore.
596+
- name: Mount the broken dev cache
597+
if: steps.broken.outputs.key != ''
598+
uses: ./.github/actions/cache
599+
with:
600+
provider: ${{ vars.CI_PROVIDER }}
601+
key: ${{ steps.broken.outputs.key }}
602+
path: ./apps/sim/.next/dev
603+
save-suffix: -reset
604+
605+
- name: Empty the dev cache
606+
if: steps.broken.outputs.key != ''
607+
run: |
608+
mkdir -p apps/sim/.next/dev
609+
find apps/sim/.next/dev -mindepth 1 -maxdepth 1 -exec rm -rf {} +
610+
546611
# Lint, audits, type-check and the schema sync check: about two minutes of mostly cached work,
547612
# kept off the test shards so neither waits on the other.
548613
lint:

‎apps/docs/COPY_AUDIT.md‎

Lines changed: 39 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
Audited from staging snapshot `4d2fa26f5de0532048487a94bbe1afc744500dfe`, beginning 2026-10-13. Rebased onto `origin/staging` at `9058427155` and reviewed the 20 intervening commits before final validation. The [editorial guide](EDITORIAL_GUIDE.md) defines the final voice, terminology, organization, media, and generated-source rules.
44

5-
## Scope and method
5+
## Original copy pass: scope and method
66

7-
The inventory contains **484 entries**: 153 authored MDX pages, 28 generated CLI references, and 303 generated API operations. One authored entry is the root redirect, leaving 483 readable routes. All 306 integration pages are excluded from copy changes, but their links and shared component/asset dependencies are checked.
7+
The inventory contains **484 entries**: 153 authored MDX pages, 28 generated CLI references, and 303 generated API operations. One authored entry is the root redirect, leaving 483 readable routes. That original pass excluded 306 integration pages from copy changes while checking their links and shared dependencies. The later complete integration review is recorded in [INTEGRATIONS_AUDIT.md](INTEGRATIONS_AUDIT.md).
88

99
Each section received a complete audit before rewriting. Reviewers read the entire assigned copy, retained a per-page ledger, compared consequential claims with the owning implementation, checked examples and limits, inspected local media, and used current primary documentation for external setup. Repeated generated schema prose was read once per unique value while retaining every operation-to-field relationship. This is a documentation accuracy review, not proof of a live hosted configuration or an exhaustive security review.
1010

@@ -14,7 +14,7 @@ Useful facts are retained or moved to a linked canonical owner. Changes remove r
1414

1515
The original copy often contained useful technical detail, but placed it behind repeated benefits, broad promises, FAQs, and screenshots of ordinary controls. Pages mixed concepts, setup, reference, and troubleshooting in different orders. The final standard uses a short task-focused opening, sentence-case headings, exact visible labels, and a consistent order for each page type. It preserves detailed references where brevity would hide a requirement or failure consequence.
1616

17-
## Coverage
17+
## Original copy pass: coverage
1818

1919
| Section | Entries | Disposition |
2020
| --- | ---: | --- |
@@ -72,6 +72,42 @@ The final source pass also reviewed the later Chat content-delivery gate, crawle
7272

7373
## Components and asset cleanup
7474

75+
### October 20 visual refinement
76+
77+
Current source inventory after staging sync: 490 MDX files, including 308 integration pages, and 33 article image uses. Counts in the dated follow-ups below describe the checks at that stage. The final font review removed the article and footer Season overrides: body copy and navigation retain the existing Inter family, while existing shared controls retain their established typography.
78+
79+
#### Final pre-ship review
80+
81+
- Removed the partial font-family change, verified the Browser settings bottom-edge crop, and checked that all 33 image uses match their overview/detail purpose. Removed two WebP substitutions that were larger than their originals; the media viewer retains source PNGs for zoom fidelity.
82+
- Rebased the documentation work onto current staging without unrelated release commits. Reviewed the newly added Help Scout reference, removed its repeated capability list and closing promotion, and retained authentication, webhook-signature, connector, and field details. Its action and trigger tables use the shared disclosures.
83+
- Current-source typography checks pass at 320, 390, 768, and 1280px across Desktop, Editor, and Help Scout, with matching article/navigation font families and no document overflow. The hydrated shared media viewer preserves its background at 125% zoom, closes with Escape or image activation, and restores focus to its trigger; desktop and phone layouts were inspected in a focused component preview.
84+
- React cleanup found no additional effect/state/query issues. API request panels stay mounted to avoid repeating syntax highlighting when switching languages; disclosure controls have 44px touch targets. Full repository validation remains assigned to CI.
85+
86+
#### Markdown examples follow-up
87+
88+
- Replaced the Files overview with a current Sim Desktop capture of Chat reviewing a Markdown release brief, including a real checklist, owner table, and JSON block. Added focused table-toolbar and code-control captures to the editor guide. The overview retains the bottom-edge crop; control details use the shared inset frame and architecture background. The Chat files guide keeps its simpler release-notes example.
89+
- Created a small fictional document through Chat and inspected the actual rendered output. Shortened its sample names and metadata before capture. No UI was fabricated, no file was publicly shared, and no integration or deployment settings changed.
90+
- Read both complete pages, kept their limits and access rules, and made the editor introduction include Chat. Verified the table's fixed header and disabled column resizing in the editor configuration, keyboard access to the table toolbar, and the JSON language control. Added the existing line-wrap and copy controls to the code-block instructions.
91+
- Both affected MDX pages compile. All 33 article image uses across 489 MDX source files resolve with matching dimensions. All 18 local links from these pages resolve, including the generated bulk-download API page verified in the browser. Files and Editor passed 44 page/theme/viewport checks at 320, 390, 639, 640, 767, 768, 1023, 1024, 1279, 1280, and 1536px, with no document overflow, unloaded images, or image distortion. Desktop and phone compositions were visually inspected.
92+
- Verification used the lightweight current-source preview. The final production build, full type checks, audits, and test suites remain deferred to CI; no heavy local checks were run.
93+
94+
#### Chat context follow-up
95+
96+
- Replaced standalone Files, Tables, and first-run overview captures with genuine Sim Desktop views that keep the conversation beside the resource. Files and workflow captures were taken again; Tables reuses the approved introduction's Chat/table composition. The grayscale scenery and bottom-edge crop remain intact. The file editor, connection picker, settings, and provider setup images retain focused views where their controls explain the task.
97+
- Applied the captures to Files, Tables, Getting started, Sim Desktop, and the Chat file/workflow guides. Getting started now leads with a concise Chat request and retains the complete manual builder procedure, model prerequisites, sample output, and failure recovery. Resource overviews link to their corresponding Chat guide.
98+
- Read the complete affected pages and shortened repetitive prompt lists across Chat's files, workflows, tables, knowledge, actions, and research guides. Kept permissions, content-withholding behavior, write-versus-result distinctions, scheduling/deployment semantics, limits, syntax, and recovery instructions. Removed a dated model-swap example without replacing it with an unverified model recommendation.
99+
- Verified the composer's **+** resource picker in Sim Desktop: selecting the example file adds its reference and opens the file beside Chat. The source's `handleContextAdd` and `resolveResourceFromContext` agree. Cleared the temporary composer reference without sending it or modifying the file. The workflow capture displays an existing successful execution; no workflow was deployed or rerun for this follow-up.
100+
- Lightweight checks: all 11 affected MDX pages compile; all 31 image uses across 489 source MDX files resolve with matching intrinsic dimensions; the docs manifest and `git diff --check` pass. Current-source previews use the actual shared components and prose styles. Browser checks cover 81 page/viewport combinations, including 320, 390, both sides of 640/768/1024/1280, and 1536px, with no document overflow or image distortion. Below-fold lazy images were checked after scrolling them into view. Light and dark captures were inspected.
101+
- This follow-up did not run a full local build or repository-wide tests, per request. The current-source preview is static and does not hydrate the media viewer; the existing production preview predates these final copy changes. Final production compilation and full test suites remain for CI.
102+
103+
The initial visual pass covered 489 MDX files, including integration references and the root redirect. Its 29 article screenshots used the shared branded `Image` treatment. Overview and result captures extend to the frame's bottom edge; focused controls and complete dialogs retain their inset. Current desktop captures now cover Chat, Getting started, Tables, Files, the editor toolbar, the connection picker, integrations, browser settings, and run logs. Retained provider and enterprise screenshots use optimized assets with verified intrinsic dimensions.
104+
105+
The remaining navigation cards on Workflows, Deployment, and Self-hosting became concise links or comparison tables. The Connections video depended on a configured CDN and rendered an empty frame in the local build; a current reference-picker capture replaces it. Its unused video component and URL helper were removed. The 39 interactive workflow examples remain where they explain execution or data flow.
106+
107+
Verification for this final pass: 56 affected MDX files compile; all 29 screenshot dimensions and source assets resolve; generated integration docs and the docs manifest are current; scoped formatting and diff checks pass. Browser checks cover eight representative updated pages at actual 320, 390, 768, and 1280-pixel widths, plus expanded reference tables, keyboard activation, and direct heading links. Current-source previews use the real MDX components and page tokens without a full Next build or client hydration. Full builds, type checks, and the repository test suite are deferred to CI at the user's request; earlier production checks below do not validate these later edits.
108+
109+
### Earlier copy pass
110+
75111
Shared navigation and API UI labels follow sentence case while preserving acronyms and product names. Authored tabs use a local wrapper around Fumadocs selection and keyboard behavior: mixed panels keep their inset, single code fences fill the frame, and mobile tab lists scroll with 44px targets. SSO provider anchors use native explicit triggers with `aria-controls` matching their panel IDs; keyboard navigation, selection, and bookmarked activation remain native. The shared tab frame uses the actual header/TOC row offset when scrolling a bookmarked panel into view. The compact drawer uses 30px visible chip faces within 44px mobile touch targets, aligned full-width dividers, and the shared section order. TOC/header rows reserve their actual heights at mobile/tablet breakpoints; prose wraps without changing intentional code/table scrolling. API method badges use existing platform surface and text tokens instead of custom color overrides. Integration MDX content remains unchanged. The final pass removes the unused ActionMedia component and its local styling, three unused workflow-preview definitions/exports, and 111 local media files (15,187,771 bytes). Every removed asset belonged to an originally reviewed page and had no basename consumer in current repository source, including integrations and application code. Shared components and media with other consumers remain. Remote media was removed from pages only; no remote assets were deleted.
76112

77113
FAQ answers were folded into their relevant sections. Callouts decreased from 234 to 117; authored Image/ActionImage and Video/ActionVideo instances decreased from 178 to 23. All 36 editorial placeholders were removed. These counts cover the 153 authored entries and exclude generated reference pages and integrations.

0 commit comments

Comments
 (0)