claude code agent 227
388894c257
fix(client): stop findBreadcrumbPath mutating the live tree + tests
...
findBreadcrumbPath set node.name='Untitled' in place, mutating the shared
sidebar tree (treeData passed from resolveBreadcrumbNodes). Surface 'Untitled'
via a shallow copy on the returned chain only; input nodes stay untouched.
Add tests for the non-mutation invariant plus applyUpdateOne reducer,
formatRelativeTime buckets, and the pure tree mappers (sortPositionKeys,
pageToTreeNode).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-29 04:49:48 +03:00
claude_code
0b2af34029
test(integrations/client/packages): batch 2-4 unit coverage + zip-slip guard extraction
...
Batch 2-4 of the test-strategy rollout. Test-only except one minimal,
behaviour-preserving extraction in file.utils.ts. All suites green:
server 82 suites/836+1todo, editor-ext 86, mcp 270, client (new files) 86.
integrations (server):
- file.utils.ts: extract pure `isEntryPathSafe(entryName, targetDir)` from
extractZipInternal so the zip-slip/path-traversal guard is unit-testable;
call site rerouted, behaviour identical (only a warn-message string merged).
- file.utils.zip-safety.spec.ts: traversal/strip/__MACOSX/prefix-confusion
cases (mutation-resistant: fails if containment loses the path.sep).
- import-formatter / import.utils / table-utils / export utils / import.service
extractTitleAndRemoveHeading: pure import/export transforms, Notion/XWiki
formatting, table colspan widths (idempotent), slug/link rewriting.
client:
- safeRedirectPath: open-redirect guard, every reject branch independently.
- buildChatMarkdown (fence anti-breakout), label-colors, normalize-label,
share tree build, page URL builders, notification time-grouping (fake clock).
packages:
- editor-ext: deriveFootnoteId golden table, parseHtmlEmbedHeight crafted
values, orphan footnote extraction.
- mcp: deriveFootnoteId parity (drift guard vs editor-ext), applyTextEdits
idempotency + cross-block replaceAll, diffDocs/summarizeChange on reorder.
Reviewed (APPROVE): extraction behaviour-preserving, assertions mutation-resistant.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-06-21 18:22:15 +03:00
Philip Okugbe
6191acfa14
fix: a11y ( #2275 )
2026-06-09 22:51:55 +01:00
Philip Okugbe
33895b0607
bug fixes ( #2250 )
...
* util
* fix page position collation
* support fixed toolbar in templates editor
* date localization
* fix clipped emoji in templates editor
* fix page updated time object
* fix flickers
* fix: remove redundant breadcrumb from destination modal
2026-05-28 16:20:37 +01:00
Philip Okugbe
92c0e36e46
fix(a11y): WCAG 2.1 AA fixes ( #2219 )
2026-05-20 16:47:25 +01:00
Philip Okugbe
dbe6c2d6ba
feat: A11y fixes ( #2148 )
2026-05-04 21:21:37 +01:00
Philip Okugbe
bd68e47e03
feat(ee): page verification workflow ( #2102 )
...
* feat: page verification workflow
* feat: refactor page-verification
* sync
* fix type
* fix
* fix
* notification icon
* use full word
* accept .license file
* - update templates
- update migration and notification
* fix copy
* update audit labels
* sync
* add space name
2026-04-13 20:20:34 +01:00
Philip Okugbe
879aa2c3d8
feat: page update notifications ( #2074 )
...
* feat: watchers notification and email preferences
* fix: email copy
* digests
* clean up
* fix
* clean up
* move backlinks queue-up to history processor
* fix
* fix keys
* feat: group notifications
* filter
* adjust email digest window
2026-03-31 16:03:59 +01:00
Philipinho
642c92f779
fix select
2026-03-28 20:34:44 +00:00
Julien Fontanet
aa27d57624
fix: notification items are now real links ( #2039 )
...
Replace UnstyledButton with UnstyledButton component={Link} so each
notification renders as a real anchor element. Regular left-clicks use
SPA navigation and close the popover; Ctrl/Cmd/middle-click open the
page in a new tab. All click types mark the notification as read.
2026-03-28 20:23:21 +00:00
Philip Okugbe
d7a5fda53c
feat: better feature flags ( #2026 )
...
* feat: feature flag upgrade
* fix translations
* refactor
* fix
* fix
2026-03-15 22:05:32 +00:00
Philip Okugbe
59e945562d
feat(ee): page-level access/permissions ( #1971 )
...
* Add page_hierarchy table
* feat(ee): page-level permissions
* pagination
* rename migration
fixes
* fix
* tabs
* fix theme
* cleanup
* sync
* page permissions notification
* other fixes
* sharing disbled
* fix column nodes
* toggle error handling
2026-02-26 19:49:10 +00:00
Philip Okugbe
05b3c65b0f
feat: notifications ( #1947 )
...
* feat: notifications
* feat: watchers
* improvements
* handle page move for watchers
* make watchers non-blocking
* more
2026-02-14 20:00:38 -08:00