Skip to content

Releases: WildMeOrg/Wildbook

Wildbook 10.11 is agentic!

Choose a tag to compare

@JasonWildMe JasonWildMe released this 07 Jul 20:49
d77dbb6

Wildbook 10.11 is largely about making photo-ID matching faster, more complete, and more robust to real world data. This release also opens a new door for programmatic access: from the "API Access" entry in your profile menu, you can issue a time-limited token that lets scripts, notebooks, or AI assistants read the encounters, individuals, and annotations you already have permission to see, and a companion "agent skill" endpoint teaches AI assistants how to help with re-ID curation in plain language. Underneath, 10.11 fixes a long list of issues (database connection leaks, a stuck indexing flag, a user-creation deadlock, an access-control leak) and everyday annoyances: bulk imports now reject corrupt images instead of stalling at 99%, import task pages stop jumping back to page one while they poll, search filters survive a page refresh, quicksearch puts exact matches first, and zoom and pan work again across gallery, match-result, and encounter images.

What's Changed

  • Modified ToU with GCF feedback by @JasonWildMe in #1600
  • Add wildbook_tasks_vectorMatch gauge + fix MiewID gauge metric-name collision by @JasonWildMe in #1602
  • Count ml-service v2 detection tasks in /metrics detection gauges by @JasonWildMe in #1601
  • fix(security): harden viewUsers OpenSearch ACL (revocation leak + second buggy writer) by @JasonWildMe in #1592
  • Fix bulk-import task page polling stall across Import→Detection handoff by @JasonWildMe in #1605
  • Localize sampling protocol label on React encounter page (#1522) by @JasonWildMe in #1607
  • Fix UserCreate/Collaborate self-deadlock from setPermissionsNeeded in long transaction by @JasonWildMe in #1614
  • feat(security): token-scoped read API — token issuance + canUserAccess + encounter/individual/annotation scoping (Artifacts B+D+Spec A; supersedes #1594) by @JasonWildMe in #1613
  • Fix class import editOrg.jsp by @JasonWildMe in #1617
  • fix(metrics): bound WBIA HTTP fetch so a hung remote can't kill /metrics by @JasonWildMe in #1618
  • 1568 persist values in the react encounter search filter form by @jbmort in #1588
  • Bulk import: reject corrupt images instead of stalling detection at 99% by @JasonWildMe in #1609
  • feat(security): token-issuance UI + served agent-skill (server-verified step-up; anon agent skill) by @JasonWildMe in #1619
  • Gallery View Zooming and Panning Feature by @Joey-Li0118 in #1596
  • Restore mouse-wheel zoom on React match-results and encounter image viewers by @JasonWildMe in #1628
  • Set acmId on manual annotations so they are matchable candidates by @JasonWildMe in #1634
  • fix(ia): restore bulk-import Class-column links for legacy imports (#1624) by @JasonWildMe in #1625
  • Fix v2 ml-service detections leaving iaClass/viewpoint null (unmatchable) by @JasonWildMe in #1632
  • Converge Modified-Groth + I3S spot-matching onto main (supersedes #1610, #1611, #1630) by @JasonWildMe in #1636
  • feat(header): add API Access link to JSP profile dropdown by @JasonWildMe in #1638
  • refactor(api-access): read JWT keys from a dedicated apiAccessKeys.properties by @JasonWildMe in #1640
  • i18n(header): localize profile dropdown menu items by @JasonWildMe in #1639
  • Agent-skill suite: serve re-ID curation skills from a single /api/v3/agent-skill URL by @JasonWildMe in #1642
  • fix(bulk-import): preserve table page across polling refreshes (#1637) by @JasonWildMe in #1641
  • Bump annotation version when embeddings change so OpenSearch reindexes them into _source by @JasonWildMe in #1643
  • Agent-skill docs: address live API feedback (token TTL, response shape, limits, time-decay) by @JasonWildMe in #1644
  • Annotation index: add encounterDateMillis (denormalized sighting date) by @JasonWildMe in #1645
  • media/resolve: explicit per-ID status (identified/unidentified/no_image/unavailable/error) by @JasonWildMe in #1646
  • Token search: safe terms aggregations (+ explicit 400 for unsupported aggs) by @JasonWildMe in #1647
  • Raise OpenSearch client socket timeout to 120s by @JasonWildMe in #1651
  • Prevent indexingActive flag leak from wedging the OpenSearch reconciler by @JasonWildMe in #1652
  • Relax metadata edit permissions on individuals.jsp by @JasonWildMe in #1653
  • Fix quicksearch relevance to show exact matches first by @JasonWildMe in #1543
  • fix github unit test failure by @naknomum in #1657
  • Batch-load + cap match prospects; raise match socket timeout to 240s by @JasonWildMe in #1660
  • Warm kNN match graph on startup so the first match isn't cold by @JasonWildMe in #1661
  • PIE/WBIA target set: fetch ids only (_source:false) — fix large-set match timeout by @JasonWildMe in #1663
  • Don't index non-candidate (trivial) annotations in OpenSearch by @JasonWildMe in #1658
  • AcmIdBot: replace 24h query with WBIA reconciliation sweep of the matchable set by @JasonWildMe in #1659
  • catchUpEmbeddings: only backfill embeddings for match candidates (matchAgainst=true) by @JasonWildMe in #1665
  • Set 10.11 version by @JasonWildMe in #1666
  • Close scan-result Shepherds in finally to stop DB connection leak by @JasonWildMe in #1667
  • Close MediaAsset background/URL Shepherds in finally to stop connection leaks by @JasonWildMe in #1668

New Contributors

Full Changelog: 10.10.2...10.11

Wildbook 10.10.2

Choose a tag to compare

@JasonWildMe JasonWildMe released this 02 Jun 17:28

What's Changed

  • fix(devops): IA callback URL drops to HTTP behind TLS-terminating nginx by @JasonWildMe in #1576
  • fix(import): bulk annotation→encounter lookup in stats (avoids DN SQL-gen bug) by @JasonWildMe in #1577
  • bugfix on matchingSetQuery getting modified by reference by @naknomum in #1582
  • Fix IA callback ingest skipping jobs in WBIA "publishing" state by @JasonWildMe in #1583
  • Surface sendIdentify failures as error, not completed by @JasonWildMe in #1585
  • ml-service migration v2 + empty-match-prospects fixes by @JasonWildMe in #1580
  • fix(ia): apply IA.json _save_as iaClass remap in ml-service detection by @JasonWildMe in #1595
  • Harden IndexingManager against postStore-before-commit indexing race by @JasonWildMe in #1598

Full Changelog: 10.10.1...10.10.2

This version of Wildbook requires ml-service v1.0.0 and WBIA v5.1.3.

10.10.0

Choose a tag to compare

@vkirkl vkirkl released this 07 May 02:02
606982f

What's Changed

Match results page update and matching improvements

New export options

Issues addressed

Process improvements

10.9.5

Choose a tag to compare

@vkirkl vkirkl released this 29 Jan 22:49
1d6ca93

What's Changed

Upgrades and cleanup

  • Upgrade to Java 17 (but with Java 11 bytecode, see pom.xml plugin) and legacy file removal by @vkirkl in #1389
  • web.xml: cleanup and reorganization
  • openapi 3.0 documentation of the api/v3 endpoints + swagger endpoint

New data export API endpoint

Issues addressed

New Contributors

Full Changelog: 10.9.2...10.9.5

10.9.2

Choose a tag to compare

@vkirkl vkirkl released this 07 Jan 18:48
3612f16

What's Changed

  • Misc 10.9.2 fixes by @naknomum and @erinz2020 in #1370
    • "Null island" display when unset lat/lon
    • Setting of lat and lon with empty values fails
    • Empty-string state fix
    • Problems with display of date/time for some specificities

Full Changelog: 10.9.1...10.9.2

10.9.1

Choose a tag to compare

@vkirkl vkirkl released this 06 Jan 15:52
56e92c0

What's Changed

Full Changelog: 10.9.0...10.9.1

10.9.0

Choose a tag to compare

@vkirkl vkirkl released this 19 Dec 00:35
505e91f

10.9.0 A new user interface and API for Encounter details and the Encounter search results tabs featuring a new design and reusable UI components. This release further enhances and stabilizes bulk import and addresses some priority legacy and community-reported issues.

Encounter details and the Encounter search results updates

Bulk Import and import task updates

Other user, support, and administrative issues addressed

New Contributors

Full Changelog: 10.8.1.1...10.9.0

10.8.1

Choose a tag to compare

@vkirkl vkirkl released this 09 Sep 17:34
1d712a3

10.8.1 fixes a few issues found in the new 10.8.0 bulk import and includes a manual annotation fix.

Full Changelog: 10.8.0...10.8.1

10.8.0

Choose a tag to compare

@vkirkl vkirkl released this 06 Aug 14:26
936d2a1

10.8.0 feature a new user interface and API for bulk import, addressing issues with the user experience, data validation, and performance in the previous version of bulk import. The new API also lays the groundwork for work on automated data import pipelines and integration with other platforms.

Bulk Import Updates

Specific User Issues Addressed

  • Add numbers to the bulk import table by @erinz2020 in #1075
  • Update location ID for all encounters in a bulk import by @erinz2020 in #1058
  • Pre-processing for occurrence ID is different between bulk import and in the product by @naknomum in #1057
  • Export filter for bulk imports by @naknomum,@erinz2020 in #1055
  • Bulk Import Encounter.measurementX.samplingProtocol in #1009
  • Display bulk import workflow in set language by @erinz2020 in #833
  • GPS coordinates not validated in bulk import by @naknomum in #751
  • check both name and id for locationID selection in bulk import identification by @naknomum in #709
  • Occurrence -> Sighting in bulk import by @erinz2020 in #637
  • Bulk import does not validate all imported fields by @naknomum,@erinz2020 in #317
  • Show a warning when Encounter.submitterID field is invalid during bulk import by @erinz2020 in #304

What Else Has Changed

Full Changelog: 10.7.2...10.8.0

10.7.2

Choose a tag to compare

@vkirkl vkirkl released this 29 May 20:31
31b3230

What's Changed

Addressing new issues related to new OpenSearch indexing and some legacy matching issues:

  • Fix JS exception in the header.jsp searchbar when the user is logged out by @JasonWildMe in #1130
  • Fix rare copy and paste error related to social unit display in mat… by @JasonWildMe in #1155
  • Switch to postDelete for unindexing in WildbookLifecycleManager by @JasonWildMe in #1144
  • Support matching across all viewpoints if viewpoint is null (legacy b… by @JasonWildMe in #1147
  • set background indexing false when background indexing done (even on failure) by @naknomum in #1151
  • Invert Encounter permissions check by @JasonWildMe in #1150
  • Social unit fixes on individuals.jsp by @JasonWildMe in #1136
  • remove second close statement already covered in finally{} and throwi… by @JasonWildMe in #1153

Deployment and branch standardization as well as some minor cleanup:

Full Changelog: 10.7.1...10.7.2