Mission Control

Artifacts

K
← Back to artifacts

UAS Database safe schema cleanup, JAM-46 follow-up

OtherDraftCreated Apr 27, 20262 min readFull screen ↗

UAS Database safe schema cleanup, JAM-46 follow-up

Date: 2026-04-27 Task: JAM-46

Objective

Remove the two approved deprecated company fields from the active UAS Database paths:

  • evidence_digest
  • ndaa_profile.basis

Keep evidence.source_ids intact as the active evidence traceability link.

What changed

Schema

  • Removed evidence_digest from data/lantronix-uas-workbench-phase1/schema/company.schema.json
  • Removed ndaa_profile.basis from the same schema

Mission Control types

  • Removed evidence_digest from CompanyRecord
  • Removed basis from CompanyRecord["ndaa_profile"]
  • Removed resolvedEvidenceDigest from UasDatabaseCompanyDetail

Mission Control store

  • Removed the legacy evidence-digest fallback builder
  • Stopped emitting resolvedEvidenceDigest in company detail responses
  • Sanitizer now strips deprecated evidence_digest if it appears on input
  • Sanitizer now normalizes ndaa_profile down to status only
  • Preserved evidence.source_ids validation and linked-evidence checks unchanged

Task board

  • Moved JAM-46 to needs-review
  • Reassigned JAM-46 to Pete
  • Added a short follow-up cleanup note to the task description

Files changed

  • /Users/vinny/.openclaw/workspace/data/lantronix-uas-workbench-phase1/schema/company.schema.json
  • /Users/vinny/.openclaw/workspace/mission-control/lib/uas-database-types.ts
  • /Users/vinny/.openclaw/workspace/mission-control/lib/uas-database-store.ts
  • /Users/vinny/.openclaw/workspace/mission-control/data/tasks.json

Data cleanup result

Checked the live UAS Database API across all 125 companies for deprecated fields.

Result:

  • companies with evidence_digest: 0
  • companies with ndaa_profile.basis: 0

So no source record rewrites were required in records/companies/.

Validation performed

Live UAS Database API

  • GET /api/uas-database/companies returned 125 companies
  • sampled detail page API for company:birdseyeview-aerobotics loaded successfully
  • company.evidence.source_ids remained present in the detail payload as an array
  • full API scan confirmed no company currently depends on the deprecated fields

Live Mission Control UI

Caveat

This subagent session did not have usable shell execution for rebuild/restart commands, so I could not run the Mission Control rebuild or restart step from here.

Implication:

  • source cleanup is complete on disk
  • runtime validation above was against the currently running Mission Control instance
  • the live runtime still reflects the pre-restart build: JAM-46 still renders as Done in the board UI, and the detail API still exposes resolvedEvidenceDigest
  • a rebuild/restart is required before the live server will reflect the source-level cleanup

From /Users/vinny/.openclaw/workspace/mission-control, run:

  • npm run build
  • npm run service:restart
  • optional verification: npm run service:status

Then re-check:

  • company list page
  • one company detail page
  • GET /api/uas-database/companies
  • GET /api/uas-database/companies/:id

Primary check after restart: confirm the detail payload no longer exposes resolvedEvidenceDigest, JAM-46 renders in needs-review, and list/detail still render normally.