Skip to content

Commit dd5add6

Browse files
authored
v0.9.35: gpt 6.1 terra, sim search docs, audit logs drain
2 parents 0721dd6 + 093c50e commit dd5add6

53 files changed

Lines changed: 1267 additions & 423 deletions

Some content is hidden

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

‎.github/workflows/ci.yml‎

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ jobs:
213213
uses: aws-actions/amazon-ecr-login@03f1aad4c6c7ffd436567f42f9384779290529bd # v2
214214

215215
- name: Login to Docker Hub
216-
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
216+
uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
217217
with:
218218
username: ${{ secrets.DOCKERHUB_USERNAME }}
219219
password: ${{ secrets.DOCKERHUB_TOKEN }}
@@ -365,14 +365,14 @@ jobs:
365365
uses: aws-actions/amazon-ecr-login@03f1aad4c6c7ffd436567f42f9384779290529bd # v2
366366

367367
- name: Login to Docker Hub
368-
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
368+
uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
369369
with:
370370
username: ${{ secrets.DOCKERHUB_USERNAME }}
371371
password: ${{ secrets.DOCKERHUB_TOKEN }}
372372

373373
- name: Login to GHCR
374374
if: github.ref == 'refs/heads/main'
375-
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
375+
uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
376376
with:
377377
registry: ghcr.io
378378
username: ${{ github.repository_owner }}
@@ -671,10 +671,11 @@ jobs:
671671
# push: a push that never deployed, or whose submission failed, would otherwise drop its
672672
# changed URLs for good. The check-runs lookup asks for this one check per commit, so it
673673
# stays small and counts every attempt of a re-run; a lookup that errors counts as no
674-
# success. With no success in view, the base is the oldest run in view, so URLs that no
675-
# submission ever covered are sent now. The diff needs only the two trees, so that one
676-
# commit is fetched alone; an all-zero `before` (the branch's first push) has no base,
677-
# which the script skips.
674+
# success. With no success in view, the base is the first parent of the oldest run in view,
675+
# so URLs that no submission ever covered, that run's own included, are sent now; a failed
676+
# parent lookup fails the step, so the next run retries from the same base. The diff
677+
# needs only the two trees, so that one commit is fetched alone; an all-zero `before` (the
678+
# branch's first push) has no base, which the script skips.
678679
- name: Submit changed URLs to IndexNow
679680
env:
680681
GH_TOKEN: ${{ github.token }}
@@ -691,7 +692,10 @@ jobs:
691692
fi
692693
done < <(gh api "repos/$GITHUB_REPOSITORY/actions/workflows/ci.yml/runs?branch=main&event=push&per_page=30" \
693694
--jq ".workflow_runs[] | select(.id < $GITHUB_RUN_ID) | .head_sha")
694-
BASE_SHA="${BASE_SHA:-${OLDEST_SHA:-$PUSH_BEFORE}}"
695+
if [[ -z "$BASE_SHA" && -n "$OLDEST_SHA" ]]; then
696+
BASE_SHA="$(gh api "repos/$GITHUB_REPOSITORY/commits/$OLDEST_SHA" --jq '.parents[0].sha // empty')"
697+
fi
698+
BASE_SHA="${BASE_SHA:-$PUSH_BEFORE}"
695699
echo "Submitting URLs changed in $BASE_SHA..$GITHUB_SHA"
696700
if [[ ! "$BASE_SHA" =~ ^0+$ ]]; then
697701
git fetch --no-tags --depth=1 origin "$BASE_SHA"
@@ -750,7 +754,7 @@ jobs:
750754
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v6
751755

752756
- name: Login to GHCR
753-
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
757+
uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
754758
with:
755759
registry: ghcr.io
756760
username: ${{ github.repository_owner }}
@@ -804,7 +808,7 @@ jobs:
804808

805809
steps:
806810
- name: Login to GHCR
807-
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
811+
uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
808812
with:
809813
registry: ghcr.io
810814
username: ${{ github.repository_owner }}
@@ -888,7 +892,7 @@ jobs:
888892
count: ${{ steps.resolve.outputs.count }}
889893
steps:
890894
- name: Login to GHCR
891-
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
895+
uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
892896
with:
893897
registry: ghcr.io
894898
username: ${{ github.repository_owner }}
@@ -1069,7 +1073,7 @@ jobs:
10691073

10701074
steps:
10711075
- name: Login to GHCR
1072-
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
1076+
uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
10731077
with:
10741078
registry: ghcr.io
10751079
username: ${{ github.repository_owner }}

‎.github/workflows/helm.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -277,7 +277,7 @@ jobs:
277277
# oras also reads ~/.docker/config.json, so this one login covers both the
278278
# chart push and the Artifact Hub metadata push below.
279279
- name: Login to GHCR
280-
uses: docker/login-action@dbcb813823bdd20940b903addbd779551569679f # v4
280+
uses: docker/login-action@81c6f93d4bc991e510b342a00b419b3bb4efc5c6 # v4
281281
with:
282282
registry: ghcr.io
283283
username: ${{ github.repository_owner }}

‎.github/workflows/publish-python-sdk.yml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
persist-credentials: false
2727

2828
- name: Setup Python
29-
uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
29+
uses: actions/setup-python@6d4fd22b20465ccc0f7354476588e8df7c9ca0e0 # v7.1.0
3030
with:
3131
python-version: '3.12'
3232
cache: 'pip'

‎apps/docs/content/docs/integrations/tailscale.mdx‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1138,7 +1138,7 @@ Get tailnet settings
11381138
| ↳ `devicesKeyDurationDays` | number | The \[key expiry\]\(/docs/features/access-control/key-expiry\) duration for devices on this tailnet |
11391139
| ↳ `usersApprovalOn` | boolean | Whether \[user approval\]\(/docs/features/access-control/user-approval\) is enabled for this tailnet |
11401140
| ↳ `usersRoleAllowedToJoinExternalTailnets` | string | Which user roles are allowed to \[join external tailnets\]\(/docs/features/sharing/how-to/invite-any-user\) |
1141-
| ↳ `networkFlowLoggingOn` | boolean | Whether \[network flog logs\]\(/docs/features/logging/network-flow-logs\) are enabled for the tailnet |
1141+
| ↳ `networkFlowLoggingOn` | boolean | Whether \[network flow logs\]\(/docs/features/logging/network-flow-logs\) are enabled for the tailnet |
11421142
| ↳ `regionalRoutingOn` | boolean | Whether \[regional routing\]\(/docs/features/route-selection#regional-routing\) is enabled for the tailnet |
11431143
| ↳ `routeSelection` | string | The \[route selection\]\(/docs/features/route-selection\) algorithm used by the tailnet: * `active-passive-failover` - Active-passive failover \(formerly known as "Failover"\) * `regional-routing` - Regional routing * `regional-routing-failover` - Regional routing with in-region failover * `magicroute` - MagicRoute A PATCH request must not specify both the `regionalRoutingOn` and `routeSelection` fields |
11441144
| ↳ `postureIdentityCollectionOn` | boolean | Whether \[identity collection\]\(/docs/features/access-control/device-management/how-to/manage-identity\) is enabled for \[device posture\]\(/docs/features/device-posture\) integrations for the tailnet |
@@ -1173,7 +1173,7 @@ Update selected tailnet settings
11731173
| ↳ `devicesKeyDurationDays` | number | The \[key expiry\]\(/docs/features/access-control/key-expiry\) duration for devices on this tailnet |
11741174
| ↳ `usersApprovalOn` | boolean | Whether \[user approval\]\(/docs/features/access-control/user-approval\) is enabled for this tailnet |
11751175
| ↳ `usersRoleAllowedToJoinExternalTailnets` | string | Which user roles are allowed to \[join external tailnets\]\(/docs/features/sharing/how-to/invite-any-user\) |
1176-
| ↳ `networkFlowLoggingOn` | boolean | Whether \[network flog logs\]\(/docs/features/logging/network-flow-logs\) are enabled for the tailnet |
1176+
| ↳ `networkFlowLoggingOn` | boolean | Whether \[network flow logs\]\(/docs/features/logging/network-flow-logs\) are enabled for the tailnet |
11771177
| ↳ `regionalRoutingOn` | boolean | Whether \[regional routing\]\(/docs/features/route-selection#regional-routing\) is enabled for the tailnet |
11781178
| ↳ `routeSelection` | string | The \[route selection\]\(/docs/features/route-selection\) algorithm used by the tailnet: * `active-passive-failover` - Active-passive failover \(formerly known as "Failover"\) * `regional-routing` - Regional routing * `regional-routing-failover` - Regional routing with in-region failover * `magicroute` - MagicRoute A PATCH request must not specify both the `regionalRoutingOn` and `routeSelection` fields |
11791179
| ↳ `postureIdentityCollectionOn` | boolean | Whether \[identity collection\]\(/docs/features/access-control/device-management/how-to/manage-identity\) is enabled for \[device posture\]\(/docs/features/device-posture\) integrations for the tailnet |

‎apps/docs/content/docs/meta.json‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,13 @@
55
"./introduction/index",
66
"./getting-started/index",
77
"./desktop/index",
8+
"---Sim Search---",
9+
"search",
810
"---Build---",
911
"chat",
1012
"workflows",
1113
"agents",
1214
"---Workspace---",
13-
"search",
1415
"knowledgebase",
1516
"tables",
1617
"files",

‎apps/docs/content/docs/platform/enterprise/audit-logs.mdx‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,8 @@ Events use identifiers such as `resource.action`. These categories are represent
105105

106106
Authentication failures and password-reset requests use an anonymous actor and record the target account separately. Impersonation and administrative session revocations identify the operator and target organization. Table-row mutations record summaries and counts without copying row contents.
107107

108+
When a workflow run makes the same kind of change to a table many times in quick succession, such as inserting rows in a loop, the repeats are merged into one `table.updated` entry. The merged entry keeps every row ID in `metadata.rowIds`, sums the counts, and records in `metadata.rollup` how many changes it covers and when the first and last happened. The actor of any workflow-made entry names the workflow (`metadata.actor.workflowId`) and the run (`metadata.actor.executionId`). Credential use by a workflow run is merged the same way: one `credential.accessed` entry per credential, counting the repeats, that names the workflow (`metadata.workflowId`) and the run (`metadata.executionId`).
109+
108110
Most audit writes are best effort: an outage or process loss can prevent persistence after an action succeeds. Deployment activation uses an awaited, idempotent insert before its outbox checkpoint. The feed is not a complete tool-call stream or a guaranteed transactional ledger for every operation.
109111

110112
The interface and API provide no audit-entry editing or deletion. Database administrators can alter stored records, and entries are not cryptographically sealed. Use a drain to retain your own archive.
Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
---
2+
title: Ask questions
3+
description: Get answers from your connected apps, check the sources, and ask follow-up questions.
4+
---
5+
6+
import { Image } from '@/components/ui/image'
7+
8+
Ask Sim a question when you want an explanation, a summary, or an answer drawn from your connected apps. Keep the conversation open as you check the sources and ask follow-ups.
9+
10+
Your organization must enable Search and make a source available to you. [Connect your account](/search/connect-your-account) if that source requires a personal connection.
11+
12+
## Ask your first question
13+
14+
1. Open **Home** in the organization sidebar. From a workspace, open the workspace menu and select **Back to organization** first.
15+
2. If Home shows a conversation-mode menu, choose **Search** before sending your first message. Members without builder access start in Search automatically and can ask immediately.
16+
3. Ask a specific question and press **Enter**.
17+
18+
For example:
19+
20+
> What belongs in a product requirements document? Use the Confluence template and cite it. Keep the answer to three short bullets.
21+
22+
<Image
23+
src="/static/search/answer-with-citations.webp"
24+
alt="A Search conversation answering a question about a product requirements template, with inline Confluence citations and a source count below the answer"
25+
width={1512}
26+
height={900}
27+
variant="result"
28+
background="san-francisco"
29+
/>
30+
31+
Include the project, topic, or timeframe that matters. If you know where the answer lives, name the app or document:
32+
33+
> Find our launch plan in Confluence. Summarize the scope and the launch date, with sources.
34+
35+
Search mode finds and reads information. You can also ask it to [draft content from the findings](/search/ask-questions#draft-from-your-sources); the draft stays in the conversation until you choose where to use it.
36+
37+
## Check the sources
38+
39+
Select an inline citation to open the supporting document. To review the conversation's references together:
40+
41+
1. Select the book icon and source count beneath the answer.
42+
2. Select **View all sources** to open the **Sources** panel beside the conversation.
43+
3. Select a source title to open the original.
44+
45+
Check the source's date and context before relying on a detail. If documents disagree, ask Sim to compare them and identify the difference. If the answer is incomplete, narrow the question or name another source to check.
46+
47+
## Follow up in the same conversation
48+
49+
You don't need to repeat the original question. Ask for the next useful detail:
50+
51+
> Turn the template's sections into a short checklist of information I need to gather.
52+
53+
> What belongs in the out-of-scope section?
54+
55+
> Which parts are filled in, and which are still placeholders?
56+
57+
Review the cited material for each answer. A summary can miss context, and an unavailable source can leave a gap. Sim can only retrieve content allowed by your account and the organization's source settings.
58+
59+
## Summarize and compare
60+
61+
Specify what you want extracted, rather than just “summarize this.”
62+
63+
| Task | Example prompt |
64+
| --- | --- |
65+
| Compare options | “Compare these two vendor proposals against our evaluation requirements. Cite the evidence and distinguish missing information from requirements a vendor does not meet.” |
66+
| Catch up on a project | “Summarize Atlas updates from the past two weeks. Separate decisions, blockers, and next steps. Include owners only where the sources name them, and cite each item.” |
67+
| Find an owner | “Who owns the launch checklist? Cite the document that assigns responsibility.” |
68+
| Resolve a disagreement | “These documents give different dates. Compare their context and identify what is confirmed.” |
69+
| Understand a decision | “Find the decision about Atlas authentication. Summarize the options, chosen approach, and trade-offs. Distinguish final decisions from proposals and cite the decision record.” |
70+
| Find troubleshooting steps | “Find our SSO sign-in troubleshooting guide. Summarize the checks in order, cite the source, and identify when to escalate.” |
71+
| Understand a policy | “What does our travel policy say about hotels and meals? Cite the policy sections, identify regional differences, and flag cases it doesn't address.” |
72+
| Compare feedback with a proposal | “Compare onboarding feedback with the new proposal. Show each need, whether the proposal addresses it, and the supporting source. Mark gaps explicitly.” |
73+
74+
Follow up with “Which decisions changed an earlier plan?” or “Turn the gaps into questions for our review.”
75+
76+
If the sources don't assign an owner or confirm a date, ask Sim to say so. Include the timeframe you care about, and distinguish a document's update date from the event it describes. A live search is still subject to provider freshness and retrieval limits.
77+
78+
## Prepare for a meeting
79+
80+
Connect Google Calendar and the apps that hold your team's documents, such as Confluence and Google Drive. Then ask Sim to bring the meeting details and relevant project context together:
81+
82+
> Find the Atlas readiness review on November 16, 2026 in my calendar. Use the Atlas project pages in Confluence and the readiness update and pilot feedback in Google Drive to prepare a brief: meeting time, decisions needed, open questions, and what I should read beforehand. Cite the sources.
83+
84+
Use your own meeting name and date. Naming the meeting and its related documents helps Sim find the right context. If you need a particular time zone, include it in the request.
85+
86+
Follow up with “Turn the open questions into a proposed agenda” or “Which items need an update from each owner?” Check the event citation for scheduling details and the document citations for project facts. The proposed agenda is a draft; it doesn't change the calendar event.
87+
88+
<Image
89+
src="/static/search/atlas-readiness-brief.webp"
90+
alt="Atlas readiness brief showing the November 16 meeting at 10:00–10:30 AM Pacific with a Google Calendar citation"
91+
width={1470}
92+
height={470}
93+
variant="result"
94+
background="ridges"
95+
/>
96+
97+
## Draft from your sources
98+
99+
Once you've checked the findings, ask Sim to turn them into a brief, update, email, FAQ, or presentation outline in the same conversation. Include the **source material, audience, format, and constraints**:
100+
101+
> Using the Atlas launch brief and approved rollout decision, draft an internal launch announcement for customer success. Keep it under 200 words. Include what is changing, who it affects, and what the team needs to do. Keep source references next to factual claims and mark unconfirmed details as questions.
102+
103+
If you haven't found the evidence yet, ask Sim to retrieve it first. You can combine retrieval and drafting in one request when the scope is clear.
104+
105+
<Image
106+
src="/static/search/launch-update-draft.webp"
107+
alt="A refined Atlas launch update with links to the Google Drive launch brief and readiness update beside the supporting claims"
108+
width={1470}
109+
height={1000}
110+
variant="result"
111+
background="architecture"
112+
/>
113+
114+
Continue with specific revisions:
115+
116+
- “Cut this to half the length without losing the action items or source links.”
117+
- “Separate confirmed facts from proposed next steps.”
118+
- “Use the tone of this approved example: [paste an example].”
119+
- “Turn this product overview into an FAQ for customer-facing teams. Cite each answer and list questions the overview doesn't resolve.”
120+
- “Turn this into a six-slide outline with a title, three key points, and supporting sources for each slide.”
121+
122+
Provide a style example or brand guidance when consistency matters. Check names, numbers, dates, links, and commitments against the sources. For an external audience, include only information intended for that audience and keep internal supporting material separate for your review.
123+
124+
Copy the reviewed draft into the app where you want to use it. Search creates text in your conversation; it doesn't send or publish the draft or change source records.
125+
126+
## Start from a document
127+
128+
If you already found the right document in **Search**, open its **…** menu and select **Summarize**. Sim starts a conversation focused on that result. Continue with questions about its decisions, dates, or next steps.
129+
130+
You can also paste a relevant excerpt or attach an image to add context. Search conversations accept images; retrieve PDF or spreadsheet content through connected sources.
131+
132+
Your conversations remain private to you. Copying a source link does not give someone else access to the original document.
133+
134+
## Related docs
135+
136+
- [Find content](/search/find-content): Search directly, filter results, and reopen recent sources.
137+
- [Connect your account](/search/connect-your-account): Check source connections and recover access.
138+
- [Use Sim Search in Slack](/search/slack#use-sim-search-in-slack): Ask questions from Slack when your organization has enabled it.

0 commit comments

Comments
 (0)