Skip to main content

Changelog v2.2.0

UI

Changelog

Changelog v2.2.0

[WIT-3849] Visual discovery bug fixes

Bug fixes

  • Theme and config docs are now aligned with the current visual discovery pages' state
  • Only the top-level domains now show labels when the zoom is 1 in the visual discovery graph
  • The currently selected system in the visual discovery graph is now deselected when the search term changes and it’s no longer in the results
  • Search state now resets in visual discovery graph when environment or data landscape change
  • System labels don’t cut text in the visual discovery graph

Related issue

Closes WIT-3849

[WIT-3844] Documentation rendering error

Bug fixes

  • Fixed a documentation rendering error

Related issue

Closes WIT-3844

[WIT-3833] Error on entity unregistration

Bug fixes

  • Fixed the import of an unnecessary react module

Related issue

Closes WIT-3833

[WIT-3843] Component identifier picker fails

New features and improvements

  • the IdentifierPicker now supports a custom definition of the name and domain fields used to generate the identifier
  • the IdentifierPicker now has a flag to disable the validation if needed

Bug fixes

  • in case you need to use the IdentifierPicker without the validation, now you can by setting the relative flag.

Related issue

Closes WIT-3843

[WIT-3824] Dependencies tab improvements

New features and improvements

Improvements in the dependencies tab:

  • edited cursor
  • hover on the system element
  • output port cards are fully clickable
  • resized elements to enter in full screen from the desktop

Related issue

Closes WIT-3824

[WIT-3830] Visual Discovery Popover improvements

New features and improvements

  • Visual Discovery popover improvements

Related issue

Closes WIT-3830

[WIT-3814] Add search and filters to the components table in the overview page

New features and improvements

  • Added search and filters in the table custom view element

Related issue

Closes WIT-3814

[WIT-3833] Error on entity unregistration

New features and improvements

  • Introduced new events on entity registration/unregistration.

Bug fixes

  • Moved all the post-unregistration actions to the right event subscriber.
  • Used service authentication for all the cross-plugins actions instead of the logged user's one

Related issue

Closes WIT-3833

[WIT-3832] Wrong error displayed on domain unregister

Bug fixes

  • Fixed the message shown to the user on domain registration that contains systems.

Related issue

Closes WIT-3832

[WIT-3825] Visual discovery refinements

New features and improvements

  • Minor improvements in the Visual Discovery page

Related issue

Closes WIT-3825

[WIT-3407] Data Contracts graph custom view docs

New features and improvements

  • Updated the custom view docs including the new visual discovery-related views

Related issue

Closes WIT-3407

[WIT-3780] Add search and filters to the output ports in the marketplace pages

New features and improvements

  • Added search in output ports panel in dependencies tab

Related issue

Closes WIT-3780

[WIT-3770] Introduce logicallyReadsFrom relation

New features and improvements

  • Introduced a logical reads from relation as a "shallow" alternative to the standard reads from relation, to document data flows between projects.

Related issue

Closes WIT-3770

[WIT-3566] Remove unused entries when the feature is not enabled

New features and improvements

  • removed unused value in the combo box for engines

Related issue

Relates to WIT-3566

[WIT-3804] Improvements on the visual discovery page

New features and improvements

  • added the empty hexagon icon
  • improved the on change search handle
  • fixed stories

Related issue

Closes WIT-3804

[WIT-3796] Improvements data contract page

New features and improvements

  • Align system box with dependencies page system:

    • Changed taxonomy to domain
    • Put the domain under the system name with breadcrumbs
  • Change popover system:

    • Put name on two lines (header)
    • Removed system name from breadcrumbs

Bug fixes

  • Fix the system icon in the search
  • Improve data contract popover interaction

Related issue

Closes WIT-3796

[WIT-3793] Improvements on the dependencies page

New features and improvements

  • Removed the disabled button when no input connections
  • Removed the disabled button then no output ports
  • Changed the link icon on the system elements
  • Tooltips on graph buttons

Related issue

Closes WIT-3793

New features and improvements

  • Added tree view and panel research on visual discovery

Related issue

Closes WIT-3645

[WIT-3678] Make creation templates instantiate skeleton entities

New features and improvements

  • Creation templates can now instantiate skeleton entities and their parameters
  • Introduced 'readonly' skeleton parameters: they can be read, but not modified, by Edit Templates
  • Introduced the __instanceOf__ reserved parameter
  • Added support for recursive Nunjucks expressions within skeleton parameters
  • Performance improvements on the fetch:template action

Bug fixes

  • Fixed a bug that was preventing the creation templates, other than system/component templates, to be registered
  • Fixed a bug that was preventing the creation templates to instantiate domains

Related issue

Closes WIT-3678, WIT-3727

[WIT-3801] Added section in the GETTINGSTARTED to create an auth-key

New features and improvements

  • Added a step to describe how to create an auth-key to invoke the Core module's backend API

Related issue

Closes WIT-3801

[WIT-3792] Fix for blueprints URL

Bug fixes

  • Fixed the routes for the Blueprint and Template pages

Related issue

Closes WIT-3792

[WIT-3761] Fix non-text file corruption in template editor

Bug fixes

  • All images in the template editor are properly rendered
  • The binary files are not corrupted anymore

Related issue

Closes WIT-3761

[WIT-3646] Display error in visual discovery

New features and improvements

  • Add policy violations display functionality in the visual discovery page

Related issue

Closes WIT-3646

[WIT-3714] Zoom in improvements

New features and improvements

  • Improved the Dependencies Tab with visual upgrades

Related issue

Closes WIT-3714

[WIT-3774] Document new RBAC permissions

New features and improvements

  • Added documentation about the new permissions to handle permissions and roles

Bug fixes

  • Fixed the permission cookbook documentation which stated that no permissions were needed to see the template list where it needed catalog.entity.create

Related issue

Closes WIT-3774

[WIT-3766] Fix multiple microfrontends per page error

Bug fixes

  • Added a key for every microfrontend loaded on a single page, to avoid loading the same for every tab

Related issue

Closes WIT-3766

[WIT-3591] Add Witboost missing relations in the Builder dependencies graph

Bug fixes

  • Fixed the Builders' "Relations" card to display all the Witboost relations
  • Fixed the Catalog Graph page to display all the Witboost relations
  • Patched the plugin to remove the "wb-" prefix from all the Witboost's relations

Related issue

Closes WIT-3591

[WIT-3641] Data contracts lineage pagination

New features and improvements

  • the data contracts graph now progressively fetches only the data of data contracts it needs to show

Related issue

Closes WIT-3641

[WIT-3431] Visual discovery view controls

New features and improvements

  • Added zoom controls and fit-in-view function in visual discovery

Related issue

Closes WIT-3431

[WIT-3412] Data contracts graph view controls

New features and improvements

  • Added zoom controls in the data contract tab

Related issue

Closes WIT-3412

[WIT-3712] Data contracts minor refinements

New features and improvements

  • Small UI improvements in the Data Contracts Tab

Related issue

Closes WIT-3712

[WIT-3764] Fix the identities picker title

Bug fixes

  • Fixed an error that prevented the title of the identities picker from being displayed.

Related issue

Closes WIT-3764

[WIT-3762] Fix component identifier picker

Bug fixes

  • Reviewed the validation mechanism for the identifier picker at the component level.

Related issue

Closes WIT-3762

[WIT-3731] Builder microfrontends

New features and improvements

  • Added the possibility to add micro-frontends to the builder pages. You can add micro-frontends to the system detail page and the component detail page, in a similar way to the existing one for the marketplace pages.

Related issue

Closes WIT-3731

[WIT-3759] Fix for the blueprint documentation

Breaking changes

  • Changed the URL of the template page to /templates and of the blueprints page to /blueprints.

Bug fixes

  • Fixed a bug where the blueprint documentation was not shown on the blueprints list page.

Related issue

Closes WIT-3759

[WIT-3430] Visual discovery heatmap

New features and improvements

  • Added heatmap Show button that enables the heatmap layer

Related issue

Closes WIT-3430

[WIT-3721] Fix descriptor generation error after editing

New features and improvements

  • Refactored the descriptor builder for performance optimizations

Bug fixes

  • Resolved an issue where the "entity not found" error could occasionally appear after saving changes via the Editor Wizard

Related issue

Closes WIT-3721

[WIT-3643] Connect visual discovery and search to overview data contracts and dependencies tabs

New features and improvements

  • Connected the marketplace results with Overview, Dependencies, and Data Contracts Tabs

Related issue

Closes WIT-3643

[WIT-3553] Introduce support for skeleton entities in Editor Wizard

New features and improvements

  • Extended the Editor Wizard to support skeleton entities and parameter updates (preview)

Related issue

Closes WIT-3553

[WIT-3608] Define default RBAC

New features and improvements

  • Introduced the global scope on roles subjects represented by the string * on the entity_ref field. Roles subjects with global scope are allowed to all catalog entities respecting the role's permissions in the entry.
  • Introduced two new permissions: rbac.role.create used to create roles, and rbac.role.edit used to edit them (assigns permissions and roles subjects).
  • Introduced the new startup action, which registers a default preset of roles, roles permissions and optional roles subjects. Presets are chosen using configuration startupActions.rbac.preset and roles subjects can be assigned via configuration

Breaking changes

  • Calls to the RBAC POST and DELETE endpoints are now guarded under the new rbac.role.create and rbac.role.edit, so users performing requests to these endpoints must now have granted these permissions beforehand.

Migration

  • Add to an existing admin role the new permissions rbac.role.create and rbac.role.edit, or create a new role assigning these permissions to the users that need to perform said requests.

Related issue

Closes WIT-3608

[WIT-3648] Minor UI improvements for marketplace dependencies page

New features and improvements

  • Removed open details popup in the system node in the dependencies tab
  • Removed overview tab from drawer panel in dependencies tab
  • Replaced link from zoom-in to dependencies tab
  • Updated buttons in System Popover and Data Contract Popover

Related issue

Closes WIT-3648

[WIT-3725] Fix core project's vulnerabilities

Bug fixes

  • Fix the known vulnerabilities for which a remediation exists.

Related issue

Closes WIT-3725

[WIT-3723] Update CODEOWNERS

New features and improvements

  • Updated Core repository's CODEOWNERS

Related issue

Closes WIT-3723

[WIT-3642] Data contracts lineage interaction improvements

New features and improvements

  • Miscellaneous improvements to the Data Contracts Graph's interaction

Related issue

Closes WIT-3642

[WIT-3632] Ui disabled support for entity relations picker

Bug fixes

  • Added ui:disable support for entity relations picker

Related issue

Closes WIT-3632

[WIT-3647] Disable data landscape division

New features and improvements

  • Disabled the data landscape division

Related issue

Closes WIT-3647

[WIT-3628] Description not editable for entity search picker

Bug fixes

  • Added description field to Entity Search Picker as helper text

Related issue

Closes WIT-3628

[WIT-3636] Move data contract lineage to marketplace details

New features and improvements

  • Removed the Data Contracts page as a standalone page and made it a tab in the system marketplace details page.

Related issue

Closes WIT-3636

[WIT-3510] Automate the EULA setup as a script

New features and improvements

  • Introduces the EULA documents to the core package

Related issue

Closes WIT-3510

[WIT-3640] Relations tab

New features and improvements

  • Added the new tab for the relations graph in the marketplace's system detail page.

Related issue

Closes WIT-3640

[WIT-3630]Extend the RBAC documentation

New features and improvements

  • Extended RBAC documentation with more details and examples.

Related issue

Closes WIT-3630

[WIT-3610] Align default custom views with best practices

New features and improvements

  • Align default custom views with the new data product specification
  • Removed support for gridInfo and sideInfo in dataProductPage and outputPortPage fields

Breaking changes

Removed support for gridInfo and sideInfo in dataProductPage and outputPortPage fields to migrate to custom views

Migration

If you have previously configured gridInfo or sideInfo for Data Product Page or Output Port Page and wish to retain that information, you can move those fields directly to the corresponding CustomView and place them wherever you like them to be

Related issue

Closes WIT-3610

[WIT-3633] Change the default environment from development to default

New features and improvements

  • Changed the default authorization environment value auth.environment from development to default

Breaking changes

  • Instances where authorization is defined and development is used as a key under the provider configuration (that is, the object auth.providers.<provider_name>.development exists) and auth.environment is not overridden, authorization will break.

Migration

  • On instances where authorization is defined and development is used as a key under the provider configuration (that is, the object auth.providers.<provider_name>.development exists) and auth.environment is not overridden, either:

    • Set auth.environment to development
    • Set the environment name key "environment" on auth.providers.<provider_name>.<environment> to default. Example:

Old:

auth:
providers:
microsoft:
development:
clientId: #CLIENT_ID
clientSecret: #CLIENT_SECRET
tenantId: #TENANT_ID

New:

auth:
providers:
microsoft:
default:
clientId: #CLIENT_ID
clientSecret: #CLIENT_SECRET
tenantId: #TENANT_ID

Related issue

Closes WIT-3633

[WIT-3635] Refine the governance table

New features and improvements

  • Removed "Resource Preprocessing" column from Governance - Policy Table and related Filter

*Bug Fixes *

  • Fixed Name and Description column on small-size screens

Related issue

Closes WIT-3635

[WIT-3622] Getting started md improvements

New features and improvements

  • Improved the GETTINGSTARTED.md

Related issue

Closes WIT-3622

[WIT-3549] Visual discovery connections

New features and improvements

  • Added connections between nodes in discovery graph

Related issue

Closes WIT-3549

[WIT-3408] Data contracts overview zoom-in

New features and improvements

  • Implement a change of view when selecting a system in the data contracts overview page: the view will show systems and data contracts connected to that system and allow further exploration of connected elements.

Related issue

Closes WIT-3408

[WIT-3552] Define a custom parser for parameterized catalog info files

New features and improvements

  • Introduced parameterized (skeleton) catalog info files and parameters
  • Defined a custom entity parser to convert raw skeleton catalog info files to catalog entities
  • Added support for skeleton entities on: descriptor generation, new system version, new system snapshot, and new release
  • Defined reserved fields and parameters in skeleton entities and the related update rules
  • Implemented a custom reader processor to handle skeleton catalog info files

Bug fixes

  • Fixed an issue on the descriptor preview panel (Edit and Test tab) that prevented correctly reading catalog info files from multi-level git branches (e.g., level1/level2/level3)

Related issue

Closes WIT-3552

[WIT-3607] Create a data mesh practice shaper location and set it as default

New features and improvements

  • Introduce the Practice Shaper Register Action, which registers a set of entity locations about Practice Shaper taxonomies, and sets the Data Mesh taxonomy as default. When Witboost is first installed or upgraded to the newest version (v2.2.0), AND the instance doesn't contain an existing taxonomy already, the platform will register the taxonomy unless overridden (setting startupActions.catalog.practiceShaperLocations to [])

Breaking changes

When Witboost is first installed or upgraded to the newest version, AND the instance doesn't contain an existing taxonomy already, the platform will register the Data Mesh taxonomy unless overridden

Migration

If the taxonomy is not desired to be registered on new installations, set startupActions.catalog.practiceShaperLocations: [] before upgrading Witboost to the newest version

Bug fixes

Fixed a list of examples provided that weren't valid due to missing the mesh required field

Related issue

Closes WIT-3607

[WIT-3619] Remove hardcoded snippets from ingress definition

New features and improvements

  • Removes hardcoded properties from the nginx definition.

Related issue

Closes WIT-3619

[WIT-3546] Detail pages show more

New features and improvements

  • Added responsive behavior (optional) for custom view
  • Improved "show more" button for fields

Related issue

Closes WIT-3546

[WIT-3433] Visual discovery legend

New features and improvements

  • Implemented the visual discovery legend

Related issue

Closes WIT-3433

[WIT-3508] Startup Action plugin

New features and improvements

  • Introduced the Startup Actions plugin, which defines a fixed set of actions to be executed when starting Witboost. Each action is executed correctly once, and the result is stored in the database. If an action is completed, further updates or re-installations of Witboost won't retrigger it.
  • Implemented the Location Register Startup Action, which receives a list of locations to be registered on the catalog at startup. This action is useful for registering locations like Practice Shaper or templates.

Related issue

Closes WIT-3508

[WIT-3606] Remove hardcoded ssl redirect from ingress

Bug fixes

  • Removes nginx.ingress.kubernetes.io/ssl-redirect from ingress template

Related issue

Closes WIT-3606

[WIT-3414] UI container security review

New features and improvements

Restricts the securityContext of the backend and storybook docker images. This allows to use non-root user in the securityContext.

  • set backend.workingDirectory to /tmp in app-config. This MUST NOT be overridden by values.yaml in installations
  • changed techdocs base path to /tmp in app-config. This MUST NOT be overridden by values.yaml in installations

Related issue

Closes WIT-3414

[WIT-3594] Fix the wrong merge in arrays with environment configurations

Bug fixes

  • during the descriptor build phase, if an environment configuration is set, and an array merge must be done, the target value will replace the source value entirely

Related issue

Closes WIT-3594

New features and improvements

  • add new configuration under mesh.marketplace.ui.searchPage.defaultView that can hold cards or table value
  • default to cards view

Bug fixes

  • tags as strings are correctly displayed in table view

Related issue

Closes WIT-3547

New features and improvements

  • added new key defaultValues to the list of filter config

example:

mesh:
search:
marketplace-projects:
filters:
- field: _computedInfo.owner.displayName
label: Owner
type: choice
# Optional default values for a custom filter
defaultValues:
- 'Admin'
- field: tags
label: Tags
type: choice
- field: kind
# Optional default values for a pre defined filter
defaultValues:
- 'dataproduct'

Related issue

Closes WIT-3547

[WIT-3573] Improve error on missing token permissions

New features and improvements

  • Improve the error shown when the token does not have enough permissions.

Related issue

Closes WIT-3573

[WIT-2669] PoC on the visual discovery

New features and improvements

  • Introduces a draft of the new visual discovery page

Related issue

Closes WIT-2669

[WIT-3542] Implement policy prompt display on update and display pages when the engine is agent

New features and improvements

  • Added a constant for using the agent engine's endpoint as the default value.

Related issue

Closes WIT-3542

[WIT-3539] Refresh notifications on the page open

New features and improvements

  • Added refresh of notifications data on navigation

Related issue

Closes WIT-3539

[WIT-3336] Fix the search for name values in the builder

Bug fixes

  • search now correctly filters entities frontend side for spec.mesh.name values with dots

Related issue

WIT-3336

[WIT-3542] Update CGP engine usage

New features and improvements

  • Update the integration between the UI and the new CGP engine

Related issue

Closes WIT-3542

Bug fixes

  • subcomponents are now correctly collated when the scheduler triggers the collator

Related issue

WIT-3290

[WIT-3290] Subcomponents in search page

New features and improvements

  • add sub-components in the search page
  • add parent component reference in sub-component's overview page

Related issue

Closes WIT-3290, WIT-3291

[WIT-3541] Fix missing relations in processors

New features and improvements

  • made some relations not mandatory: by this, we mean that processing of the source entity is successful even if the target entity is not present in the catalog
  • refactored the code to create more separation of duties of the functions that create the relation.

Related issue

Closes WIT-3541

[WIT-3429] Zoom in refinements

Bug fixes

  • Resolve ui problems on zoom-in page

Related issue

Closes WIT-3429, WIT-3500, WIT-3498

[WIT-3534] Fix indexing during stitching phase

Bug fixes

  • indexing is now fixed during stitching when duplicates are present and also inside arrays

Related issue

WIT-3534

[WIT-3534] Remove duplicates check in the stitching phase

Bug fixes

  • add only the unique keys to the output during the stitching phase

Related issue

Closes WIT-3534

[WIT-3015] Fix Witty Governance Agent Engine UI

New features and improvements

  • Added the new engine in the UI

Related issue

Closes WIT-3015

[WIT-3429] Resolve minor bug

Bug fixes

  • Override stepper style
  • Fix on Edit And Test Cards

Related issue

Closes WIT-3429

[WIT-3189] Implement a cron expression picker

New features and improvements

  • Created CronExpressionPicker

Related issue

Closes WIT-3189

[WIT-3533] Start report delivery after subscription

Bug fixes

  • added the missing start command after subscriptions

Related issue

Closes WIT-3533

[WIT-3372] Update breadcrumbs user experience

New features and improvements

  • Added ellipsis and shortening as breadcrumbs' optional props

Related issue

Closes WIT-3372

[WIT-3411] Extend ACL to subcomponents

New features and improvements

  • Defined a new configuration mesh.marketplace.ui.accessControl.requestDialog.maxNumberOfVisibileResources (default: 5): it determines the maximum number of resources — which are affected by an access request — to show in the access request dialog summary. If null the resource list is not limited
  • ACLs are now strictly associated with consumable components or subcomponents
  • Added support for static access permissions on subcomponents
  • Updated Access Control panel (Marketplace) and Data Access panel (User Settings) to display permissions and active access requests also on subcomponents
  • Improved access control tooltips in the Marketplace

Bug fixes

  • Fixed the kind/type filter in the Data Access panel accessible from the user settings
  • Fixed visibility rules for the Request Access button on non-shoppable systems in the Marketplace

Related issue

Closes WIT-3411

[WIT-3374] Split in new tabs component on detail panel

New features and improvements

  • Split the new tabs component in the detail panel.

Breaking changes

  • Add indentation for subcomponents on the detail panel

Related issue

Closes WIT-3374

[WIT-3527] Convert Azure dimensions to lowercase

New features and improvements

  • all Azure dimensions defined are now lowercase

Bug fixes

  • fixed a small issue with DescriptorPicker

Related issue

Closes WIT-3527

[WIT-3395] Remove handle when no connections

New features and improvements

  • Removed from the zooming page the handles when there are no connections

Related issue

Closes WIT-3395

[WIT-3449] Data contracts graph rework

New features and improvements

Implementation of the new data contracts graph layouting algorithm

Related issue

Closes WIT-3449

[WIT-3486] Fetch all data contracts in EntitySearchPicker

New features and improvements

  • pre filter system is not mandatory anymore in the data contract provider: if not specified, all data contracts will be fetched
  • added system user filter
  • if the pre filter filter.system is specified in the template, the user filter system will be ignored, if present

Related issue

Closes WIT-3486

[WIT-3485] Add flat dimensions for Azure Marketplace

Bug fixes

  • add flat dimensions for billing reports

Related issue

Closes WIT-3485

[WIT-3476] Make the OIDC plugin resolution configurable

New features and improvements

  • Make the OpenId connect profile resolution configurable. When the provider returns a user, it can be matched against a Witboost user by specifying the attributes/annotations to match.

Bug fixes

  • Fixed an error that prevented a failed login from showing the reason for the failure to the user.

Related issue

Closes WIT-3476

[WIT-2954] Data Contract Provider

New features and improvements

  • add the data contract provider

Bug fixes

  • fix consumable provider default environment

Related issue

Closes WIT-2954

[WIT-3467] Azure Marketplace dimensions

New features and improvements

  • kill process if delivery fails
  • added dimensions as defined
  • added tests

Related issue

Closes WIT-3467

[WIT-2606] Save practice shaper graph positions

New features and improvements

  • Each node position is saved in the local storage and used to initialize positions when available

Related issue

Closes WIT-2606

Bug fixes

  • Fix search in blueprint and template pages

Related issue

Closes WIT-3469

[WIT-3453] Fix payload size limit in Practice Shaper

Bug fixes

  • The payload size limit in the practice shaper is now aligned with the platform payload limit size

Related issue

Closes WIT-3453

[WIT-3444] Upgrade yarn version to 4

New features and improvements

  • Upgraded Yarn to version 4
  • Upgraded the base docker image to bookworm
  • Removed insecure packages with vulnerabilities (high and/or critical)

Related issue

Closes WIT-3444

[WIT-3450] The Data Preview component does not accept the path parameter with the custom view

New features and improvements

  • Removed the live data link in the Marketplace > Consumable Interface overview page

Bug fixes

  • Now path is being taken by the Data Preview component
  • The no data icon is shown again in the Data Preview component

Related issue

Closes WIT-3450

[WIT-3451] Default component page custom view doesn't show data contract status

Bug fixes

  • The component marketplace_data_contract_policy_status in the default marketplace_component custom view no longer defines an obsolete path value.

Related issue

Closes WIT-3451

[WIT-3437] Handle late status for data contracts with no results

New features and improvements

  • The latency warning is now shown also in the case of data contracts with no results available and late status

Related issue

Closes WIT-3437

[WIT-3315] Remove requirements docs from the repository

Breaking changes

  • The requirements doc is moved to the installation repo

Related issue

Closes WIT-3315

[WIT-3445] Fix payload size limit in Marketplace

Bug fixes

  • Payload size limit in the marketplace is now aligned with the platform payload limit size

Related issue

Closes WIT-3445

[WIT-3379] Custom view documentation

New features and improvements

  • Adds documentation for the zoom-in page custom views
  • Add support for typeId and templateId for the zoom-in page custom views
  • Align zoom in page custom views Input Object structure with the standard structure (descriptor fields are in the root, _computedInfo includes outside the descriptor)
  • Improve zoom-in page detail panel style

Related issue

Closes WIT-3379

[WIT-3428] Make marketplace disabled by configuration

New features and improvements

  • Using the mesh.marketplace.enabled configuration, you can completely remove the marketplace module from Witboost by setting it to false

Related issue

Closes WIT-3428

[WIT-3423] Improve marketplace generation script

New features and improvements

  • Improved the script to generate data for subcomponents and data contracts
  • Added the possibility to remove previously inserted data

Related issue

Closes WIT-3423

[WIT-3345] Integrate data contract monitoring result scheduling

New features and improvements

  • The guardian specification — in a guardian descriptor — now supports and validates the definition of monitoring result scheduling info
  • When data contract monitoring results are late, a warning is displayed in the Witboost Marketplace

Related issue

Closes WIT-3345

[WIT-3425] Data contracts graph error when result not found

Bug fixes

Fix an error in the data contracts graph when hovering over a data contract whose last result does not exist

Related issue

Closes WIT-3425

[WIT-3420] Introduce the disabled option in the EntitySearchPicker

Bug fixes

  • Introduced the ui:disabled option in EntitySearchPicker

Related issue

Closes WIT-3420

[WIT-3289] Data contracts graph

New features and improvements

  • Implements the new look of the data contracts graph

Breaking Changes

The key dataProduct in the relationsGraph palette object has now been renamed system.

Migration

In customPalette.json, if relationsGraph.dataProduct was defined, rename it to relationsGraph.system instead.

Related issue

Closes WIT-3289

[WIT-3406] Fix nested yaml substitution

Bug fixes

  • Fix nested yaml substitution

Related issue

Closes WIT-3406

[WIT-3393] Zoom in improvements

New features and improvements

  • Renaming and minor fixes on the zoom-in page

Related issue

Closes WIT-3393

[WIT-3394] Fix the error thrown when the personal token is not set

Bug fixes

  • Reworded the error that was thrown in case no personal git token was set during editing

Related issue

Closes WIT-3394

[WIT-3210] Pickers with "allOf"

New features and improvements

  • Updated the documentation, explaining the "required" property for the dependent picker in an "allOf"

Related issue

Closes WIT-3210

[WIT-3024] Update the reverse provisioning page

New features and improvements

  • Align the reverse provisioning edit page to match the edit template wizard.

Related issue

Closes WIT-3024

[WIT-3338] Fix handling of practice shaper graph entities with the same name

Bug fixes

  • Changed set values. From name (not unique) to 'name/kind'

Related issue

Closes WIT-3338

[WIT-3382] Fix href tags in the custom view

Bug fixes

  • href in tags now correctly works when setting the display value

Related issue

Closes WIT-3382

[WIT-3380] Fix Editor Wizard that crashes if validation fails

Bug fixes

  • Editor Wizard does not crash anymore if a required field is left blank
  • DescriptorPicker can now be emptied

Related issue

WIT-3380

[WIT-3193] Visual discovery zoom-in page

New features and improvements

  • introduced the new Zoom-In page to show dependencies between systems

Related issue

Closes WIT-3193

[WIT-3370] Allow personal access token when Builder APIs are invoked with server JWT

New features and improvements

  • allow the invocation of the Builder APIs with a server JWT while the usePersonalToken configuration is set

Bug fixes

  • fixed a bug that prevented the releases from being shown in the UI when created by a non-user

Related issue

Closes WIT-3370

[WIT-2955] Add documentation for data contracts

New features and improvements

  • Data contracts documentation: user and platform team manuals.

Related issue

Closes WIT-2955

[WIT-3281] Document witboost hardware requirements for k8s

New features and improvements

  • Add hardware requirements

Related issue

Closes WIT-3281

[WIT-3368] Fix search in the builder

Bug fixes

Search is now handled backend side only, by using fields:

  • spec.mesh.name
  • spec.mesh.tags
  • metadata.description
  • metadata.tags

Related issue

Closes WIT-3368

[WIT-3359] Set new data contracts page as default

New features and improvements

  • In custom views infos, the "__" prefix is removed in the label of internal fields

Related issue

WIT-3359

[WIT-3346] Documentation for data contract custom views

New features and improvements

  • Updates docs for custom views related to the new data contracts page

Related issue

Closes WIT-3346

[WIT-3362] SelectWidget with one option

Bug fixes

  • SelectWidget is not disabled whenever there's only one available option unless required.

Related issue

Closes WIT-3362

[WIT-3359-FollowUp] Minor fixes on data contracts

Bug fixes

  • removed check in the descriptor for data contracts guardians
  • subcomponents in the data contracts graph

Related issue

WIT-3359

[WIT-3359] Refine data contracts implementation

Bug fixes

  • Subcomponent were displayed in the search result page
  • Subcomponents can now be included in the readsFrom list
  • Fixed data contract drawer custom view download

Related issue

WIT-3359

[WIT-3308] Paginate my project and software catalog pages

New features and improvements

  • Added backend pagination for "My Projects" page
  • Added backend pagination for "Software Catalog" page
  • Removed deprecated Classes for "Favorites" boolean filter
  • Made rows per page configurable

Migrations

The number of rows per page can be configured in the app-config.yaml file for both the My Projects and Software Catalog:

builder:
ui:
# TODO this configuration will be removed as soon as the Backstage version will be updated
myProjectsPage:
# It corresponds to the number of projects to display in the "My Projects" page
pageSize: 25
# TODO this configuration will be removed as soon as the Backstage version will be updated
softwareCatalogPage:
# It corresponds to the number of entities to display in the "Software Catalog" page
pageSize: 25

Related issue

Closes WIT-3308

[WIT-3314] Align failed runtime policy notifications to the new CGP resource model

New features and improvements

  • systemFixNeeded and systemOpsImpact notifications now also handle violations on components and subcomponents
  • systemFixNeeded and systemOpsImpact notifications have been extended with some new fields:
    • wasAlreadyNonCompliant - indicates whether the resource was already non compliant with the policy even before this last failure
    • origin - a reference to the parent system when the failed resource is a component or subcomponent
    • isDataContractViolation - whether the resource is a data contract and the reported policy failure is a data contract violation reported by its data contract guardian
  • systemFixNeeded and systemOpsImpact notifications now support a new configuration skipIfAlreadyNonCompliant to optionally skip sending the notification if the resource has remained non-compliant with the policy continuously since the last notification was sent. Its scope can be limited to data contracts only
  • When systemFixNeeded and systemOpsImpact notifications report data contract violations, their message is diffrent from and more specific than the one on generic runtime policy failures

Bug fixes

  • The notifications.systemOpsImpact.triggerEnvironments configuration of the systemOpsImpact notification was not being read from the expected configuration path

Related issue

Closes WIT-3314, WIT-3332

[WIT-3031] Fix reference parsing in IdentifierPicker

Bug fixes

  • Parsed domain entity ref in IdentifierPicker

Related issue

Closes WIT-3031

[WIT-3293] Fix optional parameters in config

Bug fixes

  • add missing optional operator in config

Related issue

WIT-3293

[WIT-3293] Data Contracts Settings

New features and improvements

  • refactored cron in governance frontend, it is now part of wb-platform
  • added cron expression check also in the descriptor validator
  • fixed notification name for subcomponents
  • fixed some typos in docs and other small improvements in code
  • added _computedInfo.dataContract.settings object as described in WIT-3293
  • new object available in config under mesh.marketplace.ui.dataContracts.settings:
mesh:
marketplace:
ui:
dataContracts:
settings:
rootPath: path.to.dataContract.settings # defaults to dataContract.settings
ingestionModePath: path.to.ingestionMode # defaults to rootPath.ingestionMode
onBrokenContractPath: path.to.onBrokenContract # defaults to rootPath.onBrokenContract
descriptionPath: path.to.description # defaults to rootPath.description

Related issue

Closes WIT-3293

[WIT-3327] Data contract graph API integration

New features and improvements

  • Update the query used to populate the new data contract page by using the new marketplace table (with the policyId) and the governance API

Related issue

Closes WIT-3327

[WIT-3336] Fix the search functionality for entities with dots in their name

Bug fixes

  • if an entity name has a dot in its display name, the search will now work

Related issue

Closes WIT-3336

[WIT-3209] IdentifierPicker crashes when the domain is stored as an object

Bug fixes

  • The IdentifierPicker doesn't crash when the domain is an object

Related issue

Closes WIT-3209

[WIT-3251] RegexPicker fails in arrays

Bug fixes

  • Resolved custom validation of an array field with regex

Related issue

Closes WIT-3251

[WIT-3334] Rename environment variables

Improvements

Make environment variables consistent

  • Deprecate HASURA_ADMIN_SECRET in favor of HASURA_GRAPHQL_ADMIN_SECRET
  • Deprecate DB_ in favor of CORE_DB_
  • Prepend CORE_ to all the specific variables

Related issue

Closes WIT-3334

[WIT-3179] Default value for a dependent picker is not honored

Bug fixes

  • SelectWidget now sets the default value when the dependent picker value changes.

Related issue

Closes WIT-3179

[WIT-3304] Fix Tech docs templates drawer

Bug fixes

  • you can now navigate using the left menu in the template tech docs drawer

Related issue

Closes WIT-3304

[WIT-3326] Data contract details api integration

New features and improvements

  • Add integration with the governance API to fetch the real policy details in the new data contract drawer

Related issue

Closes WIT-3326

[WIT-3242] ACL revoke button

Bug fixes

  • If any ACL row access is provided the revoke button is disabled

Related issue

Closes WIT-3242

[WIT-3307] Use Hasura dependency config map

New features and improvements

  • Until now, the graphql endpoint had to be specified in the UI configuration. Now, Hasura automatically calculates the endpoint and places it in a "dependency" config map

Bug fixes

  • Fixes some unescaped characters that prevented documentation from building

Related issue

Closes WIT-3307

[WIT-3288] Data contract drawer

New features and improvements

  • Add a new Data Contract page (accessible by setting mesh.marketplace.ui.nextDataContractsPage.enabled at true) duplicated from the current one, containing a new custom view marketplace_data_contract_drawer displayed as the drawer of a selected Data Contract
  • Add data contract policy result data (mocked for now) as the available data for the marketplace_component custom view

*Bug fixes *

  • Fix a bug where the data contract graph would attempt to show subcomponents of a data contract

Related issue

Closes WIT-3288, WIT-3287, WIT-3298

[WIT-3292] Populate data contracts table after provisioning

New features and improvements

  • created new table data_contracts in marketplace
  • add graphql queries for the new table data_contracts
  • add data contracts rows in table after provisioning
  • add new checks to validate the descriptor
  • add unit tests
  • refactored some methods for better readability
  • add descriptor validator check also in the backend commit method, so that an error is thrown also in the deployment tab

Bug fixes

  • tooltip in edit and test now correctly updates if validation error is solved
  • clean up operations now correctly show subcomponents
  • undeploy for subcomponents now correctly removes row in instances

Related issue

Closes WIT-3292

[WIT-3108] Audit table cleaner

New features and improvements

  • changed column date from text type to timestamp in the audit table;
  • added a database cleaner for the audit table: the default job runs every day, and removes entries older than 6 months

Related issue

Closes WIT-3108

[WIT-3259] Github integration

New features and improvements

  • Introduced the integration with GitHub. This contains a way to define the new GitHub action and all the facilities needed to store the user's personal token, define a mono repo and multiple repositories, fetch branches, and perform all the builder operations (snapshot, commit, release, and new version).

Related issue

Closes WIT-3259

[WIT-3322] Added description in marketplace instances for domains

New features and improvements

  • Ingested description for domain instances for marketplace domains

Related issue

Closes WIT-3322

[WIT-3321] LDAP entity provider is not taking vendor configuration

Bug fixes

  • Fixed a bug that prevented LDAP entity provider to take vendor specific configurations set under mesh.ldapOrg

Related issue

Closes WIT-3321

[WIT-2956] Add registration for guardian infrastructure templates

New features and improvements

  • Extended the infrastructure template registration to support guardian templates
  • Updated the OpenAPI spec for the template registration endpoint

Related issue

WIT-2956

[WIT-3310] Add logging to LDAP entity provider

New features and improvements

  • Added some debug logs on the LDAP catalog module which helps troubleshoot ingestion issues

Related issue

Closes WIT-3310

[WIT-3258] Okta integration

New features and improvements

  • Introduced Okta as a new authorization provider
  • Introduced Okta as a new organization provider

Related issue

Closes WIT-3258

[WIT-3264] Policy result widget

New features and improvements

  • Align the data contracts policy result widget to new design

Related issue

Closes WIT-3264

[WIT-2953] Add descriptor validator for data contracts

New features and improvements

  • add DescriptorValidator
  • add tests
  • add checks for data contracts
  • subcomponents cannot inherit: __dataContractEnabled, __dataContractGuardianSpec from parent

Related issue

Closes WIT-2953

[WIT-3041] Explode sub components in the marketplace

New features and improvements

  • Added marketplace migration to explode sub components by making them instances
  • Modified marketplace backend insert-provisioning-results and delete APIs to handle sub components
  • Modified Hasura queries to show correctly sub components into output port page, visual discovery and data contracts

Related issue

Closes WIT-3041, WIT-3200

[WIT-3263] Update resource evaluation status calls

New features and improvements

  • Redirected policy violation and metric status calls to the new CGP's resource evaluation status endpoint
  • In the marketplace, policy violations and metric results are now also displayed on components

Related issue

Closes WIT-3263

[WIT-347] Centralize environments

New features and improvements

  • expose endpoint to fetch centralized environments from external sources
  • add environment service in the backend to fetch environments from backend modules
  • add environment API to fetch centralized environments from frontend modules

Breaking changes

  • priorities are no longer present in db marketplace.environments

Migration

  • if you want priorities, set them under mesh.builder.environments like this:
environments:
- name: dev
priority: 1
- name: prod
priority: 0

otherwise, leave it as it was before, but then priorities will not be present (the first one in the list will be taken as the one with the highest priority)

environments:
- production
- development

Related issue

Closes WIT-347

[WIT-3252] Entity Picker not populated correctly

Bug fixes

  • Entity Picker default value is now loaded correctly

Related issue

Closes WIT-3252

[WIT-3250] Fix selectAll action selecting not shoppable components

Bug fixes

  • Fix selectAll action selecting not shoppable components

Related issue

Closes WIT-3250

[WIT-3257] Fix noDataLabel and noDataCheck in custom views

Bug Fixes

  • In custom views, noDataCheck on the card and sub-card components don’t visualize the card if no data condition is met

Related issue

Closes WIT-3257

[WIT-3160] Handle wrong kind parameter in Software Catalog URL

Bug fixes

  • Fixed the selection of the first kind available if the kind parameter in the URL is wrong.

Related issue

Closes WIT-3160

[WIT-3001] Introduce the small logo and favicon

New features and improvements

  • Introduced the custom small logo
  • Restyled Witboost's favicon

Related issue

Closes WIT-3001

[WIT-3241] Re-introduce the "Select all" button when selecting components to request access

New features and improvements

  • Re-introduce the "Select all" button when selecting components to request access
  • The button is visible only if mesh.marketplace.multipleAccessRequestSelection is true

Related issue

Closes WIT-3241

[WIT-3246] Fix LDAP provider configuration

Bug fixes

  • LDAP configuration now correctly reads the environment

Related issue

Closes WIT-3246

[WIT-3244] Fix domain filters in case sub-domains have empty groups

Bug fixes

  • Fix a bug where filters would break if a parent domain had no matching results but one of its subdomains did

Related issue

Closes WIT-3244

Provisioning Coordinator

Changelog v1.9.0

[WIT-3815] Fixed unexpected removal of empty component lists from the descriptor

Bug fixes

  • Empty component lists are no longer removed from the descriptor.

Related issue

Closes WIT-3815

[WIT-3798] Update README with info for local run

New features and improvements

  • Updated README.md with useful info for the local run

Related issue

Closes WIT-3798

[WIT-3560] Updated Governance Engine in the OpenAPI specification

New features and improvements

  • OpenAPI specification of agent governance agent engine is up to date.

Related issue

WIT-3560

[WIT-3723] Update code owners

New features and improvements

  • Updated Core repository's CODEOWNERS

Related issue

WIT-3723

[WIT-3653] Update README with local setup instructions

Bug fixes

Added some details on the README to:

  • avoid a failure in coordinator run if there's not a local running Witboost UI instance
  • fix a frequent error, especially on Windows, in the sbt compile phase

Related issue

Closes WIT-3653

[WIT-2612] Fix Tech Adapter Spec to return a text/plain content when the response status code is 202

Bug fixes

  • The Tech Adapter OpenAPI specification has been fixed to return a text/plain content when the response status code is 202

Related issue

Closes WIT-2612

[WIT-3560] Document Governance Agent Engine

New features and improvements

  • Witboost's documentation on agent governance agent engine and policies is up to date.

Related issue

WIT-3560

[WIT-2942] Add support for Governance Agent Engine

New features and improvements

  • Added support for Governance Agent Engine

Related issue

Closes WIT-2942

[WIT-3452] Register primary resource before evaluating a derived one

Bug fixes

  • When registering a derived resource, the primary resource from which it derives is now automatically registered if not already persisted

Related issue

Closes WIT-3452

[WIT-3366] Vulnerability Assessment

New features and improvements

  • Upgraded cue version to 0.10.1
  • Upgraded node version to 20
  • Changed the reference to the docker image to use specifically the cue version needed

Related issue

WIT-3366

[WIT-3446] Fix evaluation result scheduling update rules

Bug fixes

  • In case of result scheduling update, if the current result deadline is set and has expired, the new deadline — derived from the new frequency expression — can extend the previous one but cannot reduce it. Otherwise, the new deadline is computed starting from the current time

Related issue

Closes WIT-3446

[WIT-3195] Change error type on evaluation timeout

Bug fixes

  • Timed-out governance entity evaluations are no longer marked as "not started" but as failed with the outcome depending on the governance entity severity

Related issue

Closes WIT-3195, WIT-3312

[WIT-3345] Add result scheduling to resource evaluation status

New features and improvements

  • CGP: The resource evaluation status can now include details about the expected result frequency
  • Coordinator: The Data Contract Provisioning task now updates the expected frequency for data contract monitoring results on CGP, based on the guardian's specification

Related issue

Closes WIT-3345

[WIT-3359] Fix data contract partial provisioning

Bug fixes

  • Fixed partial provisioning on data contracts and guardians

Related issue

Closes WIT-3359

[WIT-3357] Coordinator default metadata template upsert creates race condition

Bug fixes

  • Upserting default template metadata now is sequential to avoid race conditions on Coordinator startup

Related issue

Closes WIT-3357

[WIT-3314] Align failed runtime policy event to the new resource model

New features and improvements

  • Affected resources in a "Runtime policy failed" events now include a wasAlreadyNonCompliant field to indicate whether the previous status of the resource in relation to the evaluated policy was already in error
  • Affected derived resources in a "Runtime policy failed" events now include a origin field with a reference to their origin resource

Related issue

Closes WIT-3314

[WIT-3337] Fix mock tech adapter environment retrieval

Bug fixes

  • the Mock Tech Adapter is not loading witboost-secrets env vars

Related issue

Closes WIT-3337

[WIT-3229] Autoregister mock tech adapter and use it in the default template

New features and improvements

  • Introduced the configuration provisioning-coordinator.template-metadata to allow default template metadata registration at startup

Related issue

Closes WIT-3229

[WIT-3335] Rename env variables

New features and improvements

  • For a better management of env variables, we want to remove all the env variables that will be specified ad umbrella chart level.

Related issue

Closes WIT-3335

[WIT-3302] Create Database name field

New features and improvements

  • Secrets inside the witboost-secrets are now entirely loaded as env variables. This is more flexible because developers don't have to add each single env var to the yaml file.

Breaking changes

The extraEnv field is now an array. The reason behind this change is that as a string, it would not expand anchors, which we use in the umbrella chart to have a cleaner configuration.

The configuration changes from this

extraEnv: |-
- name: SQL_DBNAME
value: "provisioning_coordinator"

To this

extraEnv:
- name: SQL_DBNAME
value: "provisioning_coordinator"

Bug fixes

GCP Database configurations are using the same configurations of the Provisioning Coordinator (same env vars), with the only exception of the db host. This is inconsistent. This MR adds the GCP_DB_ prefix to all the other DB configurations for GCP, and COORDINATOR_DB_ prefix to all the DB configurations for the coordinator. All database configs have now a fallback to the newly introduced WITBOOST_DB_ configuration.

This MR also adds configurations that were missing and aligns the GCP database config table to the PC one.

Related issue

Closes WIT-3302

[WIT-2959] Implement provisioning for guardian components

New features and improvements

  • A data contract provisioning task in now included in the provisioning plan when there's a request to deploy data contracts or guardians
  • New endpoints on CGP to register and fetch resources, and update their evaluation status in relation to a governance entity

Related issue

Closes WIT-2959, WIT-3294

[WIT-2956] Add registration for guardian infrastructure templates

New features and improvements

  • The registration endpoint for infrastructure templates now supports data contract guardian properties
  • Added support for data contract guardian template registration and editing
  • Optimized the governance entity status change operation on CGP by removing unneccessary steps

Related issue

Closes WIT-2956

[WIT-3147] Implement resource handling

New features and improvements

  • Introduced resources and resource evaluation status
  • Refactored the evaluation process to work with resources and update the resource evaluation status
  • Exposed a new endpoint POST /v1/computational-governance/resources/evaluation-status/search-query to query the evaluation status of one or more resources
  • Introduced a configuration flag — intended only for maintenance or development purposes — to skip the environments retrieval from the platform services

Breaking changes

  • CGP endpoint GET /v1/computational-governance/evaluation-reports has been dismissed
  • Policy violations and metric results endpoints have been dismissed

Related issue

Closes WIT-3147

[WIT-3277] Fix missing secrets in deployment for envs

Bug fixes

  • add secret PLATFORM_SERVICES_BACKEND_BASE_URL
  • add secret PLATFORM_SERVICES_HTTP_SECRET

Related issue

Closes WIT-3277

[WIT-347] Pull environments from core services

New features and improvements

  • environments are fetched from the UI at startup

Breaking changes

  • added environments configuration and secret in GCP, instead of a list of hardcoded environments
  • to pull environments at startup, the core service should be up and running

Migration

  • define PLATFORM_SERVICES_BACKEND_BASE_URL env var, that will be placed under platform-services.base-url of cgp config
  • define PLATFORM_SERVICES_HTTP_SECRET env var (backstage token), that will be placed under platform-services.http-secret of CGP config

Related issue

Closes WIT-347