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
fix(connectors): correct defects found validating against live API docs
Validated all 10 new connectors against live provider documentation.
Fixes below; each was verified against the vendor's published spec.
Data loss (sync engine hard-deletes documents past an unflagged cap):
- mintlify: an empty discovery (llms.txt AND sitemap both 404, or an
HTML-200 llms.txt) returned zero documents without listingCapped,
which reconciles every stored document away. Now throws.
- zoho-desk: listingCapped never fired at the default caps, since
500/50 and 500/100 are exact multiples and the flag was only set on
a mid-page overshoot.
- trello: archived-list cards vanished from an unflagged listing, and
listingCapped latched permanently on any list of 1000+ cards.
- google-vault: a mid-sync config change left the cursor with no kind,
discarding the rest of the matters page without the flag.
- pagerduty: more=true with zero incidents ended the listing unflagged.
Correctness:
- zoho-desk: desk.zoho.ca does not resolve; Canada is desk.zohocloud.ca.
Added the missing SG and AE data centers.
- zoho-desk: modifiedTime is absent from GET /tickets, so the stub and
hydrated hashes never matched and every ticket re-embedded each sync.
- trello: dateLastActivity is documented to miss some edits, so the hash
now folds in the badges counters that arrive with the listing.
- microsoft-dataverse: every knowledge article has an internal root
container that also sets islatestversion, duplicating every document.
- pagerduty: the 10,000-record ceiling bounds offset + limit, so the
guard admitted a request that 400s after any short page.
- sftp: the incremental cutoff compared against a remote clock, silently
skipping same-second writes on every subsequent sync.
- box: extracted_text gave up before polling when a representation had
not been generated yet.
- mintlify: a site whose .md route 404s hydrated every page to nothing
while validateConfig still passed.
Security:
- microsoft-dataverse: environmentUrl accepted any public HTTPS host
while every request attaches a bearer token. Pinned to Microsoft's
Dataverse domains.
- sftp: getDocument used stat, which follows symlinks, so a link under
rootPath resolved to its target. Now lstat.
- sftp: filenames from readdir were composed into paths unchecked.
- trello: user-supplied board ids were interpolated into URL paths raw.
Resource bounds:
- microsoft-excel: the usedRange metadata read was unbounded, so a
silently-ignored $select would have buffered the whole grid.
- sftp: no read timeout (readyTimeout covers only the handshake), an
unbounded pending-directory queue, and oversized files growing the
listing without limit.
- microsoft-excel: getDocument refetched the workbook and sheet list
per worksheet.
Coverage: box file extensions, trello attachments and members, zoho-desk
ticket resolution, google-slides WordArt, google-vault Chat holds,
mintlify sitemap-index following.
description: 'Optional OData $filter expression appended to the connector filter.',
49
+
placeholder: 'e.g. statecode eq 3',
50
+
description:
51
+
'Optional OData $filter expression combined with the connector filter. Knowledge articles sync in every state — add statecode eq 3 to index only published ones.',
'The SharePoint document library (drive) ID holding the workbook. Leave empty to use your personal OneDrive.',
25
+
'The SharePoint document library (drive) ID holding the workbook. Leave empty to use your own OneDrive for Business. Workbooks stored in consumer OneDrive are not supported by the Excel API.',
0 commit comments