v0.9.3: home page alignment, confluence search, dead feature flag removals, library additions - #8326
Conversation
waleedlatif1
commented
Sep 26, 2026
- fix(search): align landing layout and history rows with Home (fix(search): align landing layout and history rows with Home #8317)
- fix(tabs): preserve readable labels in crowded tab strips (fix(tabs): preserve readable labels in crowded tab strips #8319)
- chore(flags): drop leftover references to the retired async projection flag (chore(flags): drop leftover references to the retired async projection flag #8320)
- fix(search): read Confluence pages through the v2 API the Search grant allows (fix(search): read Confluence pages through the v2 API the Search grant allows #8321)
- docs(library): update byok-multi-model-ai-agent-builder (docs(library): update byok-multi-model-ai-agent-builder #8323)
- docs(library): update best-ai-agent-platforms-for-enterprise-teams-2026 (docs(library): update best-ai-agent-platforms-for-enterprise-teams-2026 #8324)
* fix(search): align landing layout and history rows with Home * fix(search): keep cancellation available while editing the draft
* fix(tabs): preserve readable labels in crowded tab strips * fix(tabs): type layout checks and verify touch selection stability * fix(tabs): keep touch sizing stable across activity changes
…t allows (#8321) * fix(search): read Confluence pages through the v2 API the Search grant allows * fix(search): use search-response spaces for verification and fall back for legacy blog-post references * fix(search): fall back to blog posts only when the legacy page is missing * test(search): check that provider failures keep their HTTP status
Co-authored-by: Sim Pi Agent <pi@sim.ai>
…26 (#8324) Co-authored-by: Sim Pi Agent <pi@sim.ai>
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
|
| if (!spaceKey) { | ||
| const row = object( | ||
| await json( | ||
| `${api}/${document.kind === 'blogpost' ? 'blogposts' : 'pages'}/${segment(document.id)}` |
There was a problem hiding this comment.
Legacy blog posts remain unreadable
When someone opens a saved Confluence blog-post reference from before document kinds were recorded, this scope check requests /pages/{id} and stops on the 404. It runs before the document reader, so the reader’s new fallback to /blogposts/{id} never runs. Under a selected-space policy, the saved blog post cannot be opened.
Knowledge Base Used: Knowledge ingestion, access, and search
There was a problem hiding this comment.
1 issue found across 22 files
Confidence score: 3/5
- In
apps/sim/lib/sim-search/live/policy.ts, checking only the page endpoint can reject supported kind-less legacy blog-post references beforesession.read, blocking access; preserve the 404 fallback to the blog-post endpoint.
Prompt for AI agents (unresolved issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.
<file name="apps/sim/lib/sim-search/live/policy.ts">
<violation number="1" location="apps/sim/lib/sim-search/live/policy.ts:210">
P2: Kind-less live references are supported, but this check probes only the page endpoint, so legacy blog-post references fail authorization before `session.read`. Preserve the 404 fallback to the blog-post endpoint used by `readConfluence`.</violation>
</file>
Reply with feedback, questions, or to request a fix.
Fix all with cubic | Re-trigger cubic
| if (!spaceKey) { | ||
| const row = object( | ||
| await json( | ||
| `${api}/${document.kind === 'blogpost' ? 'blogposts' : 'pages'}/${segment(document.id)}` |
There was a problem hiding this comment.
P2: Kind-less live references are supported, but this check probes only the page endpoint, so legacy blog-post references fail authorization before session.read. Preserve the 404 fallback to the blog-post endpoint used by readConfluence.
Prompt for AI agents
Check if this issue is valid — if so, understand the root cause and fix it. At apps/sim/lib/sim-search/live/policy.ts, line 210:
<comment>Kind-less live references are supported, but this check probes only the page endpoint, so legacy blog-post references fail authorization before `session.read`. Preserve the 404 fallback to the blog-post endpoint used by `readConfluence`.</comment>
<file context>
@@ -200,14 +200,20 @@ export function createPolicyVerifier(
+ if (!spaceKey) {
+ const row = object(
+ await json(
+ `${api}/${document.kind === 'blogpost' ? 'blogposts' : 'pages'}/${segment(document.id)}`
+ )
)
</file context>
| aria-label={pending ? 'Searching' : 'Search'} | ||
| aria-busy={pending} | ||
| active={canSubmit} | ||
| onClick={() => (isSearching ? void queryClient.cancelQueries({ queryKey }) : submit())} |
There was a problem hiding this comment.
When a user edits the query while the current search is still running, the button now cancels that search instead of submitting the revised text. The user must click again after cancellation to run the new search; previously, they could submit it immediately.
Knowledge Base Used: Web application and product surfaces
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
There was a problem hiding this comment.
1 existing issue remains and no new issues found across 22 files
Confidence score: 3/5
- In
apps/sim/lib/sim-search/live/policy.ts, references withoutdocument.kindare checked only as pages, so supported legacy blogpost references can fail policy verification despite being readable; add the blogpost fallback or reusereadConfluence’s retry behavior.
Requires human review: Auto-approval blocked because this review re-detected 1 unresolved issue already reported by Cubic.
Re-trigger cubic