Add full shell, replaceable Omics adapter and bilingual interaction
Implement approved specification #32 and tickets #33-#37. Keep host authentication server-verified and pin session interaction language. Compile scoped base selectors for browser compatibility and retain full gutters during CSS pruning.
This commit is contained in:
@@ -40,6 +40,7 @@ type descriptor struct {
|
||||
WorkspaceRepository workspaceRepositoryDescriptor `yaml:"workspaceRepository"`
|
||||
Authentication authenticationDescriptor `yaml:"authentication"`
|
||||
ModelCatalog ModelCatalog `yaml:"modelCatalog"`
|
||||
Shell Shell `yaml:"shell"`
|
||||
Overrides []string `yaml:"overrides"`
|
||||
}
|
||||
|
||||
@@ -91,6 +92,7 @@ type Installation struct {
|
||||
WorkspaceRepository WorkspaceRepository
|
||||
Authentication Authentication
|
||||
ModelCatalog ModelCatalog
|
||||
Shell Shell
|
||||
Overrides []string
|
||||
}
|
||||
|
||||
@@ -128,6 +130,9 @@ func Load(path string) (Installation, error) {
|
||||
if err := raw.ModelCatalog.NormalizeDefaults(); err != nil {
|
||||
return Installation{}, err
|
||||
}
|
||||
if err := raw.Shell.NormalizeDefaults(); err != nil {
|
||||
return Installation{}, err
|
||||
}
|
||||
|
||||
if raw.SchemaVersion != 2 {
|
||||
return Installation{}, errors.New("migration_required: installation schemaVersion must be 2")
|
||||
@@ -176,6 +181,7 @@ func Load(path string) (Installation, error) {
|
||||
},
|
||||
Authentication: authentication,
|
||||
ModelCatalog: raw.ModelCatalog,
|
||||
Shell: raw.Shell,
|
||||
Overrides: make([]string, 0, len(raw.Overrides)),
|
||||
}
|
||||
values, err := installation.environmentValues()
|
||||
@@ -435,7 +441,7 @@ func (i Installation) ComposeFiles() []string {
|
||||
return files
|
||||
}
|
||||
|
||||
// GeneratedDirectory contains disposable runtime adapters derived from modelCatalog.
|
||||
// GeneratedDirectory contains disposable model and public frontend runtime projections.
|
||||
func (i Installation) GeneratedDirectory() string {
|
||||
return filepath.Join(filepath.Dir(i.Path), "generated")
|
||||
}
|
||||
@@ -452,6 +458,10 @@ func (i Installation) GeneratedPiSettingsPath() string {
|
||||
return filepath.Join(i.GeneratedDirectory(), "pi", "settings.json")
|
||||
}
|
||||
|
||||
func (i Installation) GeneratedFrontendConfigPath() string {
|
||||
return filepath.Join(i.GeneratedDirectory(), "frontend", "config.js")
|
||||
}
|
||||
|
||||
func (i Installation) ModelProjectionComposePath() string {
|
||||
return filepath.Join(i.GeneratedDirectory(), "compose.models.yaml")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user