Skip to content

Sync failure (Error E019 / HTTP 400) when syncing long URLs to Karakeep due to field length limits #2158

@GRomR1

Description

@GRomR1

Which version of floccus are you using?

5.8.6

How many bookmarks do you have, roughly?

5,000

Are you using other means to sync bookmarks in parallel to floccus?

No

Sync method

Git

Which browser are you using? In case you are using the phone App, specify the Android or iOS version and device please.

Chromium 143.0.7499.169 (Official Build, ungoogled-chromium) (arm64) + Karakeep server 0.30.0

Describe the Bug

When attempting to sync a large collection of bookmarks to a Karakeep server, the sync process fails with the following error:

E019: HTTP status 400. Failed POST request. Check your server configuration and log.

The extension logs do not provide specific details about which bookmark caused the failure or what the exact validation error was. After debugging the traffic with mitmproxy, I discovered that the Karakeep server returns a ZodError because the title field exceeds the 1000-character limit allowed by the server's schema.

Server Response Body:

{
    "success": false,
    "error": {
        "issues": [
            {
                "code": "too_big",
                "maximum": 1000,
                "type": "string",
                "inclusive": true,
                "exact": false,
                "message": "String must contain at most 1000 character(s)",
                "path": ["title"]
            }
        ],
        "name": "ZodError"
    }
}

In my case, the bookmark had an extremely long URL (from a search redirect) which was also being used as the title. Currently, Floccus doesn't surface this specific error message, making it very difficult to identify and remove the offending bookmark.

Image

Expected Behavior

  1. The extension should provide more descriptive error logging. If a POST request fails with a 400 error, it would be extremely helpful to log the response body (specifically the message from the server) to help the user identify which bookmark is causing the issue.
  2. Ideally, Floccus should handle or truncate excessively long titles/URLs that exceed known server constraints to prevent the entire sync process from failing.

To Reproduce

  1. Use Floccus with a Karakeep account.
  2. Create a bookmark where the title or URL is longer than 1000 characters (e.g., a long tracking/redirect URL).
  3. Start the synchronization.
  4. The sync will fail with E019, and the specific cause (field length limit) will not be visible in the standard logs.

Debug log provided

  • I have provided a debug log file

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions