Feat v0.6.17 bugfixes (#52)
Some checks failed
CI/CD / detect-changes (push) Successful in 16s
CI/CD / test-frontend (push) Successful in 6s
CI/CD / test-go-pg (push) Failing after 2m54s
CI/CD / test-sqlite (push) Failing after 3m7s
CI/CD / build-and-deploy (push) Has been skipped

Co-authored-by: Jeffrey Smith <jasafpro@gmail.com>
Co-committed-by: Jeffrey Smith <jasafpro@gmail.com>
This commit was merged in pull request #52.
This commit is contained in:
2026-04-01 16:36:43 +00:00
committed by xcaliber
parent ff19a1b4d3
commit e7d1b53ebf
12 changed files with 111 additions and 30 deletions

View File

@@ -747,6 +747,10 @@ func (h *PackageHandler) ListEnabledSurfaces(c *gin.Context) {
if p.Type != "surface" && p.Type != "full" {
continue
}
// Welcome is a fallback surface, not a navigable destination
if p.ID == "welcome" {
continue
}
route, _ := p.Manifest["route"].(string)
icon, _ := p.Manifest["icon"].(string)
enabled = append(enabled, navSurface{

View File

@@ -22,18 +22,12 @@ import (
"armature/triggers"
)
// defaultBundledPackages is the curated set of packages installed by default.
// Other packages still ship in the Docker image but require BUNDLED_PACKAGES
// to be set explicitly (or "*" for all).
//
// Recommended production override: BUNDLED_PACKAGES=notes,chat,chat-core,mermaid-renderer,schedules
var defaultBundledPackages = map[string]bool{
"notes": true,
"chat": true,
"chat-core": true,
"mermaid-renderer": true,
"schedules": true,
}
// defaultBundledPackages is empty — fresh installs start bare.
// Use BUNDLED_PACKAGES env var to control what gets installed per environment:
// dev: BUNDLED_PACKAGES=*
// test: BUNDLED_PACKAGES=notes,chat,chat-core
// prod: BUNDLED_PACKAGES=notes,chat,chat-core,mermaid-renderer,schedules
var defaultBundledPackages = map[string]bool{}
// InstallBundledPackages scans bundledDir for .pkg archives and installs
// any that don't already exist in the database. Called once at startup
@@ -74,7 +68,8 @@ func InstallBundledPackages(bundledDir, packagesDir, allowlist string, stores st
}
// Check allowlist by filename (strip .pkg extension = package ID)
if len(allowed) > 0 {
// nil = install all ("*"), empty map = install nothing (empty default set)
if allowed != nil {
pkgName := strings.TrimSuffix(entry.Name(), ".pkg")
if !allowed[pkgName] {
filtered++