Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Attach the discovered model and output projects to an imported PT9 project

Aperta
#215 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
42/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
typescript
Ambito
backend

Direzione di ricerca

Inizia dall’issue #150 e leggi src/parsers/pt9/interlinearXmlParser.ts e src/parsers/pt9/pt9-xml.md per comprendere gli input di importazione esistenti. Determina come le impostazioni del progetto PT9 arrivano all’importer, quindi segui #148 e #149 per la semantica del modello e dei campi di output. Il lavoro è completato quando le controparti Platform.Bible individuate popolano i link e la modalità appropriati, mentre i progetti contenenti solo glosse lasciano assenti tutti e tre i campi.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement

Scope item 7 of #150, split out so the import pipeline itself is not blocked by it.

A PT9 project records two relationships beyond its interlinear data: the model text it glosses against, and the output project (back-translation or adaptation) it writes to. Import should discover both and attach them to the resulting InterlinearProject. Everything else in #150 — the import command and UI, the cluster→token mapping, gloss-text resolution, punctuation / Excluded / Hash, keys and offsets, multi-file merge — is independent of this and produces a working, editable project without it.

Why this is separate

Both fields this issue writes are introduced by other issues:

  • modelProjectId comes from #148 (model-text suggestion source)
  • targetProjectId semantics and interlinearMode come from #149 (output project)

Neither exists yet, so #150 was carrying two blockers for one of its seven scope items — chaining an L issue behind another L issue (#148) for what is, once the fields exist, field population. Splitting it lets #150 start.

Note also that an imported project is useful without either link: #148 records that imported PT9 clusters land as approved TokenAnalysis glosses, which enter the existing surface-form suggestion pool from #131 immediately — "no alignment needed for the already-glossed vocabulary." The model link only covers source words the import never glossed.

Scope

  • Read the PT9 project's configuration to discover its model text and its BT/daughter project. These are not in the interlinear XML — InterlinearData carries only ScrTextName, GlossLanguage, BookId, and Verses (see src/parsers/pt9/interlinearXmlParser.ts and the schema in src/parsers/pt9/pt9-xml.md). They live in PT9 project settings, so this needs a second source of truth.
  • Map each discovered PT9 project to a Platform.Bible project id.
  • Populate modelProjectId (#148) on the imported project.
  • Populate targetProjectId + interlinearMode (#149) when the PT9 project has an output target, using #149's discriminator to distinguish back-translation from adaptation.
  • Leave all three absent for a gloss-only PT9 project (Options 1 & 2) — an absent link must not be represented as an empty string.

Open questions

  • Where does the configuration come from? Carried over from #150: PT9 stores the model text and BT/daughter project in project settings, not the interlinear XML. Reading it depends on how PT9 data reaches us at all (a mounted project directory, individual XML files, or a PAPI-exposed PT9 project) — which #150 also has open. That question should be answered once, there, and this issue follows it.
  • What if a discovered project has no Platform.Bible counterpart? Drop the link silently, warn, or block the import? Dropping silently loses a relationship the user may not know existed.

Out of scope

  • Building the model-suggestion engine (#148) or the export pipeline (#149) — this issue only attaches the links.
  • Any change to the import pipeline itself (#150).

Blocked by: #148, #149. Part of: #150.

Lingua principale
TypeScript
Stelle
2
Fork
0
Merge medio
2g 5h
PR unite (30g)
46

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di sillsdev/interlinearizer-extension

Tutte le issue di sillsdev/interlinearizer-extension

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.