Purpose: Capture the root cause, fix, and lessons from wildcard context install failures.
Last Updated: 2026-01-12
install.sh./scripts/registry/validate-registry.sh)Estimated time: 10 min
Symptom:
curl: (3) URL rejected: Malformed input to a URL function
Cause: Wildcard expansion returned context IDs that weren’t path-aligned (e.g., standards-code mapped to .opencode/context/core/standards/code-quality.md). Installer treated IDs as paths.
Goal: Make wildcard expansion output core/... IDs that map directly to a path.
Update:
context:core/* to core/standards/code-quality style IDsGoal: Avoid ambiguous matches and ensure one registry entry is used.
Update:
resolve_component_path to map context IDs to the registry pathfirst(...) in jq queries for deterministic selectionbash scripts/tests/test-e2e-install.sh
Expected: All E2E tests pass on macOS and Ubuntu.
REGISTRY_URL="file://$(pwd)/registry.json" ./install.sh --list
| Issue | Solution |
|---|---|
Malformed input to a URL function |
Ensure wildcard expansion returns core/... IDs and uses resolve_component_path |
| Multiple context entries for one path | Use first(...) in jq lookups |