What the Asset Inventory is

The Asset Inventory is a generated report over everything a harness found: the concrete, countable things that make up a software estate — endpoints, schemas, tables, jobs, policies, dashboards, models, documents, and more — organised into families and types, each one traceable to the evidence behind it.

Its value is the combination of breadth and drill-down. A family-level view shows the shape of an estate; a type-level list makes a specific class of asset discoverable; an asset record shows why it exists in the report. Teams can use that path to find migration scope, duplicated technology, unowned interfaces, delivery and runtime dependencies, security-relevant assets, or gaps between expected and observed estate coverage.

MSOCK Asset Inventory showing asset families and technical asset types with all estate-specific counts removed
Preview feature

The family and type layout makes a large estate browsable without flattening everything into one list. This image comes from a populated report, but all estate-specific counts and identifiers have been irreversibly masked.

The rail node opens once the graph is committed. Some stage screens also offer Open report at the point where the report becomes useful.

Build the report

The report is produced in three phases, shown as a journey across the top of the page.

PhaseWhat happens
PrepareThe worklist is assembled from the harness's own knowledge
Mine assetsThe mining session works through that list. You can watch the live session in a read-only terminal
PublishThe finished report is written and becomes readable

Two build paths are offered:

  • Build the initial report (no AI mining) produces the deterministic report immediately, from what the harness already recorded.
  • Create my report runs the full arc, including AI mining, for a considerably richer result.

Mining pauses for your review before it starts work that costs time and money. Until you approve it, the journey shows Waiting for your review….

The 12 asset families

FamilyWhat it covers
Code, Build & DeliverySource, build, packaging, and delivery artefacts
Interfaces & MessagingAPIs, event contracts, and message formats
Data & StorageSchemas, tables, collections, and data contracts
UI & Client ExperienceScreens, client applications, and interface assets
Runtime & InfrastructureContainers, manifests, infrastructure definitions, and configuration
Automation & SchedulingJobs, schedules, pipelines, and automation
AI & MLModels, endpoints, prompts, knowledge stores, and agents
Security, Identity & CompliancePolicies, identity definitions, certificates, findings, and compliance artefacts
Quality & TestingTest results, coverage, and quality evidence
Operations & ReliabilityTelemetry, alerting rules, dashboards, and service objectives
Documentation & KnowledgeDocuments, diagrams, decision records, and vocabularies
Business & ProductBusiness processes, decisions, requirements, and journeys

Within those families the report recognises 127 asset types, each defined against a published format or a well-known convention — OpenAPI, AsyncAPI, JSON Schema, Avro, CycloneDX, SPDX, Terraform, Kubernetes manifests, Dockerfiles, OPA Rego, SARIF, OSCAL, BPMN, DMN, Gherkin, Model Cards, Mermaid, PlantUML, C4, and many more.

Read the report

  • Start at the family level for the shape of the estate.
  • Drill into a type to see every asset of that type. Drill-down is page navigation, so the browser's back button works.
  • Open an asset to see its detail, its source, and the evidence excerpt behind it.
  • Search by name or qualified name from two characters upwards.
  • Show n/a types reveals the types that produced nothing, so an empty category is visible rather than silently missing.

Use the inventory for a decision

DecisionStart withThen verify
What must move or be retired?Repository, deployable component, database, queue, job, and infrastructure typesAsset evidence, owners, dependencies, and graph relationships
Which interfaces need compatibility planning?API, event, schema, message, and contract typesConsumers, versions, interface mappings, and Known Unknowns
Where could delivery or operational risk concentrate?Build, pipeline, runtime, telemetry, alert, and service-objective typesWhether each asset is verified or inferred and which sources were in scope
What reusable capabilities already exist?Shared library, service, model, prompt, knowledge-store, and template typesQualified name, source, evidence, and current lifecycle status
Where is coverage unexpectedly empty?Show n/a types and families with low or zero findingsWhether the asset is truly absent or the necessary evidence was not captured

The inventory supports discovery and triage; it does not replace ownership, security, licensing, or lifecycle review. Counts are always relative to the locked source boundary.

Evidence

An asset carries the source lines that produced it. Earlier releases withheld that excerpt for several type families; that restriction was removed because it hid more than half the report's value while protecting nothing — you are reading your own locked sources on your own machine.

Treat the excerpt the way you treat any captured source content: it can contain sensitive business data, and your organisation's classification and handling policy applies.

Export

Any level of the report can be exported as JSON. A large type export is capped, and the file states honestly that it contains the first N of M rows.

If the report is rebuilt while an export is running, the export aborts and no file is written, rather than splicing two different generations into one file. Run it again.

Availability

Where the harness livesAsset Inventory
Working — your live harnessBuild and read
Local release — your own sealed versionRead the published report
Downloaded — a teammate's published versionRead the published report

A harness whose report was never built shows an honest "no report" state rather than an error. Desktop only — the report cannot be opened from the web application.