Stato attuale: pre-lancio 0.10.0 (prodotto come servizio)
Questa è la pagina canonica sullo stato dell'implementazione pubblica per seed. La specifica della lingua corrente è seed/docs/lang-spec.md; i suoi capitoli grammaticali e semantici si trovano sotto seed/compiler/llvm. Un elemento della tabella di marcia non viene implementato semplicemente perché proposto; i cancelli completati richiedono la prova di chiusura nominativa.
Il prodotto 0.10.0 è in pre-lancio con lista d'attesa 100, parco giochi WASM e chatbot di supporto su seed-lang.com. grove → catalogo, pod → src|bin simile a una cassa con centrale ~/.seed cache con versione. 1.0 stable non ha ancora orizzonte e nessun utente reale; servizio, librerie, pubblicazione (privata), code/binary repository e documenti per pod sono il focus del lancio.
Gate 47 è completo sotto il LLVM tabella di marcia. Le sue 58 attività con ambito di dipendenza stabilivano compilazione a freddo prevedibile, costi espliciti, sicurezza della visualizzazione utilizzabile, avvio di attività recuperabili e riutilizzo incrementale verificato. Il restante Linux-solo le righe del profilo vengono esplicitamente segnalate come non disponibili su macOS; la diagnostica esistente, gli strumenti e le prove del riutilizzo del prefisso HIR rimangono in GATE47_BASELINE.md.
Compilatore — 0.10.0
seed/compiler/llvm è il compilatore e lanciatore del repository operativo. Gates 0-24 sono completi per gli ambiti registrati, così come lo sono Gates 26, 29 e 30. Gate 25 (corrisponde all'ergonomia: _ scarto dei caratteri jolly, materializzazione temporanea, ref prendere in prestito modelli), Gate 27 (qualificato per modulo module.symbol accesso) e Gate 31 (contratto di determinismo in virgola mobile) sono completi, chiusi il 13-08-2026. Gates 25 e 27 erano stati registrati completi il 29-07-2026 da un commit di sola documentazione; la verifica del 13-08-2026 ha mostrato che il compilatore non ha implementato le relative funzionalità, sono state riaperte e le implementazioni sono arrivate lo stesso giorno. Gate 28 (output di compilazione strutturata) è completo. Gate 29, scalabilità dell'analisi della proprietà per funzioni di grandi dimensioni, è completa: la proprietà su una funzione da 4.068 blocchi è scesa da 264 secondi a 1,2 secondi. Gate 30, codegen backend parallelo, è completo. Gates 32 (diagnostica utilizzabile), 33 (destinazione di scrittura byte sicura) e 34 (spawn fallibile) sono completi, chiusi il 13-08-2026. Gate 35 (specifica superficie del percorso critico: completa let digitare annotazioni, size_of/align_of query in fase di compilazione e reali link_name con interfacce schema-17) è completo, chiuso il 20/08/2026. Gate 36 (limiti multipli di tratto su parametri generici) e Gate 37 (generico impl blocchi, impl<t> trait for name<t> con soddisfazione legata ricorsiva) sono completi, chiusi il 20/08/2026. Gate 38 (risultati residui della revisione: inconfutabili let pattern, rafforzamento dell'overflow in modalità fencing e documentazione sull'invariante del trust backend e sull'allineamento grammaticale) è completo, chiuso il 20/08/2026. Gate 39 (ergonomia e facilitazione del compilatore: shape-aware M007 deduplicazione delle importazioni riesportate transitoriamente, W900 indice controllato unario e C023 desugaring a doppio indice, impostazione predefinita del campo bool omesso, coercizione di elementi letterali di array e check=build parità di verifica) è completo, chiuso il 23-08-2026. La tabella di marcia per il riavvio (Gates 0-39) è completamente chiuso per i suoi ambiti registrati; il futuro lavoro di abilitazione dell'hardware è pianificato come Gates 40-46. La pipeline verificata è:
source → lexer/parser → semantic graph → typed HIR/CFG
→ ownership/provenance/effects/loans → cleanup planning/verification
→ MIR → target layout/ABI → verified low MIR → LLVM
Importazioni di origine e .sdi l'emissione esegue la stessa catena di sicurezza obbligatoria. Il normale e ASan/UBSan le suite superano 1.571 controlli del compilatore (3 saltati: dipendenti dal corridore) più otto binari di unità alla linea di base corrente. Gate-prove specifiche sono sotto seed/compiler/llvm/tests/GATE*_BASELINE.md.
Compilatore self-hosted
LLVM Il compilatore self-hosting supportato è attivo Linux x86-64 traccia disciplinata da roadmap-self-hosted.md. L'operativo C23/LLVM il compilatore rimane l'impostazione predefinita fino a SH21-05 e una semantica preservata e ABI oracolo in seguito.
Il 2 ottobre LLVM-la prima tabella di marcia preserva le prove storiche SH0-SH3 pur richiedendo l'attuale riconvalida dell'intera scheda. Corrente reader/writer utilizzare lo schema 22 e il test mirato di interoperabilità viene superato. Flusso di origine finita, try_spawn esistono componenti frontend e prestito trattenuto; La sicurezza della produzione a livello di invocazione, la conservazione delle prove importate e il MIR controllato obbligatorio rimangono aperti. SH4 è aperto e SH5 sperimentale. Le attuali differenze di audit hanno un nome dei proprietari.
LLVM emissione, S2/S3, completo richiesto Linux safety/ABI/workflows, sono necessari budget misurati e ripristino offline prima del SH21-05. LLVM/link/archive gli strumenti, il runtime C ricostruibile dal codice sorgente e gli adattatori esaminati possono rimanere dipendenze del prodotto dichiarate. Nativo backend/runtime/linker/tool la sostituzione e SH20 sono condizionati dalla decisione misurata di SH21-06 e dall'attivazione esplicita.
Tutte le 101 carte della roadmap ora hanno dipendenze manifest corrispondenti; le etichette storiche complete rimangono prove datate, non la chiusura attuale. C0 fresco Linux build, pass per suite normale e suite disinfettante. M0019–M0021 sono stati riparati: il controllo a freddo di 100.000 rimane al di sotto del limite invariato di 256 MiB, sono presenti controlli sull'intervallo di proprietà mantenuta e il MIR di generazione concorda in sette casi. SH4 rimane aperto; consultare il corridore di parità e la linea di base per il risultato corrente piuttosto che fare affidamento su un conteggio dei casi copiato. SH0-01–04 l'attuale accettazione è stata rinnovata; SH0-04 è stato catturato nuovamente dall'host di registrazione il 15-10-2026 alle 767e2f1b. Il rinnovato oracolo SH0 registra il rifiuto S001 di C0 in caso di avvio non riuscito move/linear acquisire il riutilizzo e la differenza tra quattro stati di avvio simulato e produzione reserve_failed (M0010/M0011), trasporto scalare semplice dei risultati dell'attività (M0022) e non valido LLVM per associazioni locali con valori unitari (M0023); questi requisiti rimangono aperti. SH21-01 blocca una matrice di prodotto di 42 righe, tre consumatori fissati ed espliciti product/native politiche di dipendenza. La sua chiusura delle dipendenze avviene con sei correnti verificate C0/S1 gruppi di costo, tutti i profili sicuri, autenticazione isolata e osservazioni di ricostruzione del codice sorgente C0 offline. L'emissione binaria S1 rimane non disponibile; queste misurazioni di ingresso non stabiliscono S2/S3 o recupero del prodotto. La prova dell'ingresso è stata catturata nuovamente e congelata nuovamente il 12-10-2026 alle 0960f7d3 sull'host di registrazione dopo che la deriva dello strumento di sistema ha invalidato i pin del 3 ottobre; la tabella di marcia possiede lo stato attuale della carta finale. Successivamente corridori SH21 e non Linux I porti self-hosted rimangono pianificati.
Ingresso SH21-01 e SH1-01 substrate/bootstrap abbonamento di chiusura tessera intera; l'istantanea della voce è stata nuovamente congelata il 12-10-2026 alle 0960f7d3, e il congelamento del 3 ottobre alle 6bf41ca9 rimane nella storia di Git. L'evidenza dell'ingresso viene conservata come input misurati: la base Git registrata più una sovrapposizione hash-bound e il produttore C0 identificato riproducono le identità originali di fonte, ricetta, consumatore e artefatto. Nove controlli di rifiuto delle istantanee passano oltre a matrix/stage/cost controlli. Le modifiche successive all'origine delle funzionalità non rietichettano i costi iniziali. Gli attuali test SH0 e della scheda di implementazione vengono ancora eseguiti rispetto alle fonti attuali; questa istantanea convalida solo le osservazioni di ingresso. Pass di chiusura attività completi SH1-02: contatori dei costi opt-in, deduplicazione di 100.001 ID, venti risultati dinamici con decodifica dello span controllato, diagnostica identica JSON, tre famiglie in fallimento nella crescita, budget invariati e nuovo bootstrap di 58 oggetti. La perdita di hash delle dipendenze della cache rifiutata C0 viene riparata e testata con perdite attive. Il rinnovo delle prove dell'attuale host segue quello sincronizzato source/docs impronta digitale. Passaggi di chiusura SH2-01: il try_spawn parola chiave, codice token stabile e dispositivi differenziali C0 esistevano già e la carta ora ha un corridore registrato. L'accettazione di tipo startup SH2 confronta gli input vuoti, del corpo del risultato, nidificati e con parentesi graffe mancanti rispetto a C0 e controlla i marcatori tramite la copia e la formattazione AST, con un controllo di spawn ordinario. Il corpus tracciato passa con un nuovo produttore; gli eseguibili obsoleti e le interfacce memorizzate nella cache non devono essere interpretati come divergenze di origine. Il runner SH2-04 ora ricostruisce il produttore ed esegue la chiusura completa del frontend, inclusi disinfettanti, controlli dell'architettura e BF0. Lo stato attuale della scheda intera appartiene alla roadmap e al manifesto delle attività. SH3-01 ora definisce l'ambito dell'identità della definizione in base al modulo proprietario in modo che i nominali con la stessa ortografia in moduli distinti rimangano distinti e assegna a ciascuna dichiarazione il relativo DefinitionId una volta per invocazione, con le chiavi nominale, distruttore e firma che leggono quella tabella anziché l'aritmetica dell'indice. Proprietà condivisa di più moduli, repeated-path/diamond origini e conservati HIR/checked i metadati delle definizioni ora hanno prove componenti. Il percorso di controllo preserva gli alias con ambito modulo, gli ID di destinazione canonici, gli intervalli e la visibilità delle esportazioni e raccoglie le firme in un registro con ID assegnato sugli AST conservati. La risoluzione con sola firma non attribuisce fatti corporali; le firme non supportate rimangono in sospeso e restituiscono il file AST/type proprietari. La provenienza ricorsiva utilizza gli ID assegnati e le assegnazioni di produzione incomplete vengono rifiutate. Importato call/body spedizione, piena sicurezza di invocazione e SH3/SH4 la chiusura resta aperta. La scansione di importazione transitiva di SH3-02 è collegata al percorso di controllo: un ciclo riporta un M001 individuato, un'importazione sconosciuta riporta M002 e un collegamento del modulo in conflitto riporta M008, ciascuno nella riga e nella colonna dell'importazione con la dicitura C0 e use "seed.core" rimane un no-op come in C0. L'autocontrollo veniva interrotto anche su qualsiasi byte non ASCII all'interno di un intervallo di origine scansionato: tre scansioni di sottostringhe per byte tagliavano il testo in offset interni, che str.slice rifiuta come confini del punto di codice. Risolto confrontando i byte anziché l'affettamento; gli aborti sulle 2.643 fonti monitorate vanno da 55 a 0 senza regressione del verdetto. Il CLI leaf ora controlla direttamente un dispositivo non ASCII, perché il corpus differenziale guida ast-print e non ha mai raggiunto quel codice. Le scansioni stesse rimangono come nomi euristici testuali residui SH4-11 da eliminare, poiché rimuoverle prima che la pipeline HIR tipizzata copra le loro forme annullerebbe la diagnostica reale. Importato condiviso call/body la spedizione è la prossima. S2/S3, prodotto completamente autonomo safety/workflows/budgets, il ripristino offline e il cutover SH21-05 rimangono aperti.
Il Linux-l'allocatore nativo utilizza precise classi di lastre da 16 byte a 8 KiB, una cache di lastre vuote limitata a livello di processo e rimuove la mappatura di lastre vuote in eccesso. box<t> è un proprietario a puntatore singolo, mentre ?box<t> utilizza la sua nicchia nulla controllata e quindi occupa anche un puntatore. Schema-11 .sdi preserva la rappresentazione nominale di nicchia nulla attraverso la compilazione separata. Gate 18 interfacce schema-12 aggiungono ricevitori mutabili esclusivi, modelli generici, provenienza di ritorno preso in prestito e contratti fallibili sui limiti dell'applicazione. Gate 19 interfacce schema-13 aggiungono esatto target/profile/runtime identità e organismi pubblici in linea verificati. Gate 20 interfacce schema-14 preservano inoltre costanti scalari, testo, tuple, struct e array annidati immutabili pubblici per i consumatori elisi nel codice sorgente; il compilatore emette valori globali di sola lettura digitati e proiezioni controllate. Gate 21 ha una primitiva di capacità non inizializzata controllata utilizzata internamente dai buffer di byte e I/O; io.input_stream fornisce letture incrementali limitate, copie di crescita geometrica solo prefissi inizializzati e capacità di riserva diretta I/O è coperto dalla sua linea di base.
Gli alberi del compilatore sostituiti sono stati rimossi dopo il cutover. Le loro classificazioni comportamentali rilevanti sopravvivono in compiler/llvm/COMPATIBILITY.md e nelle regressioni migranti; non definiscono la semantica corrente del compilatore.
Gate stato
<!-- generated-gate-ledger:begin -->
| Gate | Stato di base | Prove |
|---|---|---|
| 0 | prove presenti | GATE0_TRACEABILITY.md |
| 1 | prove presenti | GATE1_BASELINE.md |
| 2 | prove presenti | GATE2_BASELINE.md |
| 3 | prove presenti | GATE3_BASELINE.md |
| 4 | completato il 10-07-2026 | GATE4_BASELINE.md |
| 5 | completato il 10-07-2026 | GATE5_BASELINE.md |
| 6 | prove presenti | GATE6_BASELINE.md |
| 7 | prove presenti | GATE7_BASELINE.md |
| 8 | completato il 10-07-2026 | GATE8_BASELINE.md |
| 9 | completato il 10-07-2026 | GATE9_BASELINE.md |
| 10 | prove presenti | GATE10_BASELINE.md |
| 11 | prove presenti | GATE11_BASELINE.md |
| 12 | prove presenti | GATE12_BASELINE.md |
| 13 | prove presenti | GATE13_BASELINE.md |
| 14 | completo | GATE14_BASELINE.md |
| 15 | prove presenti | GATE15_BASELINE.md |
| 16 | prove presenti | GATE16_BASELINE.md |
| 17 | prove presenti | GATE17_BASELINE.md |
| 18 | prove presenti | GATE18_BASELINE.md |
| 19 | prove presenti | GATE19_BASELINE.md |
| 20 | prove di implementazione complete per l'attuale ambito Gate 20 in poi | GATE20_BASELINE.md |
| 21 | prove di implementazione complete per Linux x86-64 ospitato e | GATE21_BASELINE.md |
| 22 | prove presenti | GATE22_BASELINE.md |
| 23 | prove presenti | GATE23_BASELINE.md |
| 24 | completo (23-07-2026) | GATE24_BASELINE.md |
| 25 | prove presenti | GATE25_BASELINE.md |
| 26 | prove presenti | GATE26_BASELINE.md |
| 27 | prove presenti | GATE27_BASELINE.md |
| 28 | prove presenti | GATE28_BASELINE.md |
| 29 | prove presenti | GATE29_BASELINE.md |
| 30 | prove presenti | GATE30_BASELINE.md |
| 31 | prove presenti | GATE31_BASELINE.md |
| 32 | prove presenti | GATE32_BASELINE.md |
| 33 | prove presenti | GATE33_BASELINE.md |
| 34 | prove presenti | GATE34_BASELINE.md |
| 35 | prove presenti | GATE35_BASELINE.md |
| 36 | prove presenti | GATE36_BASELINE.md |
| 37 | prove presenti | GATE37_BASELINE.md |
| 38 | prove presenti | GATE38_BASELINE.md |
| 39 | chiuso | GATE39_BASELINE.md |
| 41 | prove presenti | GATE41_BASELINE.md |
| 42 | prove presenti | GATE42_BASELINE.md |
| 43 | cancello pianificato, solo simulazione QEMU | GATE43_BASELINE.md |
| 44 | pianificato, QEMU solo simulato | GATE44_BASELINE.md |
| 47 | completo (2026-09-11) | GATE47_BASELINE.md |
<!-- generated-gate-ledger:end -->
| Gates | Stato | Risultato |
|---|---|---|
| 0-9 | completo | contratto linguistico, pipeline del compilatore, sicurezza, native/freestanding esecuzione, rafforzamento, cutover operativo |
| 10 | completo | modello copy/move/borrow/clone/drop coerente |
| 11 | completo | propagazione generale place/ownership/provenance tra aggregati, generici, attività, valori di funzione e .sdi |
| 12 | completo | componenti modulari compiler/runtime e scalabilità forzata con controllo completo di 100.000 |
| 13 | completo | profili di rilascio sicuro e corpus di confronto C/Rust riproducibile |
| 14 | completo | Windows chiuso sotto richiesto Vino; macOS chiuso dall'esecuzione Intel nativa richiesta, con arm64 mantenuto come host verificato separatamente |
| 15 | completo | riproducibile package/lock/cache, perseguibile JSON diagnostica, LSP, doc/lint, build incrementali esatte, controlli di pubblicazione e risultati delle attività digitate |
| 16 | completo | sicuro numeric/range/text/buffer/collection ergonomia, staging automatico della libreria principale, riduzione nativa prevedibile e prestazioni applicative rappresentative |
| 17 | completo | artefatti dinamici e transazionali riutilizzabili coerenti con il profilo user/system installazione di binari, librerie e .sdi interfacce |
| 18 | completo | ergonomia delle applicazioni basate sul linguaggio, librerie process/parse/I/O/math/buffer/slice/collection di base e migrazioni sicure dei benchmark |
| 19 | completo | artefatti coerenti con il profilo, corpi in linea tra moduli, partizioni modificabili disgiunte controllate, archivi di campi diretti e metadati di alias con ambito di prova |
| 20 | completo | costanti aggregate immutabili ricorsive, dati statici indirizzabili e interfacce schema-14 elise dal codice sorgente |
| 21 | completo | buffer di proprietà in grado di riconoscere la capacità, trasferimento del prefisso inizializzato, crescita geometrica e streaming I/O |
| 22 | completo | callback qualificati per l'effetto più attività strutturata neutrale in termini di runtime ABI e errore di allocazione esplicita dell'attività |
| 23 | completo | cortocircuito da sinistra a destra &&/` |
| 24 | completo | chiusure senza fuga, move/copy acquisizioni, callback mantenuti in scatola, interfacce schema-16 e associazioni mobili |
| 25 | completo | abbina la materializzazione temporanea, lo scarto del carattere jolly _ e i modelli di prestito ref — chiuso il 13/08/2026 |
| 26 | completo | Soppressione diagnostica a cascata sugli operandi di tipo errore (H004/H010/H008/H031/H050/H049) — chiusa il 13/08/2026 |
| 27 | completo | risoluzione dei simboli qualificata per il modulo (module.symbol) — chiusa il 13/08/2026 |
| 28 | completo | output di build strutturato con tempistica, stato della cache e report di parallelizzazione: chiuso il 13-08-2026 |
| 29 | completo | scalabilità dell'analisi della proprietà per singole funzioni di grandi dimensioni |
| 30 | completo | codegen backend parallelo tramite suddivisione del modulo (SEED_CODE_SPLIT) |
| 31 | completo | contratto con determinismo in virgola mobile: nessuna contrazione FMA nei profili sicuri — chiuso il 13-08-2026 |
| 32 | completo | diagnostica attuabile per prevedibile syntax/type errori (elif/ret/suggerimenti in minuscolo, contesto posseduto e format_args suggerimenti) |
| 33 | completo | destinazione di scrittura byte espandibile sicura (byte_buffer.resize_zeroed/push_zeroed) |
| 34 | completo | corpi di spawn fallibili con join errati digitati (? oltre il confine di spawn) |
| 35 | completo | specifica superficie del percorso critico: completa let digitare annotazioni, size_of/align_of query in fase di compilazione, reali link_name (interfacce schema-17) — chiuso il 20/08/2026 |
| 36 | completo | limiti di tratti multipli su parametri generici (t: a + b), applicati alla sostituzione e alla risoluzione del metodo — chiuso il 20/08/2026 |
Codifica sorgente e testo
.sdi file sorgente sono UTF-8 per contratto.stringè posseduto valido UTF-8.strè una vista UTF-8 di sola lettura presa in prestito con puntatore più lunghezza byte.- I valori letterali stringa hanno un archivio statico e digitano
str. - I commenti e il contenuto delle stringhe possono contenere Unicode.
lenriporta la lunghezza in byte. Il pacchetto ordinariotextconvalida e esegue l'iterazione degli scalari Unicode senza allocazione; la segmentazione del grafema, la normalizzazione e il comportamento locale rimangono lavoro della biblioteca.- Gli identificatori di origine rimangono intenzionalmente ASCII: i nomi dei valori utilizzano maiuscole e minuscole, i tipi nominali e le varianti utilizzano UpperCamelCase e le costanti sono maiuscole ASCII.
Il caricatore convalida ogni sorgente come canonica UTF-8 prima della lexing e rifiuta i NUL incorporati, le codifiche troppo lunghe, i surrogati, il troncamento e i valori oltre lo scalare massimo di Unicode. Vengono convalidati anche i valori letterali stringa decodificati.
È implementata l'interpolazione f-string di fase 1 str, preso in prestito string, boole numeri interi incorporati. La costruzione produce effimero format_args senza allocazione heap; usi di produzione diretta file.write_*_format, mentre .to_string()? materializza esplicitamente una stringa di proprietà. La fase 2 implementa la conversione della base intera; delimitato width/fill/alignment; esatto fisso e deterministico scientific/general f32/f64 conversione senza libc; e la formattazione personalizzata statica diretta tramite prestiti senza allocazione display.display() -> str e debug.debug() -> str implementazioni.
Superficie linguistica implementata
- immutable/mutable/linear associazioni e costanti del serpente superiore, il cui tipo
l'annotazione è facoltativa: il tipo viene dedotto dall'inizializzatore e un inizializzatore che non può essere dedotto viene rifiutato con
R037nella dichiarazione; - funzioni, metodi del ricevitore implicito, distruttori, generici, tratti, impl;
- Strutture UpperCamelCase,
enumADT, unioni grezze, array, fette, tuple,Option/Result; - blocchi orientati alle espressioni e
if/else if/else,if let/while let(entrambi dezuccherati a due braccimatch), piùwhile, senza assegnazionefor, esaustivomatch,break,continuee prestoreturn; - ripetere i valori letterali dell'array (
[value; count]) che espandono un valore letterale in a array fisso sotto il tipo di elemento previsto; - controllata l'indicizzazione per tutte le larghezze intere integrate; le letture dell'indice variabile lo sono
supportato sui parametri della funzione
[]u8e sulla sezione originale dabytes.view(). Applica l'ambito delle viste modificabili all'interno di un blocco e utilizza i parametri della funzione[]u8di sola lettura o la sezione originale per l'accesso all'indice variabile; - memoria grezza
unsafeesplicita, atomici, accesso volatile, spazi di indirizzi, FFI, chiamate di sistema, accesso raw union e intrinseci dell'architettura; - strutturato
spawn, regioni, profili di runtime e compilazione separata. - chiusure senza fuga senza allocazione, chiusure boxed esplicite fallibili, effetti di callback dedotti e contratti richiamabili con elisione della sorgente schema-16;
- stringhe f digitate phase-1/2 con valutazione singola, escape con parentesi graffe letterali, specifiche del formato, statiche display/debug tratti distintivi, produzione segmentata senza allocazione e materializzazione posseduta fallibile.
La grammatica pulita attualmente non implementa l'eredità typeortografia ADT basata, identificatori nominali minuscoli del serpente, ret/elif e # commenti, integrati chan<t>/send/recv, spawn distaccato, chiusure ricorsive, generatori, macro, eccezioni, async/await o sintassi della durata.
Proprietà e sicurezza
Il modello comune è: copiare scalari, spostare risorse, prendere in prestito visualizzazioni a copia zero e clonare esplicitamente. La pulizia viene eseguita esattamente una volta sulle uscite strutturate. Il panico, la trappola e l'interruzione non si svolgono né si svolgono nel lessico cleanup/destructors.
Ownership/place/provenance i fatti si propagano attraverso alias, blocchi, rami, punti fissi del loop, fields/nested campi, indici di array noti, tuple, ADT, option/result, aggregati generici, channels/tasks, funzione values/indirect chiamate, parameters/returns e eliso alla fonte .sdi. Gli spostamenti dell'indice dinamico degli elementi di risorsa rimangono rifiutati.
linear t ha una semantica esattamente una volta nelle stesse forme implementate. Le viste @borrow receiver/input-derived mantengono la provenienza senza sintassi di durata. Il codice non sicuro presuppone obblighi grezzi espliciti ma non disabilita la proprietà sicura dei valori circostanti.
Le chiusure semplici sono stack-backed e senza escape. Cattura la copia o lo sposta nel primo ordine di uso lessicale, rimane immutabile e viene pulito esattamente una volta. box |...| alloca esplicitamente un richiamabile di escape e restituisce Result<box fn(...) -> T, alloc_error>; i chiamabili boxed sono di solo spostamento, non clonabili, non inviabili e confinati nella regione quando viene allocata la regione. I callback seed utilizzano descrittori code/environment a puntatore singolo, mentre i puntatori alle funzioni della piattaforma rimangono sottili e accettano solo funzioni con nome.
Testo, byte e regioni
- mosse
stringdi proprietà;.clone()crea un proprietario indipendente esplicito; bytesè una proprietà binaria mutabile unica;shared_bytesè un handle condiviso di sola lettura con esplicitamente retain/clone;- le visualizzazioni owner/array compatibili sono prive di allocazione e la provenienza è controllata;
- le conversioni possedute restituiscono
Result<..., alloc_error>; region(capacity) { body }fornisce l'allocazione dei bump controllati allineati nidificati;- la cassaforte values/views/pointers legata ad una regione non può sfuggirle;
- le attività legate alla regione si uniscono prima della pulizia della regione.
str.sliceimpone UTF-8 confini, mentrestr.equale delimitatore ASCII la ricerca rimane esente da assegnazione;- l'ordinario
text,box,vec, esorti pacchetti forniscono token sicuri intervalli, proprietà ricorsiva, mutazione controllata e ordinamento statico.
Concorrenza
spawn è strutturato: i gruppi di attività si esauriscono su ogni bordo lasciando il loro proprietario lessicale prima della pulizia. Cattura la copia o lo spostamento in base alle capacità; la condivisione è esplicita e i valori tra attività richiedono send/sync a seconda dei casi.
compiler/llvm/libs/task è una libreria generica ordinaria che fornisce canali di suddivisione della proprietà, unioni di attività one-shot digitate, eventi, cancellazioni, gruppi di attesa, semafori, barriere e blocchi. Il corpo generato direttamente ABI ritorna ancora void, quindi suffisso ? non può attraversare direttamente il confine dell'attività. Gate 15 aggiunge la superficie della libreria tipizzata task_result_new, task_result_complete_ok/error, e task_result_wait sugli stessi punti finali lineari e lessicalmente uniti. Le operazioni del canale sul posto dell'endpoint preso in prestito mantengono integri i wrapper one-shot, in modo che i consumatori di attività generiche elise all'origine possano trasportare payload di solo spostamento con distruttori utente senza bypassare la pulizia esatta. Possono essere utilizzati valori di funzione e chiusure dedotte @no_runtime_effects fn(...) richiedere un riepilogo completo e vuoto degli effetti di runtime; le chiamate indirette sconosciute e non qualificate rimangono rifiutate nei profili limitati. Le richiamate boxed non possono incrociarsi spawn perché non forniscono send.
Biblioteche e collegamenti
.sdi le interfacce preservano i tipi pubblici, generici templates/common istanze, effetti, proprietà, provenienza, distruttore, clone, bersaglio, build/runtime profilo, dipendenza e ABI identità. Lo schema 13 preserva i corpi in linea e gli hash dei corpi verificati; lo schema 14 aggiunge payload costanti immutabili ricorsivi pubblici verificati; lo schema 15 aggiunge contratti ad effetto richiamabili; lo schema 16 aggiunge firme richiamabili in riquadro, corpi di chiusura in linea e identità di rappresentazione richiamabile; lo schema 19 aggiunge identità nominali qualificate per l'origine e identità del proprietario generico per le importazioni transitive e di diamanti indipendenti dall'ordine. Un wrapper di libreria non pubblica una specializzazione del metodo orfano il cui proprietario del metodo generico proviene da un pacchetto importato; i consumatori elisi alla fonte rimaterializzano quell'istanza dal modello della dipendenza. Ospitato seed le librerie si collegano dinamicamente per impostazione predefinita; --static seleziona statico seed dipendenze. La pubblicazione degli artefatti è atomica e corrotta, con schema obsoleto, profilo, destinazione o ABI-Le interfacce non corrispondenti non vengono chiuse.
Il launcher incrementale build/run il percorso mette in scena pacchetti sicuri per i tipizzati I/O, visualizzazioni di processi, analisi di numeri interi, matematica portabile, buffer di byte, sezioni, box, reti, serializzazione, attività, raccolte generiche e wrapper di sistema. Gate 18 aggiunge lo schema-12 @mut vettori e sicuri benchmark/application consumatori; Gate 19 aggiunge lo schema-13 in linea math/system foglie e partizioni di fette disgiunte. Questi rimangono normali pacchetti importati, non linguaggi integrati nascosti.
Il Grove la base client di rete ora include i file di proprietà OpenSSL 3 TLS client/server contesti, streaming limitato HTTP/1.1 GET e HTTPS con certificato obbligatorio e hostname/IP verifica. I corpi con lunghezza del contenuto, suddivisi in blocchi e delimitati ravvicinati condividono un proprietario incrementale di pulizia esatta e possono essere trasferiti nei callback del codec senza memorizzare nel buffer il payload completo. macOS ARM64 esegue l'ermetico TLS/HTTP righe e i relativi grafici del pacchetto per cui è possibile eseguire la creazione incrociata Linux AArch64. Il URL il parser ora espone componenti assoluti presi in prestito e limitati; fetch li compone tramite il risolutore IPv4 del sistema e segue reindirizzamenti assoluti o relativi limitati con rimozione dei segmenti punto e rifiuto del downgrade HTTPS. Un valore di autorizzazione limitato fornito dall'applicazione viene accettato solo su HTTPS e conservato solo attraverso reindirizzamenti della stessa origine; socket/TLS le scadenze rimangono digitate tramite stretta di mano e corpo I/O. IPv6/dual-stack la selezione, l'annullamento limitato del risolutore, i cookie, la decompressione, la policy della cache, la negoziazione dello schema di autenticazione e il ciclo di vita delle credenziali, il pooling, l'esecuzione della WAN pubblica e le prove fisiche mobili rimangono separati.
Risoluzione del registro, lockfiles/download cache, pacchetto add/update, potatura della cache, generazione di documentazione, LSP e incrementale object/interface cache sono implementati da Gate 15 utensili. Gate 17 fasi del nucleo nudo e delle dipendenze manifeste ordinarie profile/target-qualified archivia dinamicamente per impostazione predefinita, riutilizza le generazioni installate senza ricompilazione e implementa la transazione user/system seed install più consapevole dei riferimenti seed uninstall. Esplicito --static e --static=all rimangono scelte di collegamento indipendenti.
Costruisci profili e prestazioni
--release utilizza seed-safe-o2-v1; --release-small utilizza seed-safe-oz-v1. Limiti, discriminanti, provenienza, proprietà e protezioni per la pulizia rimangono a meno che LLVM non li dimostri ridondanti. ThinLTO, PGO e collegamento statico sono opzioni esplicite indipendenti. Non esiste alcun profilo operativo non controllato.
Gate 13 confronta carichi di lavoro equivalenti numerici, di analisi, di raccolta, allocation/string, di attività strutturate, di rete, di chiamate dinamiche, di avvio, RSS e di dimensioni di artefatti con Clang C e Rust. Sull'host di chiusura, seed rimane entro l'obiettivo di runtime ordinario dello 0-10% per il corpus imposto. Questa è una prova del carico di lavoro controllato, non un'affermazione universale secondo cui ogni programma seed batte C/Rust.
Gate La mediana del controllo completo da 100.000 host di chiusura di 12 è di 0,41 s a 177.504 KiB contro budget di 3,00 s e 196.608 KiB. Vedi GATE12_BASELINE.md e GATE13_BASELINE.md per hardware/toolchain metadati e interpretazione.
Stato dell'obiettivo
Il supporto degli oggetti non è uguale al supporto ospitato degli eseguibili. La matrice canonica è compiler/llvm/tests/GATE14_TARGET_MATRIX.tsv.
| Obiettivo | Livello attuale dichiarato |
|---|---|
| Linux x86-64 | ospitato chiuso compile/link/run, static/dynamic librerie, impostazione predefinita nativa priva di libc |
| Linux AArch64 | ospitato compile/link/runtime con policy runner; Comportamento static/dynamic coperto al livello dichiarato |
| Linux RISC-V64 | riga ospitata di soli oggetti; il bagagliaio indipendente è separato |
| Windows x86-64 | deterministico PE/DLL, servizi runtime inclusi owned/shared byte e file open/read/write/seek/flush/lock/unlink/write-through sostituzione, FFI con parametri aggregati Microsoft x64, attività strutturate, Winsock plus WinHTTP/Crypt32 HTTPS, pacchetto ABI, indurimento del caricatore e riposizionabile SDL3 i pacchetti di giochi con salvataggi atomici persistenti passano sotto Wine richiesto |
| macOS x86-64 | Gate 14 chiuso dall'eseguibile Intel nativo richiesto, dylib/static, runtime, pthread, rete, pacchetto ABI e prove del caricatore |
| macOS braccio64 | Nativo basato su SDK compile/link/run, runtime/ABI, scheduler, networking e prove di pacchetto su Apple Silicon; mantenuto separatamente dalla riga di chiusura Intel richiesta |
| Android braccio64 | LLVM/object/static/shared/executable obiettivi più runtime JNI, packaging Gradle, API 21/29/37 Esecuzione ARM64 AVD, API-37 scenari di rilascio, prove del ciclo di vita strumentate da Garden Allocator, audio-focus/device-route reporting host e un ambito API-35 slice del dispositivo fisico; MP4 lifecycle/services trasmettere tutti e tre gli AVD del fumo |
| Android x86-64 | LLVM/object/static/shared/executable compile/link compatibilità; no emulator/device richiesta di esecuzione |
| iOS braccio64 | LLVM/object/archive/device-link e la prova del consumatore C/Swift/XCFramework generata, oltre all'oggetto Seed Garden model/assets/Apple-audio completo e alla creazione incrociata del pacchetto di applicazioni non firmato; L'esecuzione fisica del Garden, la firma e le prove di rilascio rimangono nell'ambito del lavoro del dispositivo |
| iOS braccio simulatore64 | iOS Simulatore ARM64 26,5 lifecycle/services, bytes/async, UI adattivo phone/tablet, input, rotazione, semantica, accessibilità XCUITest, esecuzione core MP4 condivisa e Seed Garden context/persistence/continuous-frame/Apple-AudioQueue copertura del prodotto con portatile AVAudioSession interruption/route segnalazione |
| wasm32-WASI | riga a livello di oggetto con servizi ospitati assenti mantenuta esplicita nella matrice Gate 14 |
| libera installazione x86-64/AArch64/RISC-V64 | prova di avvio senza libc sotto QEMU a Gate 7 livelli dichiarati |
| RISC-V32 indipendente | ELF32 object/link più Savana E6.0 QEMU sifive_e XIP/16-KiB-SRAM avvio; RISC-V32 e Cortex-M ospitati rimangono non supportati |
Gate 14 richiede Intel Runner, SDK, ABI, FFI, libreria dinamica, compilazione separata, corruzione, caricatore e regressione vengono superati. macOS arm64 rimane un host nativo etichettato in modo indipendente piuttosto che un sostituto della riga di chiusura Intel.
Il contratto bridge del servizio nativo Adaptive UI UI9 è la versione 2. Mantiene 4096 byte limitati UTF-8 istantanee degli appunti e aggiunge il blocco digitato information/warning/error finestre di dialogo con titoli da 256 byte, messaggi da 2048 byte e indipendenti dalla piattaforma acknowledged/cancelled/yes/no risultati. Senza testa, nativo macOS Kit di applicazioni ARM64, Linux x86-64 X11 e Windows x86-64/Wine debug/release passano i cancelli. Processi indipendenti dimostrano lo scambio di appunti; nativo NSAlert, una finestra modale X11 di proprietà e MessageBoxW eseguire tutte e quattro le classi di risposta con chiusura esatta. Ricchi formati di appunti, finestre di dialogo dei file, Wayland/mobile adattatori e fisici Windows rimangono prove separate.
Il contratto host del plugin Adaptive UI UI9 è la versione 4 mentre il plugin ABI rimane la versione 1. Nativa macOS ARM64, Linux x86-64, e Windows x86-64/Wine debug/release le porte conservano fino a sedici proprietari distinti controllati dalla generazione, accettano fino a otto funzionalità con versione semantica con fallback legacy, le classificano come numeriche o limitate a 4096 byte UTF-8 trasforma attraverso un gruppo di firma opzionale completo, scarto parziale catalog/signature gruppi, identificatori duplicati, overflow di capacità e handle non aggiornati e dimostrare l'esattezza indipendente unload/reopen. Schema-2/3/4/5/6/7 i piani di dipendenza mantengono inoltre quattro plug-in creati da Seed contemporaneamente in ordine di prima dipendenza, applicando criteri rigorosi exact/caret/tilde requisiti di versione semantica e capacità, ignora e conta i pacchetti opzionali assenti mentre fallisce la chiusura su quelli presenti non validi o incompatibili, invoca una capacità numerica negoziata e una capacità numerica negoziata UTF-8 funzionalità, esporre trasformazioni indicizzate limitate, esporre l'unione di autorizzazioni univoche, negare piani autorizzati per impostazione predefinita, verificare preventivamente le concessioni esplicite prima di aprire qualsiasi proprietario e chiudere al contrario. Lo schema 6 congela la firma dichiarata e la confronta con il binario caricato prima della pubblicazione; lo schema 7 congela le dichiarazioni di autorizzazioni limitate e la politica dei pacchetti in grado di riconoscere le concessioni. Queste sovvenzioni non eseguono il sandbox del codice nativo. Il contratto host del pacchetto 3 trasmette inoltre in streaming un digest SHA-256 separato dal dominio sul manifest e sul binario con limiti esatti, conserva uno snapshot POSIX privato di sola lettura o uno snapshot POSIX che nega la sostituzione Windows gestire e carica quella risorsa esatta. Seed espone la verifica Ed25519 opt-in e le operazioni di apertura verificata; indipendente debug/release i dispositivi concordano sul digest, rifiutano il manifest o la manomissione binaria e dimostrano un'esecuzione stabile dopo un tentativo antagonista di sostituzione della sorgente su macOS, Linux, e Windows/Wine. ui-plugin-trust aggiunge un'applicazione limitata di proprietà publisher/key politica con una chiave attiva e una di sovrapposizione, esplicita rotation/revocation, API affidabili e aperte per pacchetti e repository e verifica preliminare dell'intero piano delle dipendenze. Gli stessi tre desktop debug/release le righe rifiutano record mancanti, firme non corrispondenti e revocate current/rotated chiavi prima dell'attivazione. Fisico Windows, ha bloccato la radice dell'autorità provisioning/rotation, transparency/timestamp la politica, il sandboxing e la composizione della visualizzazione della piattaforma rimangono prove separate.
ui-plugin-trust-store il contratto host 1 mantiene la policy completa di attendibilità dell'applicazione limitata più un massimo di otto sequenze di catalogo minime accettate in un documento canonico da 64 KiB. Pubblica tramite un file di parti sincronizzato privato, blocco del sistema operativo e sostituzione atomica all'interno di una radice esistente esplicita. Nativo macOS ARM64, Linux x86-64, e Windows x86-64/Wine debug/release copertura dei cancelli active/overlap/revoked viaggi di andata e ritorno chiave, avanzamento della sequenza monotona, rifiuto del rollback e della corruzione, ripristino delle parti obsolete e pulizia esatta. ui-plugin-trust-bundle verifica una busta di policy schema-1 Ed25519 con root canonico con metadati di autorità limitati, freschezza, validità e anti-rollback della sequenza. ui-plugin-trust-distribution recupera la busta solo su HTTPS verificato. Il contratto composto carica la sequenza minima durevole, sostituisce la policy completa, fa avanzare tale sequenza e salva in modo atomico solo dopo aver verificato con successo. Gli stessi tre desktop debug/release le righe rifiutano firme non valide, autorità errata, scadenza, riproduzione, HTTP, risposte non-200 e corpi di grandi dimensioni senza sequenza mutante 8. La consegna autenticata utilizza la policy delle credenziali condivisa solo HTTPS e della stessa origine. Gli Envelope GET utilizzano tre tentativi totali con limite 100/200 backoff esponenziale ms per errori di trasporto e transitori condivisi HTTP stato impostato. L'esatto-URL Il fallback della cache raw-envelope viene utilizzato solo per errori di recupero temporanei; ogni hit ripete la verifica della firma, dell'aggiornamento, della validità e della sequenza conservata fissata alla radice e viene archiviata solo una busta verificata dall'applicazione. Radice di autorità bloccata provisioning/rotation, orologio sicuro e transparency/timestamp politica, condizionale HTTP riconvalida, cache expiry/eviction/quota/encryption, Retry-AfterPolitica /jitter, negoziazione dello schema di autenticazione e credenziali acquisition/refresh, crittografia, sandboxing e fisico Windows rimanere separati.
Il contratto host delle generazioni del plug-in UI9 adattivo è la versione 3. Mantiene da una a otto generazioni locali convalidate selezionate dal chiamante dietro il percorso attivo pubblico invariato, segnala il conteggio della cronologia contigua e restituisce i metadati della versione semantica posseduti mediante ispezione provvisoria. Scambia qualsiasi indice selezionato tramite la convalida del seme. Il commit dell'aggiornamento registra in modo duraturo il limite di conservazione, ruota o elimina gli slot fissi e termina dopo un'interruzione solo perché l'esatto pacchetto messo in scena ha già superato la convalida. Il ripristino provvisorio del rollback ripristina il pacchetto attivo precedente. Nativo macOS ARM64, Linux x86-64, e Windows x86-64/Wine debug/release i cancelli coprono l'intero limite di otto voci, rollback selezionato, potatura, interrotto rotation/publication/rollback, candidati non validi e normal/interrupted rimozione del pacchetto attivo più tutta la cronologia. Rilevamento remoto degli aggiornamenti e live forced-process/power-loss le prove rimangono separate.
L'iniziale ui-plugin-update la fetta ora si chiude delimitata, autenticata dall'artefatto esplicito-URL aggiornamenti per pacchetti senza autorizzazione e concessi esplicitamente. Compone standard HTTP/HTTPS recupero, estrazione canonica dell'archivio, credenziali Ed25519 selezionate dal chiamante, preflight di attendibilità e autorizzazione prima del caricamento nativo e pubblicazione della generazione conservata dietro un blocco di file del sistema operativo per pacchetto e un file di parte privata sincronizzato. Nativo macOS ARM64, Linux x86-64, e Windows x86-64/Wine debug/release i gate rifiutano firme non valide, concessioni mancanti e overflow legati al chiamante senza modificare il pacchetto o la cronologia installati, quindi pubblicano un aggiornamento autorizzato valido e dimostrano il rollback sensibile all'autorizzazione. ui-plugin-catalog aggiunge un 64-KiB schema-1/2 catalogo con un massimo di 32 versioni limitate, selezione del semver rigoroso con compatibilità più elevata indipendente dall'ordine, una politica rigorosamente più recente e associazione esatta della versione da catalogo a pacchetto firmato. Lo schema 2 autentica il documento esatto con una firma Ed25519 distaccata e separata dal dominio e applica l'applicazione selezionata publisher/key, issue/expiry, politica anti-rollback con tolleranza dell'orologio, validità massima e sequenza monotona. Lo stesso macOS/Linux/Windows copertura dei cancelli already-current/no-match comportamento più duplicato, editore, versione non corrispondente, firma non valida, rifiuto prematuro, scaduto e rollback. Le varianti autenticate trasportano un valore di autorizzazione limitato, selezionato dall'applicazione, sia per le richieste di catalogo che di archiviazione in base alla policy di reindirizzamento della stessa origine, solo HTTPS condivisa. Entrambi i GET utilizzano tre tentativi totali con limite 100/200 Backoff esponenziale ms per errori di trasporto e set di stati transitori condivisi. ui-plugin-remote-cache mantiene esatto-limitato URL voci di catalogo e archivio non elaborate in una radice esplicita. Solo gli errori di recupero temporanei falliscono e ogni colpo ripete il catalogo signature/freshness/sequence inoltre controlli di archivio, pacchetto, versione, attendibilità e autorizzazione prima del caricamento o della pubblicazione nativa. Condizionale HTTP riconvalida, cache expiry/eviction/quota/encryption, Retry-AfterPolitica /jitter, negoziazione dello schema di autenticazione e credenziali acquisition/refresh, ha bloccato la radice dell'autorità provisioning/rotation, transparency/timestamp politica e fisica Windows rimanere separati.
Il limite condiviso URL fetch ora passa nativo macOS/Linux OpenSSL e Windows/Wine WinSockpiù WinHTTP/Crypt32 debug/release cancelli. Tutte e tre le righe mantengono lo stesso incrementale HTTP corpo, scadenze, root personalizzata certificate/hostname verifica, reindirizzamenti relativi limitati e rifiuto del downgrade HTTPS. Il corpus autenticato verifica la convalida dell'intestazione delimitata, l'utilizzo solo di HTTPS, l'inoltro della stessa origine e il rifiuto multiorigine prima della divulgazione delle credenziali. I limiti selezionati dal chiamante forniscono da uno a otto tentativi totali e un limite esponenziale retry/backoff per guasti di trasporto e stato 408, 425, 429, 500, 502, 503 o 504; l'impostazione predefinita rimane un tentativo. IPv6/dual-stack, cancellazione del risolutore, caching condizionale, Retry-After/criteri jitter, negoziazione dello schema di autenticazione e ciclo di vita, pooling e fisico delle credenziali Windows rimanere separati.
Il contratto host dell'archivio del plug-in UI9 adattivo è la versione 3. Mantiene i rigidi moduli ZIP archiviati schema-1 a due voci e DEFLATE raw schema-2 e aggiunge una busta canonica schema-3 raw-LZ4 senza una dipendenza dalla compressione del sistema. Nativo macOS ARM64, Linux x86-64, e Windows x86-64/Wine debug/release i gate decodificano i blocchi Huffman memorizzati, fissi e Huffman dinamici più le corrispondenze LZ4 sovrapposte; imporre input compressi e output dichiarati, CRC, riempimento zero, un tetto di 65.536 blocchi, manifest/binary/archive limiti e layout fisso senza percorso; rifiutare flussi non validi o finali e metodi non supportati o misti; e superare la convalida esatta del pacchetto, transazionale installation/upgrade, compatibilità con lo schema 1, rollback e pulizia. Il recupero remoto è fornito dalle composizioni di aggiornamento e distribuzione attendibile di livello superiore; transparency/timestamp la politica rimane una prova separata.
CLI e utensili
Il launcher del repository fornisce new, check, format, incrementale build, run, test, risoluzione del pacchetto, install/uninstall, doc, lint, LSP e publish --check, oltre all'inoltro diretto del flag del compilatore e file.sd -o output. Registro remoto publication/signing non è implementato; il comando di pubblicazione esistente esegue solo la convalida locale.
Il compilatore diretto formatta l'origine, stampa semantic/IR forme, emits/reads/hashes .sdi, emette LLVM/object/shared/static/binary artefatti, installazioni target/ABI- librerie qualificate ed esegue target supportati. Il suo aiuto eseguibile è l'elenco dei flag autorevoli:
seed/compiler/llvm/build/seed --help
Documentazione fonte di verità
| Argomento | Pagina |
|---|---|
| Specifica della lingua attuale | seed/docs/lang-spec.md |
| Grammatica | seed/compiler/llvm/LANGUAGE_GRAMMAR.md |
| Semantica | seed/compiler/llvm/SEMANTIC_RULES.md |
| Utente syntax/CLI | Riferimento linguistico |
| Proprietà | Proprietà |
| Integrazioni principali | Core integrati |
| Runtime/backend | Primitive di sistema |
| Gates | seed/compiler/llvm/ROADMAP.md |
I documenti storici possono descrivere llvm-v1, il prototipo v2 o directory di stub di assembly che non esistono più. Devono essere etichettati esplicitamente e non devono essere utilizzati come guida corrente in un linguaggio pulito.
Integrazione AST presa in prestito (15-10-2026): il modello HIR recita un AstModuleView del modulo di proprietà del risolutore e il controllo del corpo restituisce lo stesso proprietario AST al driver. Il trasferimento di fase, il controllo reale e il loop del corpo non eseguono più la copia approfondita dell'AST per dichiarazione. I percorsi di errore restituiscono l'AST originale per la selezione dell'intervallo diagnostico, rimuovendo la copia a livello di modulo. Il CLI fornisce la radice analizzata con cui importare la scansione byte/SourceId guardie; i contatori di analisi eseguiti e i controlli di trasferimento passano normalmente e con disinfettanti. L'accettazione semantica di tutti i moduli rimane aperta. La mancata corrispondenza C0 M0029 è stata corretta: il rilevamento del prestito include aggregati contenenti viste e i controlli di sovrapposizione delle mutazioni proteggono le proiezioni di copia e i valori posseduti. I nuovi controlli aggregati e di visualizzazione AST rifiutano il proprietario live movement/mutation e fuga con vista locale; gli ambiti separati e i proprietari non correlati rimangono utilizzabili. Ciò non chiude il controllo del corpo di tutti i moduli, i riepiloghi importati conservati o SH3/SH4 accettazione.
Autointegrazione semantica (15-10-2026): il contesto di invocazione viene installato prima dell'inizializzazione della firma. I nomi nominali e le firme dei corpi importati concreti riutilizzano i TypeId registrati; le chiamate pubbliche qualificate e non qualificate utilizzano firme condivise. Le annotazioni locali mantengono AstTypeIds. Le annotazioni di tipo importato privato noto vengono rifiutate con intervalli R002 conservati in parametri, resi e dichiarazioni locali; i controlli primari CLI JSON corrispondono a C0. I casi generic/layout non supportati, il controllo del corpo di tutti i moduli e l'accettazione completa di SH3/SH4 rimangono aperti.
Mantenimento dell'integrazione del modulo sorgente (15-10-2026): il CLI controlla tutti i moduli sorgente analizzati con le loro firme condivise e il proprietario del tipo canonico. I corpi controllati vengono conservati separatamente dal conteggio dei corpi di origine; enti non supportati concedono n CheckedProgram/lowering autorità. I guasti del corpo importati mantengono la propria SourceMap e vengono visualizzati nei propri intervalli di origine. Calcestruzzo call/diamond controlli e un passaggio di controllo della sezione a copertura parziale; source/import propagazione sommaria, generic/method copertura e BF1/BF3 rimanere aperto.
Integrazione dell'identità generica assegnata (15-10-2026): parametri della funzione di origine interna possedendo DefinitionId e ordinale, mantengono origini di origine stabili e riutilizzano la firma registrata durante il controllo del corpo generico. Growth/failure passano i controlli e gli ordini di importazione con gli ID locali effettivamente rinumerati. Il componente fresh-ID API rimane invariato. Integrazione di insieme di tratti, generica nominal/imported specializzazione e completo SH3-03/SH4 l'accettazione resta aperta.
Integrazione dei metadati associati all'origine (15-10-2026): il parser conserva ogni + arco temporale legato ai tratti owned/borrowed/copied AST. I tratti di origine hanno identità canoniche; i parametri della funzione mantengono la prima definizione del tratto e ogni TypeId del tratto aggiuntivo. Unknown/non-trait/private i limiti aggiuntivi vengono rifiutati con R013 individuato corrispondente al primario C0 JSON. Caratteristica satisfaction/witness controlli alle chiamate generiche, al metodo dispatch e al full SH3-03/SH4 l'accettazione resta aperta.
Integrazione del testimone di origine (15-10-2026): l'invocazione mantiene i contratti dei tratti indicizzati e richiede una scansione impl di origine completata. Le chiamate generiche locali dedotte controllano ogni limite del marker; gli esempi completi di tratti vuoti forniscono testimoni e i testimoni mancanti producono localizzato H072. Method/generic i casi impl rimangono non dimostrati. C0 M0030 allinea la denominazione dei parametri del tipo di target impl con le dichiarazioni, preservando P042 identity/order rifiuto; I controlli Oracle mirati passano, con il rinnovo dell'intera suite di proprietà di SH0_BASELINE.md. SH3-03/SH4 rimanere aperto.
Preparazione della firma del metodo dei tratti (15-10-2026): l'AST preserva gli intervalli di firma e receiver/effect/unsafe/static-view metadati. Un contesto controllato dal proprietario risolve i tipi di metodo nella tabella canonica condivisa, memorizza nella cache le firme ripetute e ripristina AST/type proprietari su forme non supportate. Intervalli di metodi con tratti incrociati e assegnazioni errate rifiutate. La pubblicazione della produzione e la validazione integrale del metodo rimangono aperte; questo API non suggella tratti né concede testimoni.
Pubblicazione della firma del metodo dei tratti (15-10-2026): la raccolta di produzione ora pubblica i descrittori dei metodi supportati nei contratti condivisi dell'invocazione. La raccolta ripetuta e i nuovi contesti del risolutore riutilizzano i loro ID di firma e unsafe/static-view bandiere. I conteggi dichiarati e pubblicati rimangono separati; un set di metodi di origine incompleto non può essere sigillato. I tipi di metodi privati noti e i nomi duplicati mantengono il primo individuato R002/R014 trovare, corrispondente al primario C0 CLI JSON. Le firme non supportate rimangono in sospeso. I tratti del metodo rimangono non sigillati; convalida dell'implementazione, dizionari, corrispondenza impl generica e completa SH3-03/SH4 l'accettazione resta aperta.
Convalida della firma implicita della sorgente concreta (15-10-2026): dopo la pubblicazione di tutte le firme dei moduli, concrete borrowed/mutable I metodi confrontano il ricevitore, i parametri e i tipi restituiti con i set completi di metodi dei tratti di origine, inclusi i tratti importati. Undeclared/mismatching i metodi mantengono R016/R017 con primario C0 JSON parità. Il confronto non fornisce alcuna testimonianza. Lo stato di implementazione differito sopravvive alla risigillazione; ricevitori di proprietà, impls generici, missing/duplicate metodi, body/effect riassunti e dizionari restano aperti. SH3-03/SH4 non sono chiusi.
Diagnostica della completezza dell'implementazione della sorgente (15-10-2026): i contratti completi sui tratti di origine concreti ora rifiutano i metodi richiesti mancanti con R020 nell'intervallo di implementazione completo, compresi i tratti importati. La presenza del nome viene controllata separatamente dal supporto della firma. C0/self CLI primario JSON corrisponde ai controlli del metodo mancante vuoti, parziali e importati. I tratti rimangono non sigillati; metodi duplicati, ricevitori di proprietà, farmaci generici e convalida dell'implementazione body/dictionary rimangono aperti. SH3-03/SH4 la piena accettazione è invariata.
Diagnostica del metodo di origine duplicato (15-10-2026): la registrazione con ambito modulo mantiene R001 alla seconda dichiarazione del metodo invece di fallire silenziosamente. CLI primario JSON corrisponde a C0 per impl/inherent/imported duplicati. Gli slot duplicati rimangono non assegnati e la raccolta delle firme si interrompe; stage/single-module gli adattatori rifiutano le registrazioni parziali. Organismi di metodo, ricevitori di proprietà, impianti generici e dictionary/witness l'integrazione resta aperta; SH3-03/SH4 non sono chiusi.
Integrazione del ricevitore di origine di proprietà (15-10-2026): i metodi struct ordinari non generici ora pubblicano un TypeId del ricevitore esplicito e creano un parametro HIR non preso in prestito. Le loro firme implementate supportate partecipano ai controlli R017. I corpi con campi scalari incorporati hanno una copertura controllata focalizzata. Resource/view/nested e gli organismi in campo non sicuro rimangono in sospeso fino alla nomina canonica cleanup/capability i metadati sono completi; i distruttori rimangono fuori da questo percorso. Le firme non conferiscono autorità all'organismo o al testimone. Pieno SH3-03/SH4 l'accettazione resta aperta.
Integrazione della pulizia del ricevitore di risorse flat (15-10-2026): i campi della struttura canonica possono essere completati una volta con funzionalità derivate preservando TypeId e origini stabili. I ricevitori di proprietà ordinaria supportati completano i campi scalar/resource integrati durante la raccolta delle firme. Prima della proprietà, HIR materializza ogni campo del ricevitore, compresi i campi senza riferimento; i controlli di pulizia conservati coprono lo scarto dell'intero proprietario, il movimento parziale del campo e il trasferimento completo. Nested/view/ campi non sicuri, distruttori, acquisizioni, associazioni aggregate aggiuntive e persistenza generale dei metadati nominal/imported rimangono in sospeso. Questi componenti non chiudono SH3/SH4 né autorizzano un CheckedProgram completo.