chore: snapshot WIP previo + flow 0008 + 7 sub-issues (0112-0119)
Snapshot de WIP acumulado de sesiones previas antes de merge wave 1 del flow 0008 (kanban_cpp + agent_runner_api + DoD schema). Incluye: - dev/flows/0008-kanban-cpp-and-agent-workflows.md - dev/issues/0112-0119*.md (7 sub-issues) - WIP previo en cmd/fn/doctor.go, registry/*, modules/, cpp/, etc. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
+49
-12
@@ -75,18 +75,33 @@ type rawType struct {
|
||||
|
||||
// rawApp mirrors the YAML frontmatter of an app .md file.
|
||||
type rawApp struct {
|
||||
Name string `yaml:"name"`
|
||||
Lang string `yaml:"lang"`
|
||||
Domain string `yaml:"domain"`
|
||||
Description string `yaml:"description"`
|
||||
Tags []string `yaml:"tags"`
|
||||
UsesFunctions []string `yaml:"uses_functions"`
|
||||
UsesTypes []string `yaml:"uses_types"`
|
||||
UsesModules []string `yaml:"uses_modules"`
|
||||
Framework string `yaml:"framework"`
|
||||
EntryPoint string `yaml:"entry_point"`
|
||||
DirPath string `yaml:"dir_path"`
|
||||
RepoURL string `yaml:"repo_url"`
|
||||
Name string `yaml:"name"`
|
||||
Lang string `yaml:"lang"`
|
||||
Domain string `yaml:"domain"`
|
||||
Version string `yaml:"version"`
|
||||
Description string `yaml:"description"`
|
||||
Tags []string `yaml:"tags"`
|
||||
UsesFunctions []string `yaml:"uses_functions"`
|
||||
UsesTypes []string `yaml:"uses_types"`
|
||||
UsesModules []string `yaml:"uses_modules"`
|
||||
Framework string `yaml:"framework"`
|
||||
EntryPoint string `yaml:"entry_point"`
|
||||
DirPath string `yaml:"dir_path"`
|
||||
RepoURL string `yaml:"repo_url"`
|
||||
Service *rawService `yaml:"service"`
|
||||
}
|
||||
|
||||
// rawService mirrors the `service:` block of an app.md frontmatter (issue 0105).
|
||||
type rawService struct {
|
||||
Port *int `yaml:"port"`
|
||||
HealthEndpoint string `yaml:"health_endpoint"`
|
||||
HealthTimeoutS int `yaml:"health_timeout_s"`
|
||||
SystemdUnit string `yaml:"systemd_unit"`
|
||||
SystemdScope string `yaml:"systemd_scope"`
|
||||
RestartPolicy string `yaml:"restart_policy"`
|
||||
Runtime string `yaml:"runtime"`
|
||||
IsLocalOnly bool `yaml:"is_local_only"`
|
||||
PCTargets []string `yaml:"pc_targets"`
|
||||
}
|
||||
|
||||
// rawAnalysis mirrors the YAML frontmatter of an analysis .md file.
|
||||
@@ -325,11 +340,16 @@ func ParseAppMD(path string, root string) (*App, error) {
|
||||
|
||||
sections := extractSections(body)
|
||||
|
||||
if raw.Version == "" {
|
||||
raw.Version = "0.1.0"
|
||||
}
|
||||
|
||||
a := &App{
|
||||
ID: GenerateID(raw.Name, raw.Lang, raw.Domain),
|
||||
Name: raw.Name,
|
||||
Lang: raw.Lang,
|
||||
Domain: raw.Domain,
|
||||
Version: raw.Version,
|
||||
Description: raw.Description,
|
||||
Tags: raw.Tags,
|
||||
UsesFunctions: raw.UsesFunctions,
|
||||
@@ -343,6 +363,23 @@ func ParseAppMD(path string, root string) (*App, error) {
|
||||
RepoURL: raw.RepoURL,
|
||||
}
|
||||
|
||||
if raw.Service != nil {
|
||||
spec := &ServiceSpec{
|
||||
HealthEndpoint: raw.Service.HealthEndpoint,
|
||||
HealthTimeoutS: raw.Service.HealthTimeoutS,
|
||||
SystemdUnit: raw.Service.SystemdUnit,
|
||||
SystemdScope: raw.Service.SystemdScope,
|
||||
RestartPolicy: raw.Service.RestartPolicy,
|
||||
Runtime: raw.Service.Runtime,
|
||||
IsLocalOnly: raw.Service.IsLocalOnly,
|
||||
PCTargets: raw.Service.PCTargets,
|
||||
}
|
||||
if raw.Service.Port != nil {
|
||||
spec.Port = *raw.Service.Port
|
||||
}
|
||||
a.Service = spec
|
||||
}
|
||||
|
||||
return a, nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user