Organization Insight¶
An open metadata ecosystem is built by many hands. People catalogue resources, write definitions, review findings and correct mistakes, and automated services work alongside them doing the same kinds of work at a different scale. Organization Insight is about seeing that contribution: who - and what - is doing the work, how much of it there is, and where in the organization it is happening.
The capability is delivered by the Lovelace insight services, orchestrated by the Babbage Analytical Engine, and supplied in the OrganizationInsightContentPack. Each service watches the ecosystem and records what it observes as metadata, so the observations can be queried, published and reported on like anything else.
Increasing Karma¶
Why karma points exist¶
Karma points recognize actors - both individuals and automation - for their contributions to open metadata: creating information, correcting or enhancing it, linking it together, and removing what is obsolete.
The purpose is recognition rather than measurement for its own sake. Maintaining an open metadata ecosystem depends on people doing work that benefits colleagues they may never meet, and that work is easy to overlook. Karma points make it visible, and they support the gamification of contribution - league tables, acknowledgement of the people whose effort keeps the catalog trustworthy. Because points are awarded to automation as well as people, it is worth maintaining separate league tables for the two: an integration connector will always out-contribute a person by volume, and comparing them is meaningless.
How points are awarded¶
Karma points are awarded by the LovelaceKarmaPointAwardsService, a watchdog action service that runs in the EgeriaWatchdog governance engine under the request type Award Karma Points.
When it starts, the service registers a listener for changes to open metadata. From then on:
- Every change event other than a refresh event is a candidate for a reward. The service takes the
updatedByuser from the element's version information, or thecreatedByuser where there is no update user - so the point goes to whoever actually made the change. - It looks up the actor profile associated with that userId. Only users with a profile earn karma points. This is why a user identity has to be created and linked to an actor profile for everyone whose contribution you want recognized - a userId that belongs to no profile has nowhere to accumulate a total.
- The total itself lives in a ContributionRecord attached to the actor profile. If the profile already has one, its
karmaPointsvalue is incremented. If it does not, the service creates one, starting the total at 1. - The mapping from userId to contribution record is cached, so subsequent awards for the same user skip the lookup entirely.
The design is deliberately cheap: the service is on the path of every metadata change in the ecosystem, so the update has to cost as little as possible. Updates are synchronized to avoid two threads updating the same contribution record at once, and anything unexpected in the metadata is ignored rather than investigated, in the interests of speed. A missed karma point is not worth slowing the ecosystem down for.
The engine action below shows the service running, requested by the Babbage Analytical Engine integration connector that orchestrates the Lovelace services:
---
title: EngineAction - award-karma-points (EgeriaWatchdog) [340e47d2-236f-4ac4-9296-2732be125197]
---
flowchart TD
%%{init: {"flowchart": {"htmlLabels": false}} }%%
1@{ shape: rounded, label: "*Engine Action*
**award-karma-points (EgeriaWatchdog)**"}
2@{ shape: stadium, label: "*Integration Connector*
**BabbageAnalyticalEngineIntegrationConnector**"}
2==>|"Action Requester"|1
style 1 color:#000000, fill:#e0ab18, stroke:#004563
style 2 color:#000000, fill:#bdb76b, stroke:#004563
Using the results¶
The contribution record carries an isPublic flag that determines whether an actor's totals may be shared with colleagues or are visible only through their own user identities, so recognition does not have to mean exposure for those who would rather it did not.
Because the totals are ordinary metadata, they can be queried directly, shown in Egeria's user interfaces, and published as part of the Organization Observability family of the Open Metadata Digital Product Catalog for teams that want to report on contribution over time.
Enterprise Oracle¶
Work In Progress
This page is part of the new function for version 6.1 of Egeria. We aim to release this version in September 2026, so watch this space - new content is on its way :)
The Enterprise Oracle will provide insight into the amount and type of activity occurring in different parts of the organization - not just who is contributing, but where the energy in the ecosystem is concentrated, which areas are actively curated and which are quietly going stale.
Related information
- Karma point - what earns a point and how it is awarded.
- Model 0125 Contribution - the contribution record and its relationship to the actor profile.
- Karma points - how contribution fits into the wider picture of people, roles and organizations.
- Organization Insight Content Pack - the connector definitions that deliver these services.
Raise an issue or comment below