Skip to content

Portal v0.1.1 — loopback clarification + trending-demo rename

Choose a tag to compare

@0motionguy 0motionguy released this 19 Apr 13:17

Additive clarifications over v0.1.0. Every v0.1.0-conformant portal remains v0.1.1-conformant.

Spec changes

  • call_endpoint loopback exception. http://localhost and http://127.0.0.1 are now explicitly permitted (local development). Production still requires https://. Both the JSON Schema pattern and the lean validator's URL regex updated together.
  • New vector: MV-11-loopback-http covers the exception.
  • Rate-limit appendix (B): SHOULD-level defaults + Retry-After header semantics for the RATE_LIMITED error code.
  • Runner API: adds validateAgainstVectors(manifest) for offline full-suite reporting. runConformance() renamed to runSmokeConformance() for clarity.

Reference rename

reference/star-screener/ → reference/trending-demo/.

Preserved: the human-facing service name "Star Screener" (appears in manifests, terminal demos, directory entries).
Replaced: the kebab-case package/filesystem slug. pnpm --filter trending-demo start now runs the demo.

Version bumps

  • @visitportal/spec 0.1.0 → 0.1.1
  • @visitportal/visit 0.1.0 → 0.1.1 (no API changes; version tracks spec)
  • @visitportal/cli 0.1.0 → 0.1.1 (no API changes)

Numbers still hold

Tool count MCP Portal Ratio
10 1,956 172 11.4×
100 13,929 172 81.0×
400 54,677 172 317.9×

Matrix unchanged: packages/bench/results/tokens-matrix-v1.json.

Verified

  • pnpm -r test → 121/121 still green
  • pnpm --filter @visitportal/spec test → 32 vectors OK · ajv↔lean agree on all 22 manifest vectors
  • pnpm --filter visitportal-web build → 7 static + 1 dynamic routes
  • SDK bundle: 2.25 kB gzipped (under 15 kB ceiling)
  • bash scripts/demo.sh → 7s end-to-end (now runs pnpm --filter trending-demo)

Live

License

Unchanged: Apache 2.0 for code, CC0 1.0 for the spec.


Built with Opus 4.7 for the Claude Code hackathon · April 2026