How it works
Scan, Extract, Translate: how A4A turns paper into coded history
A4A is not ETL. This page breaks down the pipeline one stage at a time, the delivery schedule, the security posture, and who is offering it. To run the pipeline yourself on a maintenance write-up, use the interactive demonstration.
The problem
Millions of records, and the useful part is unreadable
IMDS and REMIS hold the maintenance history of the fleet. The qualitative detail that would shorten a troubleshooting cycle sits in free-text narrative fields typed under time pressure, full of typos, non-standard acronyms and shop shorthand. Analytical tools cannot parse it.
What it costs the technician
The historical repair that would answer today's discrepancy exists but cannot be found. Troubleshooting restarts from scratch on a fault the fleet has already seen and already fixed.
What it costs the analyst
Finding recurring bad-actor parts means reading thousands of logs by hand. The same failure written five different ways does not group, so it never surfaces as a trend.
The specific technical problem
Two records describing one failure, "nr 1 hyd sys press fluctuatng" and "number one hydraulic system pressure fluctuates", are different strings. Nothing groups them. Standardizing the surface form is what makes everything downstream possible, and on this demonstration corpus it is worth 15.0 percentage points of coding accuracy on its own.
How it is assembled
This is not ETL. It is SET.
A data-integration vendor reads this requirement and proposes ETL , extract from a source system, transform, load, because they assume the hard part is a schema mismatch between two databases.
The hard part is that much of the source is paper. Maintenance history exists as scanned forms, work packages and logbook pages carrying handwritten entries, alongside the typed narrative fields in IMDS and REMIS. A pipeline that starts at "connect to the source database" never reaches the records that matter most.
| Stage | What it means | What it is not |
|---|---|---|
| Scan | Get the page into a normalized, provenance-bearing image: batch integrity, checksum, decode, tile | Not a file copy. A page with no chain of custody is not evidence. |
| Extract | Get the words off the page, including handwriting, which classical OCR does not read reliably | Not a database query. The text is not machine-readable yet. |
| Translate | Turn that text into standardized, coded, queryable data: cleanse, assign the ATA code, index | Not a schema mapping. There is no source schema to map. |
The distinction is operational. Under ETL a handwritten logbook page is out of scope. Under SET it is the first-class input, and Extract is where the risk actually sits.
Tested against the running components, including a failure
Edgent called its existing Scan and Extract routes directly rather than describing them.
Scan works. A batch declaring 17 pages against 16 files was quarantined rather than silently ingested. Pages decode, and each yields a SHA-256 and a preview.
Extract could not run. The route is wired and executes, but the vision-language model it calls is currently offline, so no text was extracted. Edgent is reporting that rather than omitting it.
The failure behavior is the result worth having. With the reader unavailable the pipeline returned doc_type: "ocr_error", confidence: 0 and disposition: "human_review" with empty text, while still recording the page checksum and preview. It routed the page to a human instead of emitting empty or invented text. In a maintenance record a fabricated entry is a safety problem, not a data-quality problem, this is the behavior the Government should require of any vendor answering this requirement.
The 30-day claim rests on the rest of it being assembly of components Edgent already operates. Each stage is marked shipped or design intent, because "how much of this is new" is the question a 30-day claim has to survive.
| Stage | Component | Status |
|---|---|---|
| Batch ingestion, records to object storage, event, worker processing | Document ingestion in the Edgent lakehouse | Shipped |
| Render, page-split and index legacy source material | Page rasterization, vision-model OCR, classification, indexed into a governed table | Shipped (demonstrated end-to-end on a federal document corpus) |
| Narrative cleansing and standardization | Deterministic lexicon and typo repair, as measured on this page | Shipped (the ACC lexicon is configuration) |
| ATA code assignment | Embedding and classification over the cleansed corpus | Design intent (demonstrated at 66.0%; tuning to threshold is pilot work) |
| Governed storage, bronze, silver, gold, with audit and access control | Edgent's medallion lakehouse on open formats, with hash-chained tamper-evident audit and relationship-based authorization | Shipped |
| Retrieval, plain-language query and recommendation | Self-hosted embedding inference and vector store already backing retrieval in Edgent's platform | Shipped (the ACC corpus and tuning are configuration) |
The precedent: legacy records nobody could read
Edgent's document pipeline already handles a harder version of this problem on a worse medium. Scanned film is normalized, bitonal promoted to sRGB and downscaled to a pixel budget, because high-DPI film otherwise exceeds the vision model's token budget, and a fiche sheet, which is an M×N array of page frames, is split on a frame grid. Pages are then rendered, transcribed by a vision model, classified and written into a governed table.
PDFs are rasterized per page rather than text-extracted, so tables, forms, stamps and signatures survive. That matters directly for Technical Orders, where the procedure lives in the table and the diagram and text extraction destroys exactly the part that was needed.
Stated precisely: this pipeline has been run end to end on a federal document corpus, page-split and indexed into a governed table. It has not yet been run on customer microfiche under contract. The precedent is that the path from illegible legacy record to queryable page is built and working, not that it has been delivered to a customer.
IMDS and REMIS narratives are the easier case: the text is already text.
How this was built
Thirty days is a schedule, not an aspiration
The Government's question about a thirty-day delivery is not whether Edgent can write software quickly. It is schedule risk: what happens to the milestone dates when the hard parts turn out to be hard.
A4A answers that by not starting at zero. The orchestration engine, the governed storage, the retrieval substrate and the authorization model are already built and already running. That head start is the schedule. The thirty days is spent on aviation, on the corpus, the ATA taxonomy and the tuning, instead of on the infrastructure that would otherwise consume most of it.
The shortest version of the argument
The "scan a page" card in the demonstration above is not a picture of the platform, it is the platform. The page posts to a VForce Flow ingress trigger. The pipeline behind it is a file, flows-config/flows/a4a-document-extract.yaml, held in version control and applied to the running engine by CI. It calls the lakehouse, which decodes the page, reads it with a vision model on Edgent's own GPU, classifies it, scores it and writes a governed row to cedms.microfiche.pages inside this tenant's Iceberg namespace.
That flow definition is new. Everything it calls is not. Writing it took an afternoon, because the engine that runs it, the storage it writes to and the model that reads the page were already there. That ratio is the whole argument, and it is the ratio the rest of A4A is estimated on.
The components, and what each one actually contributes
Each is marked shipped or design intent on the same basis as the pipeline table above, and where a component is real but is not yet doing the A4A job, that is said rather than blurred.
- The platform
-
Every Edgent product is built the same way: a domain model with ports and adapters, so storage, messaging and inference are interfaces the domain is written against rather than dependencies wired through it. Two consequences matter to a compressed schedule. Multi-tenancy is structural rather than a filter someone has to remember to apply: the tenant is bound to the credential, not to a header a caller can set, and it becomes part of the storage path itself. Authorization happens at a gateway, before a request reaches any application code, where a Keycloak-issued token is validated and a relationship-based access decision is made in OpenFGA. A4A therefore ships with no tenancy or authorization logic of its own, and that is the part of a new federal system least forgiving of a short timeline.
ShippedStated precisely: the policy engine intended to sit alongside OpenFGA is written and unit-tested but is not yet in the request path. It is not claimed as enforcing.
- VForce Flow
-
The orchestration engine. Pipelines are drawn in a visual designer and kept as YAML, validated by flowc and applied and published to the running engine by flowctl in CI, so changing a pipeline is a reviewed merge rather than a console edit. Durable execution runs on Temporal in the deployed configuration, behind an engine port, so retries, timeouts, conditional branches and run history belong to the platform rather than being rebuilt per product. The branch that turns a silently empty OCR result into a failed run, described under pipeline, is a few lines of that YAML rather than a code change.
Shipped - pixelMapper
-
Visual similarity search. A self-hosted vision-language model embeds an image into the same vector space as text, so a photograph can be the query and a nearest-neighbor search returns what it resembles rather than what it is described as. For A4A this is the route to identifying a part or a form from a photograph instead of from a typed description.
ShippedIn service today against a different corpus, on Edgent's forensic image-matching path. Nothing on this page uses it. The demonstration above reads a page with vision OCR and then retrieves over text; image-as-query is a capability Edgent operates, not one exercised here.
- The lakehouse
-
Governed storage on Apache Iceberg, with the bronze, silver and gold layer a first-class property of a table rather than a naming convention. Each tenant gets its own namespace root, so a tenant boundary is a fact about the storage path and not only a predicate someone appended to a query. The audit log is hash-chained: every entry carries the hash of the entry before it, so an edit or a deletion breaks the chain and becomes detectable rather than merely prohibited. Every page A4A reads lands as a governed row, and the record of who read what is kept under the same controls, in the same place. The audit page publishes the live chain proof for this demo: whether the chain is intact, right now, on demand.
Shipped - Vector similarity search
-
Retrieval over prior maintenance records is what turns a new write-up into a list of comparable historical cases and what fixed them. It runs on a self-hosted BAAI/bge-m3 embedding service on Edgent's own GPU, open weights, deliberately local so the vector space never leaves the deployment. It is the same service that already backs retrieval in the platform: the figures under measured results were produced by calling it, not by a model stood up for this demonstration.
ShippedStated precisely: the index for the document path is held in memory today and rebuilt from the gold table after a restart. A durable index is already wired for other collections, so this is configuration rather than new work, but it is not what the document path uses at present.
Where the thirty days goes
| What A4A needs | Where it comes from | New for A4A? |
|---|---|---|
| Orchestration: retries, timeouts, conditional branching, run history | VForce Flow | No. Already running. |
| Reading a page: decode, vision OCR, classify, score, route to a human | The lakehouse document pipeline | No. Already running. |
| Governed storage, tenant isolation, tamper-evident audit | The lakehouse, on Iceberg | No. Already running. |
| Embedding inference and similarity search | Self-hosted bge-m3 on Edgent GPUs | No. Already running. |
| Identity, tenancy and authorization | The platform gateway, Keycloak and OpenFGA | No. Already running. |
| The maintenance-shorthand lexicon and the cleansing rules over it | Authored for aviation, on the shipped cleanser | Yes. Content, on a running component. |
| The ATA chapter taxonomy and the classifier over it | Authored for aviation, on the shipped embedding service | Yes. Configuration and content. |
| Accuracy tuning against a real labeled corpus | The pilot | Yes, and this is where the risk sits. |
Read down the last column: the infrastructure rows are settled and the open rows are aviation. That is the difference between a thirty-day estimate and a thirty-day commitment. Configuration and content on a running system can be scheduled; standing up orchestration, governed storage and a retrieval substrate inside thirty days could not be.
What the head start buys, and what it does not
It buys schedule. The components above are why milestone dates can be committed rather than estimated. The remaining work is aviation-specific configuration and content on top of a running system, and that is schedulable in a way that new infrastructure is not.
It does not buy accuracy. ATA chapter assignment measures 66.0% top-1 against the draft SOO's 90%, and no amount of existing platform closes that gap by itself. Closing it needs a labeled corpus of real records, sub-chapter labels rather than chapter level, and an SME feedback loop on low-confidence assignments. That is what a pilot establishes, and it is the residual risk on this effort. Being confident about a timeline and being confident about a score are different claims, and Edgent is making only the first.
It does not change Edgent's compliance posture. None of the components above carries an accreditation, and none is offered as one. See security and hosting.
Security and hosting
IL4 is a requirement to be met, not a status Edgent holds
The draft SOO requires operation in an IL4-compliant environment. Edgent's position on that, and on every adjacent framework, is stated exactly rather than implied.
| Framework | Edgent's actual status |
|---|---|
| DoD Impact Level (IL4 / IL5) | Edgent holds no Impact Level accreditation and claims none. A4A deploys into the Government's accredited IL4 boundary; the accreditation stays with the Government. |
| FedRAMP | Edgent is not a FedRAMP-authorized provider. Edgent builds on FedRAMP-authorized infrastructure as integrator and developer. |
| Authority to Operate | Edgent holds no ATO. Edgent supports the SSP and control-implementation package; the ATO is the Government's to grant. |
| CMMC | Not certified. Level 1 self-assessment in progress. For Level 2, Edgent teams under a certified prime or certifies on the contract's timeline through a C3PAO. |
| NIST SP 800-171 | Implementation in progress. SSP and POA&M are the foundation. No SPRS score is posted. |
| Security clearances | No team member currently holds an active clearance, and none has held TS/SCI. Two principals held Secret previously; both are reinstatable on a sponsored pursuit. |
| Section 508 / WCAG 2.1 AA | Standard on Edgent deliverables, including this page. |
Data stays in the enclave
A4A deploys inside the customer's boundary. Inference is local to the deployment: embedding and retrieval models run as open weights on Government-controlled infrastructure. There is no call-home, no vendor telemetry channel and no maintenance data egress.
Every answer is traceable
Recommendations are retrieval-grounded. Each cites the specific records it was derived from, with their similarity and whether the repair held, so a maintainer or a QA inspector can audit the reasoning rather than trust it.
Edgent LLC
Who is offering this
Legal name
Edgent Limited Liability Company
UEI / CAGE
UZFLEDGS3PC5 · 1ZSR0
Socio-economic status
SBA-certified Service-Disabled Veteran-Owned Small Business and Veteran-Owned Small Business
NAICS 541511
Registered. Small under the $34.0M size standard.
Team
Ten professionals across engineering, program management and instructional design
Contact
Eric G. Diana, Managing Member
eric.diana@edgentllc.com
Past performance
Edgent LLC was formed in March 2026 and has no corporate past performance on this or any capability. Where Edgent cites delivery experience, that experience belongs to named individuals through prior employers and is labeled as such. Edgent does not present it as corporate contract history.
About this page
Published in support of Air Combat Command Sources Sought FA4890-260713, A4A – Aircraft Maintenance Assistance. A Sources Sought is market research; no award results from it.
All demonstration data is synthetic and authored by Edgent. Every measured number on this page is produced by the evaluation harness that ships with the demonstration, and the shortfall against the draft SOO's 90% threshold is stated rather than omitted.
This page makes no external requests. It loads no third-party scripts, fonts or analytics, and sets no tracking cookies. Fonts are local subsets.
Edgent LLC · 311 Rimrock Ct, Bastrop, TX 78602 · 480-414-5556 · edgentllc.com