You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 2753472
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: plans/implementation.md
+34-7Lines changed: 34 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -465,6 +465,16 @@ F1 generates the initial immutable ArcIR state artifact and a diagnostic report.
465
465
466
466
## Phase 6 — Top-level ARC-native F1 and curation integration
467
467
468
+
> **Status: READY FOR OVERARC (2026-08-27).** All prerequisites owned outside
469
+
> the integrating application are complete. `ER_ontologies` owns the initial
470
+
> versioned Curation Transformation Ontology (`CTRO`), and
471
+
> `playground/crawl_arcir.fsx` demonstrates live project crawl, additive base
472
+
> mapping, validation, and canonical immutable-state publication. The remaining
473
+
> work in this phase—mapping policy, curation transactions, native ARC/ISA
474
+
> process emission, validation artifacts, and Git coordination—is owned by
475
+
> OverARC. This repository must not introduce a parallel provenance format or an
476
+
> ARC representation dependency to complete that application work.
477
+
468
478
Add the top-level integrating application layer that applies typed graph operations, configures F1 from mapping artifacts, and contributes to the ARC's native process model. The process graph, not an ArcIR file or BioFSharp-specific log, is the authority for lineage, agents, software versions, used/generated entities, and process relationships. Use the established representation library for each ARC realization; for an ISA-formatted ARC, emit ordinary ISA assay process rows rather than serializing a parallel provenance document.
469
479
470
480
### SSSOM ownership and initial F1 configuration
@@ -500,12 +510,19 @@ resolver, or duplicate SSSOM parser. The INSDC adapter uses only the pinned
500
510
PolyglotSSSOM dependency and declared document prefix maps; it adds no remote
501
511
resolver or fallback codec.
502
512
503
-
### Versioned transformation ontology
513
+
### Versioned Curation Transformation Ontology
504
514
505
-
Define the small ontology used by the downstream ARC integration to identify the semantics of curation and conversion processes. It belongs to the provenance integration layer, not to the ArcIR graph model, canonical JSON schema, or fragment-addressing API. Begin with competency examples rather than a large hierarchy and cover at least lexical normalization, splitting, parsing, semantic mapping application, creation, replacement, and deletion.
515
+
The initial Curation Transformation Ontology is maintained as
516
+
`ontologies/CTRO/CTRO.obo` in `nfdi4plants/ER_ontologies`, with its competency
517
+
examples beside it. It is the small ontology used by downstream integrations to
518
+
identify the semantics of curation and conversion processes. It belongs to the
519
+
provenance integration layer, not to the ArcIR graph model, canonical JSON
520
+
schema, or fragment-addressing API. CTRO covers lexical normalization,
- Give every transformation concept a stable absolute IRI, label, definition, and versioned ontology artifact.
508
-
- Distinguish creating or curating a mapping claim from applying an existing mapping claim to an entity or literal occurrence.
525
+
- Distinguish creating or curating a mapping claim from applying an existing mapping claim to an entity or literal occurrence. SEMAPV remains authoritative for mapping-claim creation and review; CTRO supplies mapping-application terms.
509
526
- Treat a SSSOM mapping record as an input to a semantic-mapping process. The transformation term says that a mapping was applied; it does not duplicate the SSSOM subject, predicate, object, justification, or provenance.
510
527
- Keep delimiters, parse formats, and similar execution details as process parameters rather than minting ontology terms for every parameter value.
511
528
- Use the terms in the ARC's native process representation, such as ontology-typed ISA protocols or process parameters. Do not define a transformation-log serialization or make `BioFSharp.ArcIR` depend on this vocabulary.
@@ -514,7 +531,7 @@ Define the small ontology used by the downstream ARC integration to identify the
514
531
515
532
- F1 native process topology consumes designated source artifacts/fragments and mapping artifacts/records and generates both the initial immutable ArcIR state artifact and its selected output fragments.
516
533
- A completed curation transaction consumes one selected immutable ArcIR state artifact and generates a new complete state artifact at a different path. The native process topology records both whole-artifact lineage and the selected input/output fragments that explain fine-grained transformations. Earlier states are never overwritten or removed.
517
-
- Each represented transformation uses a term from the Phase 6 transformation ontology together with native process inputs, outputs, protocols, and parameters. `FragmentRef` is only the library-side designation used to populate those native entities.
534
+
- Each represented transformation uses a CTRO term together with native process inputs, outputs, protocols, and parameters. `FragmentRef` is only the library-side designation used to populate those native entities.
518
535
- An updated assertion may retain its IRI while its input and output are distinguished by different state artifacts. Split, merge, replacement, creation, and deletion use the appropriate input/output cardinality and new IDs where semantic identity changes.
519
536
- A scalar literal requires no ID: its artifact-qualified value selector designates the process input. A generated intermediate entity may receive identity from its position in the native process graph even when it is not persisted as an independently identified `ArcValue`; if it is persisted in ArcIR, its output fragment is also designated.
520
537
- Validation runs before commit and generates its own report artifact when findings exist.
@@ -531,7 +548,7 @@ Do not prematurely require these to be one or two rows in every ARC representati
531
548
532
549
### Phase acceptance
533
550
534
-
-Transformation ontology competency examples cover one-to-one, one-to-many, literal-to-term, creation, replacement, and deletion without defining a custom provenance document.
551
+
-CTRO competency examples cover one-to-one, one-to-many, literal-to-term, creation, replacement, and deletion without defining a custom provenance document.
535
552
- The Phase 4 base mapping is loaded through the Phase 5 INSDC adapter at its
536
553
pinned `PolyglotSSSOM` revision and configures exact administrative mappings
537
554
during initial F1 without entering the ArcIR core dependency graph.
@@ -543,6 +560,12 @@ Do not prematurely require these to be one or two rows in every ARC representati
543
560
544
561
## Phase 7 — Define the F2 compiler boundary
545
562
563
+
> **Status: TRANSFERRED TO OVERARC (2026-08-27).** F2 orchestration selects an
564
+
> immutable state, a target profile, native ARC process metadata, and generated
565
+
> artifacts, so the concrete boundary belongs to the integrating application.
566
+
> `BioFSharp.ArcIR` remains the target-neutral state and fragment API and gains no
567
+
> ARC- or target-specific dependency for this phase.
568
+
546
569
Define a target-neutral compiler contract, a target-profile contract, and test doubles; do not implement an ARC, RO-Crate, ISA, readiness-level, or other concrete F2 output profile in this roadmap. The compiler reuses the Phase 6 ARC integration only to record F2 provenance in the curation ARC's native process graph.
547
570
548
571
An F2 compiler:
@@ -551,7 +574,7 @@ An F2 compiler:
551
574
- validates profile preconditions without mutating the IR;
552
575
- generates one or more target artifacts and the common diagnostic report;
553
576
- contributes native ARC process entries whose designated inputs are the selected ArcIR fragments and whose designated outputs are the generated target fragments;
554
-
- identifies transformation semantics with the shared Phase 6 ontology rather than a custom F2 record format;
577
+
- identifies transformation semantics with CTRO rather than a custom F2 record format;
555
578
- is deterministic for identical inputs unless the profile explicitly declares a nondeterministic dependency.
556
579
557
580
F2 can run repeatedly for different profiles or after later curation commits. It never generates a new IR state merely because target validation found a problem; any resulting correction is a separate curation process.
@@ -565,7 +588,11 @@ F2 can run repeatedly for different profiles or after later curation commits. It
565
588
566
589
## Phase 8 — Replace the visualization layer
567
590
568
-
Create a separate read-only React/TypeScript/Vite workbench under `tools/arcir-workbench/`, using pinned stable Sigma v3, Graphology, and React Sigma packages. It reads one or more immutable `.arcir.json` state artifacts plus optional diagnostic and SSSOM artifacts and the native ARC process graph through shared, schema-validating loaders.
591
+
> **Status: TRANSFERRED TO OVERARC (2026-08-27).** The maintained frontend now
592
+
> belongs to OverARC. The BioFSharp playground HTML writer remains only a
593
+
> low-effort inspection aid and is not a second workbench implementation.
594
+
595
+
Create the read-only React/TypeScript/Vite workbench in OverARC, using pinned stable Sigma v3, Graphology, and React Sigma packages. It reads one or more immutable `.arcir.json` state artifacts plus optional diagnostic and SSSOM artifacts and the native ARC process graph through shared, schema-validating loaders.
0 commit comments