Skip to content

v0.5.4

Choose a tag to compare

@github-actions github-actions released this 03 Jul 11:51
· 41 commits to main since this release

Crash-safe config and self-update writes, symlink-hardened MCP reads, and paginated list_documents.

Breaking changes

  • list_documents returns {documents, total, offset, returned, truncated}, no longer a bare JSON array.

Features

  • list_documents pages results via limit/offset (default 100, max 500).

Improvements

  • Config and self-update writes are crash-safe — no truncated settings.json or half-written binary.
  • Security hardening: MCP reads and scans refuse symlinks escaping .archcore/; build moves to Go 1.25.11.
  • Installing hooks and MCP config preserves unknown keys and key order in agent config files.
  • Sync skips declared global sources, so read-only mounts aren't pushed as local documents.
  • Document reads run off an mtime-keyed scan cache — faster on large .archcore/ trees.

Fixes

  • status no longer flags CRLF/BOM (Windows-edited) documents as missing frontmatter.
  • Malformed frontmatter YAML surfaces an error instead of silently parsing as empty.
  • Title-only document updates preserve on-disk tag order.
  • Sync marks only server-confirmed changes as synced, so failed pushes retry next run.
  • Corrupt .vscode/mcp.json is left intact, not reset, preserving your other MCP servers.
  • Self-update rejects oversized archive entries instead of installing a truncated binary.

Changelog

  • aa561e3 fix: security updates
  • f43941f fix(cmd): update returns ErrAlreadyReported; drop orphaned ErrServerUnreachable sentinel
  • 2f9c19a docs(archcore): align stale rules and record audit execution
  • 6c484f8 test: close the audit's coverage gaps
  • b8ac522 refactor: consistency sweep — sentinels, aliases, ordering, validation, magic strings
  • 6c3e01b refactor: remove dead code across api, sync, config, templates, hooks
  • 6406b6d feat(mcp): list_documents pagination — limit/offset params and response envelope
  • 16e0187 perf(mcp): mtime-keyed scan cache, per-call relation index, ReadDir nearby hints
  • 58a63b2 fix: durability and consistency fixes across status, config, update, hooks, init
  • 19da79f fix(sync): manifest records only server-confirmed changes; globals excluded from scan
  • 97c0f29 fix(agents): MCP config writers — corrupt policy, JSONC exception, opencode delegation
  • 4ed7a6b fix(hooks): rework installers on a RawMessage-preserving generic path
  • cb39624 feat(jsonfile): add order- and content-preserving JSON config surgery package
  • 856df4b fix(mcp): serialize manifest mutations via shared store; unify corrupt-manifest errors
  • 7d7e682 fix(mcp): harden write-path validation with shared guardWritablePath
  • c88b935 fix(mcp): sanitize OS errors in tool results — never leak absolute paths
  • cdc60ef style: gofmt cmd/mcp_root.go
  • 8e72afc fix(templates): surface frontmatter YAML errors from SplitDocument and strip BOM
  • adf0063 docs: add full-audit fix plan (July 2026)