Files
passepartout/CHANGELOG.org
Amr Gharbeia deae08ab44
Some checks failed
Deploy (Gitea) / deploy (push) Failing after 2s
passepartout: update CHANGELOG for v0.5.1 and v0.6.0
2026-05-08 09:50:01 -04:00

6.7 KiB

Passepartout Changelog

All notable changes to Passepartout, extracted from ROADMAP.org DONE items with LOGBOOK timestamps.

v0.6.0 — Time Awareness

  • Released [2026-05-08 Thu]

Temporal Memory Filtering (symbolic-time-memory skill)

  • memory-objects-since(timestamp) — hash-table walk returning objects with version >= timestamp
  • memory-objects-in-range(since until) — version between two timestamps (inclusive)
  • context-query-with-time — extended query with :since / :until parameters
  • 6 tests, 100% pass. Pure Lisp, sub-millisecond, 0 LLM tokens

Sensor-Time Skill

  • format-time-for-llm — TIME: section for system prompt, iso/natural format
  • session-duration — session start tracking, included in TIME section
  • sensor-time-tick — deadline scanning via cron (:reflex tier), 0 LLM tokens
  • TIME_AWARENESS / TIME_FORMAT / DEADLINE_WARNING_MINUTES env vars
  • 13 tests, 100% pass

System Prompt

  • TIME section injected at top of think() via fboundp guard in core-reason.lisp
  • Falls back gracefully when sensor-time skill not loaded

v0.5.1 — Compilation Hardening

  • Released [2026-05-08 Thu]
  • Fixed defvar missing opening paren in security-vault.lisp
  • Updated 19 CFFI struct references in embedding-native.lisp (deprecation fix)
  • Fixed heartbeat variable scope in symbolic-events.lisp (passepartout:: prefix)
  • Suppressed ~100 harmless cross-skill STYLE-WARNINGs via bash script filter
  • ROADMAP: two false errors documented (symbolic-memory lambda, gateway-messaging deleted)
  • Test suite: 116/116 (100%)

v0.5.0 — File Reorganization & Token Economics

  • Released [2026-05-08 Thu]

File Reorganization (self-repair criterion)

  • Extracted core-contextsymbolic-awareness (skill, hot-reloadable)
  • Extracted heartbeat generation → symbolic-events (skill)
  • Relocated 6 utility fragments to correct files
  • Renamed 6 core files (core-defpackage → core-package, core-communication → core-transport, core-loop → core-pipeline, core-loop-perceive → core-perceive, core-loop-reason → core-reason, core-loop-act → core-act)
  • Renamed 13 system-* files (system-config → symbolic-config, system-model-provider → neuro-provider, system-actuator-shell → channel-shell, etc.)
  • Deleted system-model.lisp (dead code)
  • Renamed 4 gateway-* files → channel-*
  • Split gateway-messaging.lisp (411 lines) → 4 channel-{telegram,signal,discord,slack} files
  • Deleted gateway-messaging.org/.lisp, renamed 13 defskill~/~defpackage names to match
  • Renamed gateway-cli-inputchannel-cli-input (function + exports)
  • Removed core-context filter from core-skills.lisp
  • Documented the self-repair criterion in ARCHITECTURE.org, DESIGN_DECISIONS.org, and AGENTS.md
  • Added hard rule in AGENTS.md: no core additions without permission

Token Economics (skills, not core)

  • org/tokenizer.orglisp/tokenizer.lisp: count-tokens, model-token-ratio, token-cost, provider-token-cost — char-ratio heuristic per model family with per-provider pricing (11 tests)
  • org/cost-tracker.orglisp/cost-tracker.lisp: cost-track-call, cost-session-total, cost-by-provider, cost-format-budget-status — per-call cost logged as COST TRACKER: DEEPSEEK call: 0.0002 USD (6 tests)
  • org/token-economics.orglisp/token-economics.lisp: prompt-prefix-cached (sxhash-based IDENTITY+TOOLS caching), context-assemble-cached (skip heartbeat/delegation, cache on unchanged foveal/scope/memory), enforce-token-budget (L1→L2→L3 progressive trimming, CONTEXT_MAX_TOKENS env var) (9 tests)
  • All three loaded as skills via skill-initialize-all, fboundp-guarded in think()
  • Full test suite: 116/116 (100%)

Bug Fixes

  • Fixed DeepSeek 400 error: removed malformed tools parameter from cascade requests
  • Fixed UNDEFINED-FUNCTION crash in think() when symbolic-awareness skill not loaded (fboundp guards)
  • Fixed gate-trace duplication in TUI responses (setf replaces list* in cognitive-verify)
  • Tightened dexador connect-timeout from 10s → 5s for faster cascade failover

v0.4.3 — Shell Sandboxing & Safety Classification

  • Released [2026-05-07 Thu]
  • Added bwrap sandbox to shell actuator (--unshare-net, --unshare-ipc, read-only system bindings)
  • Fallback to regex-only safety when bwrap unavailable
  • Shell safety severity classification: :catastrophic:dangerous:moderate:harmless
  • :catastrophic always HITL regardless of approval count; :harmless allowed by default
  • Severity tier feeds into rule learning engine (v0.7.2)

v0.4.2 — Structured Output (LLM → JSON → plist)

  • Released [2026-05-07 Thu]
  • Function-calling / tool-use API in provider-openai-request
  • LLM returns guaranteed-valid JSON → deterministic json-alist-to-plist conversion at boundary
  • think() wired to use structured tool calls from the LLM
  • Raw read-from-string plist parsing kept as fallback for streaming/local models

v0.4.1 — Design Cleanup

  • Released [2026-05-07 Thu]
  • Removed system-prompt-augment mechanism from skill struct and defskill
  • Introduced *standing-mandates* (list of function → string generators) as replacement
  • Fixed false token-overhead claims in DESIGN_DECISIONS and ROADMAP (3,000-8,000 → ~40)
  • Updated security vector count 9→10 in README, ARCHITECTURE.org, dispatcher docstring
  • Rewrote README: added "What is an agent?" section, moved cost claims to DESIGN_DECISIONS
  • Registered 10 cognitive tools (search-files, find-files, read-file, write-file, list-directory, run-shell, eval-form, run-tests, org-find-headline, org-modify-file)
  • Enforced NO-HARDCODED-CONSTANTS standard with .env.example entries

v0.4.0 — Production Hardening

  • Released [2026-05-06 Wed 20:56]
  • Activated semantic retrieval: wired :foveal-vector into context assembly; replaced SHA-256 hashing default with trigram Jaccard similarity for offline semantic retrieval
  • Self-build safety boundary: core-* path protection; SELF_BUILD_MODE env var; HITL Flight Plan for core modifications
  • TUI differentiator visualization: gate trace per action (pass/block/approval), focus map in status bar, rule counter
  • Expanded theme system: 25-color layered system, /theme <name> command (dark/light/solarized/gruvbox)
  • Gateway QA: Telegram + Signal integration tests; Discord + Slack gateways
  • Emacs bridge: passepartout.el over framed TCP protocol, M-x passepartout-send-region, M-x passepartout-focus
  • Native embedding inference: CFFI binding to llama.cpp, nomic-embed-text-v1.5 (768-dim), EMBEDDING_PROVIDER=native