Skip to content

Releases: checkmarble/marble

v1.1.0 - Continuous Screening webhooks, some UX & bug fixes

20 May 09:33

Choose a tag to compare

Improvements

  • Send webhooks when Continuous Screening cases are created orreviewed (hit confirmed or dismissed)
  • Improve secondary filter (birth date, country) format hints in free form sanction search
  • Free form sanction search displays full detail of entities, with relatives and sanctions detail
  • Back button in case manager now goes back to the inbox, not the overview page

Bug fixes

  • Some old scenario rules using percentiles were not working properly
  • Correct an error where on some code paths, ingested entities may not be picked up for continuous screening
  • Silence an error on instance metadata upsert (non blocking)
  • Fix intermittent Unable to decode turbo-stream response errors on frontend
  • Fix field display order in case manager regression
  • Fix scenario filter on decisions analytics page
  • Re-introduce screening hit whitelisting for false positives that accidentally disappeared in a previous release

--

Container versions

Uses:

  • backend v1.1.0
  • frontend v1.1.1
  • postgres 16+
  • motiva v0.8.1+

v1.0.0 - Customer Risk Assessment, Semantic data model, perf improvements

13 May 11:39

Choose a tag to compare

Features

  • Customer risk assessment fully integrated to Marble is live. Get in touch with the Marble team to activate it!
    Calculate at onboarding and update continuously one or several scores tailored for your needs, to assess each customer risk and tune your detection sensibility to that.

Improvements

  • The whole data model edition experience has been overhauled. Create tables in one batch, not field by field. Attach semantic types to tables and fields for cleaner display throughout the application, and more to come.
  • The full Marble app has been ported to a new frontend framework. Expect much better navigation performance in the short term. In the longer term, this will unlock more user experience improvements for us.
  • In case manager, show the "snooze rules" button only in cases where there are rules to snooze

Bug fixes

  • Silence a non-blocking but high volume error log about continuous screening on ingestion
  • Fix a regression that broke the auto-assignment feature silently in v0.65
  • Proper (non blocking) handling of nul value input on fuzzy string matching opereator
  • Fix blocking error in customer hub on empty name entity if searching by object_id
  • Fix readability issues of some case manager graphs in dark mode
  • Fix some UI glitches and other UI improvements on rule edition (rule name, ...)

--

Container versions

Uses:

  • Marble backend v1.0.4
  • Marble frontend v1.0.7
  • Postgres v16+
  • Motiva v0.7.4+

Breaking changes

Warning

The old, unversioned Marble public API, deprecated a year ago, is gone. See our migration guide and the v1 API documentation.

Note

Until now, Marble depended on an open-source dependency, Convoy, for webhooks dispatching. This was one additional piece of infrastructure to deploy to use the full Marble feature set. As of this version, we migrate to fully internal webhooks sending. New Marble deployments can ignore this message and just deploy without the CONVOY_ environment variables. Existing deployments should CONVOY_ environment variables while upgrading to Marble v1.0, as all existing endpoints will be automatically migrated to the new system.

v0.65.0 - Case manager analytics

15 Apr 08:22

Choose a tag to compare

Features

  • A brand new page for analytics on cases is available. Get statistics on your case resolution times, suspicious activity reports, and on your case backlog, by inbox and by assigned analyst.

Improvements

  • Improve the case manager panel to view transactions of a customer: better usage of vertical space, and allow to pin a column to the left for better horizontal scrolling
  • NER timeout duration now configurable (NER_TIMEOUT) for self-hosted customers
  • Public API post comment endpoint now accepts up to 16k characters, up from 2k.

Bug fixes

  • prevent setting an object_id or updated_at field as non-required on a data model table
  • fix a bug where the review alert input in the case manager no longer accepted spaces
  • batch execution was broken for any scenario whose trigger condition includes a "!=" condition, is now fixed

Versions

backend: v0.65.1
frontend: v0.65.0

v0.64.0 - Natural language rule creation, redesigned case page

03 Apr 08:24

Choose a tag to compare

Features

  • Construct rules using natural language in the Marble rule builder (Open beta)

Improvements

  • Redesigned scenario home page and scenario list table
  • Redesigned case manager main investigation page

Bug Fixes

  • Fix some non-critical misconfigured permissions on public & internal API
  • Fixed payload reparse issue, causing errors on batch scenario executions in some cases
  • Fixed is in / is not in operator behavior when list is empty
  • Fixed empty content display when no alias is set in custumer hub
  • Fixed "add decision to case" button not working
  • Fixed inbox members management buttons not being displayed
  • Various QA, dark mode, and design fixes
  • CVE security fix
  • DuckDB version stability fixes - the release of early March introduced a memory leak on the worker
  • Percentile values displayed between 0% and 100% but stored between 0 and 1 for the percentile aggregate operator, fixing a scenario runtime error

Versions

  • Backend v0.64.0
  • Frontend v0.64.3

v0.63.0 - IP & geoloc data, import/export, scenario presets & public API expansion

19 Mar 12:31

Choose a tag to compare

Features

  • IP and GPS coordinates data are now supported: Ingest your data for customers, events in IP address or GPS coordinates data. Use enriched data (known VPN IP, TOR exit nodes, cloud provider...) in rules, screen transactions against blacklisted/whitelisted lists of IP ranges, visualize where a customer is located in the case manager and customer hub !
  • Kickstart an empty organization with standardized data model and scenario examples: avoid the "white page" syndrome, keep the option to extend or modify the data model and rules in the way that makes most sense for your business. The list of available options will be expanded in the future.
  • Import/export data from Marble: recreate an instance with your custom data model, scenarios and workflows, from an exported configuration from your existing instance. Most convenient for replicating your staging instance when going to prod, or to regularly make a replica of your prod instance for testing.
  • Many extensions to the public API (see the doc):
    • Case AI reviews: list, view and request an AI review for a case using the public API
    • Ingested data objects annotation: read and write comments, attach files and tags, so you can see them in the case manager or extract them to your systems
    • New endpoint to create a decision asynchronously (and optionally ingest the payload before doing so): most convenient for all workloads where a real-time response is not necessary

Improvements

  • improve validation (especially error case) display for scenarios using screening rules
  • harmonize case status icon throughout the app
  • add custom instruction (review steps, etc) for the AI agent to review cases

Bug fixes

  • add back the "mark as (un)available" button in the /account page
  • silence some (non-blocking) errors related to ingesting data and continuous screening
  • fix "case.decision_reviewed" webhook sending stale data
  • fix CSP error for displaying image miniatures for files in the customer hub page
  • error while evaluating case name template should not be blocking to generate a case, in decision workflows
  • reading case comments with the public API, now includes comments (annotations) left on ingested objects from within the case

Uses:

  • backend v0.63.1
  • frontend v0.63.0

v0.62.0 - Customer hub, redesigned navigation, and a lot of smaller product improvements

05 Mar 16:21

Choose a tag to compare

Features

  • Add a brand new Customer hub to the product, at root level navigation. Search users by name, view past alerts, tags, documents and comments, browse related data for a customer while staying in Marble.
  • Add a new "Analyst" role in the product. An analyst does not have access to the configuration of rules and customer screening, only to the manual screening search, case manager and customer hub. An analyst still needs to be added to inboxes in the case manager to access them.

Improvements

  • Completely revamped the root level navigation in the product. You now have access to 5 sections: detection (including scenarios, custom lists, decisions), continuous screening, manual screening search, case manager & investigation, and the new customer hub.
    • Goes along with a redesign of navigation in settings, scenario list, addition of a "my account" page handling locale change, dark mode setting and logout
  • Copy a scenario, creating a new scenario in draft status from an existing scenario. Copies the last version of all the rules, including workflows.
  • Archive a scenario, making it displayed last in the table and less visible. This is a soft-delete, archived scenarios can still be unarchived.
  • Filter decisions by the trigger object "object_id" in the decisions page. Improved design of the filters edit component.
  • Great improvement on the alerts section UI in the case manager's main case page. Including access to screening results in an alert, if configured.
  • Harmonization of button components throughout the app, continuing work to migrate Marble to a sleeker UI
  • For customers using the continuous screening feature, the ingestion endpoints in the v1beta API now allows to activate monitoring, and optionally request an initial screening, at the same time as performing the ingestion (see doc). The change will be folded back into API v1 after a short beta test period. The same will be available on the CSV ingestion interface soon.

Bug fixes

  • A typo was causing an infinite loop of index creation, preventing scenario publication in some cases (introduced in v0.60)
  • Fix: AI case review takes into account client KYC data enrichment from web search
  • Correct a bug on manual screening search, where entities with a matching score below 70% were never returned even if the setting was set lower
  • It is no longer possible to create data model links between non-string - they were not working for actual usage since the beginning
  • [self-hosted] Access to the analytics page now relies only on having the license and an analytics bucket configured, no longer on having the metabase environment variables configured
  • Dataset filters on manual screening search where ineffective
  • AI case review feature now no longer configurable (leading to noisy but non-blocking errors) on instances that do not have the license entitlement to it
  • Reintroduce proper display of KO sanity check for AI case reviews in case manager, and correction of an error in the sanity check prompt that was creating high volumes of false positive "KO" checks.
  • Case manager rule snooze panel: fix a bug where it would not properly display in arabic locale, correct an error on the empty state
  • Fix error in the ingested object viewer that was not scrollable if a table had more fields than the component could display
  • Fix form validation glitch in several places of the app, where clicking "cancel" would shift the layout and require a second click on the (now shifted) button to actually close the box

Caution

Two changes to the required versions of Postgres to deploy Marble, before you upgrade to v0.62:

  • Postgres 16 is now required. Marble no longer supports Postgres 15 or earlier, and some parts of the product will be broken if you use it. Upgrade your postgres instance to version 16+ before installing this upgrade.
  • The postgres database used for Marble must now have the postgis extension installed. Most cloud providers handle this, but if you are running your own PostgreSQL you need to do it manually. See the postgis documentation.

Uses:

  • backend v0.62.2
  • frontend v0.62.1

v0.61.1 - Fix permission error in rule builder

23 Feb 15:06

Choose a tag to compare

Corrects a permission error occurring on the rule builder if the organization does not have the continuous screening feature activated.


Uses:

  • frontend: v0.61.1
  • backend: v0.61.0

v0.61.0 - use screening status of customer in risk rules

07 Apr 07:40

Choose a tag to compare

Features

  • Following the release of our new continuous screening feature, you may now use the results of this process in your risk detection rules. In practice, you can adapt rules to behave differently when the customer in context is a PEP, under sanctions, or other, than when it's not. Check out the new "Client risk" section of operators in the rule builder. You get to filter specifically on the fine-grained hit types, and extend the search from an organization to natural persons in the organization, when relevant.

Improvements

  • Redesign of modales, buttons throughout the app. Still some work to do, but we're gradually migrating to a more modern feel.

Bug fixes

  • Avoid frontend-crashing error in some cases, when the screening engine backend is not configured

Versions

  • backend: v0.61.0
  • frontend: v0.61.0

v0.60.0 - ongoing monitoring, free sanction search, data model field deletion

10 Feb 21:09

Choose a tag to compare

Features

  • It is now belatedly possibly to delete parts of the data model that are not (or no longer) in use. We made sure this does not break your production, by preventing the deletion of fields, tables or links that are used in scenarios, but this should make the early back and forth of data model configuration much less annoying.
  • The last missing bricks of ongoing monitoring for sanctions and PEP have been released. Includes in particular the viewing and updating of an existing ongoing monitoring configuration. Add your users to monitoring, get the initial screening results in return, then wait for any new matches on list updates...
  • ... or perform manual free search on the regulatory lists for your investigations
  • See the estimated risk level of cases (escalate, investigate, likely false positive) on cases after the AI agent did the level 1 review, and filter cases by risk level in the case manager inbox.
  • Marble webhooks are no longer "ids only": receive the full useful payload in the webhooks we send. This is not a breaking change as the structure remains the same, more data has only been added to the payloads. The format is aligned on our v1 public API (with an additional custom header helping you decide which public API version format to parse, in anticipation of possible future versions).
  • Self-hosted paid customers may now customize the Marble logo (on the top left corned of the page) with the CUSTOM_LOGO_URL env variable

Improvements

  • Several small improvements designed to lower the tail latency (P99+) of creating decisions.
    • A side effect of this is that storing the full detail of rule evaluation intermediate values is no longer guaranteed (it should still be there in the overwhelming majority of cases, but may in a degraded scenario be lost even though a decision has been created).
    • As a consequence, storage of the decision rules inline will eventually be removed. We keep it for compatibility for now, but in 3 months it will become mandatory to configure a bucket with OFFLOADING_BUCKET_URL to continue storing rule execution details
  • CSV ingestion, manual batch scenario start time delay has been removed, they should now start as soon as triggered
  • Make rule builder interactions feel faster with shorter hover fade-in and fade-out times

Bug fixes

  • Longer fetch interval for river worker, for smaller CPU impact of job polling by the worker (most relevant for multi-tenant instances)
  • Disallow all crawlers
  • Fix strange highlight and search errors on rule builder operand selection, if multiple links with the same name are present in the data model
  • Correct an bug where an error on calling the "go to next case" button would sometimes break the full case page

Versions

  • backend: v0.60.0
  • frontend: v0.60.0

Warning

Now that Marble webhooks are no longer "metadata only", you should be extra careful of not sending them to unsafe destinations with production data.

v0.59.0 - Ongoing monitoring, dark mode, median and other operators, perf improvements

22 Jan 16:07

Choose a tag to compare

Features

  • Sanction, PEP and other watchlist continuous screening of customers is now available ! Get in touch with us if you want to try it out, this is the first entirely self-hostable customer screening tool that we know of.
  • Browse the Marble app in dark mode ! Great if you work with low luminosity, or if you like higher contrast, this has been requested for a year and is now available !
  • Use Median, Percentile, Standard-Deviation operators in rules. Available for all customers with a license.

Improvements

  • Add the option to format dates and timestamps in US format (rather than only UK format as it was so far)
  • Greatly improve page loading speed in the scenario and rule builder, especially for scenarios with many rules & iterations

Bug fixes

  • Fix a possible Denial Of Service vulnerability on the frontend

Containers:

Uses

  • Backend v0.59.0
  • Frontend v0.59.1