Skip to content

Releases: kangig94/obsidian-para-zk

0.1.5

25 Jun 16:14

Choose a tag to compare

0.1.5

Added

  • Automatically reparent child notes after Obsidian file tree moves. Moving a subnote between Projects and Areas now updates its parent frontmatter to the nearest folder-style parent.
  • Automatically reparent nested Areas after folder moves, including root/nested Area transitions and Area tag namespace updates for descendants.

Notes

  • No new para-zk:move-child command was added. This release keeps file moves in Obsidian/optsidian and lets PARA-ZK repair managed parent metadata after the move event.
  • The existing updated frontmatter timestamp may change when auto-reparent writes the corrected metadata; that is expected.

Validation

  • Added workflow and listener tests for file and folder move handling.
  • Passed typecheck, full Vitest suite, architecture lint, Obsidian review lint, and dead-code lint.

0.1.4

25 Jun 10:51

Choose a tag to compare

Beta release 0.1.4 — install via BRAT (see README).

0.1.3

25 Jun 04:56

Choose a tag to compare

Beta release 0.1.3 — install via BRAT (see README).

0.1.2

24 Jun 14:48

Choose a tag to compare

Fixed

  • Reading view: fixed the recurring scroll "jump" in notes carrying the PARA-ZK props
    panel (the viewport lurched by a fixed amount on every scroll tick — earlier it drifted
    steadily downward; later it jumped and snapped back). Root cause: Reading view recycles
    its sections — the note header among them — in and out of the DOM while scrolling, so once
    the header scrolled away the props panel was orphaned and re-attached as a bare
    .markdown-preview-sizer child. That put unaccounted height above the viewport that
    Obsidian stripped and the plugin re-added every frame, shoving the scroll position. The
    props panel now attaches only inside its stable home (.mod-header) and waits, detached,
    while the header is recycled away — instead of falling back to the top of the sizer. The
    managed panel keeps its sizer fallback (it sits below the body, so it never caused the
    above-viewport thrash, and detaching it would leave its Dataview views — cited-by,
    references — unable to populate).

0.1.1

24 Jun 14:34

Choose a tag to compare

Beta release 0.1.1 — install via BRAT (see README).

0.1.0

22 Jun 04:02

Choose a tag to compare

0.1.0

Added

  • Native file-tree "New note" auto-templating for flat managed note types. Empty Markdown files
    created under Resources, ZK Spark, ZK Digest, ZK Permanent, or an existing project/area
    folder-note folder now receive the matching PARA-ZK template body and frontmatter while
    preserving the user-chosen filename; archived, journal, LLM-Wiki, retro, project, area, and
    unmanaged paths remain untouched.
  • SessionStart hook (clients/hooks/wiki-domains-hook.mjs) that injects the LLM-Wiki
    domain roster at the start of each Claude Code session (and after compaction), so the
    assistant consults the wiki for in-domain questions on its own. It reads only the Obsidian
    vault registry and each para-zk vault's LLM-Wiki/ folder listing — no running Obsidian, no
    para-zk runtime — and stays silent when no wiki is present. The injected guidance routes
    reads through the para-zk CLI (read-llm-wiki or list, never raw file paths) and, when
    Obsidian is not running, asks the user before optsidian open-gui vault-path=<path>. The roster is
    domain-only (no page titles) so it stays bounded as the wiki grows. A consistency test
    pins the hook's domain enumeration to the canonical para-zk:wiki-domains workflow.

Changed

  • data.json now persists only runtime-mutable user settings (locale,
    showRibbon, showEmptyTrashAction, editorWidthSliderEnabled, and
    editorLineWidth). The PARA/ZK layout is fixed in src/layout.ts; removed
    paths, layoutFolders, setupAt, and managedFiles keys are ignored when
    loading older vault data.
  • Content-note templates no longer write legacy para-zk-props/para-zk-managed
    scaffolding fences into note bodies. Props (top) and managed
    UI (bottom) now render automatically in both Reading view and Live Preview from
    frontmatter type, so raw file bodies and read-* bodies no longer disagree
    and LLMs do not recreate duplicate blocks. Existing notes can be migrated with
    the new managed_block_in_body audit check and para-zk:audit fix=true, which
    strips the residual fences while leaving frontmatter and user-authored body text
    intact. The project latest-retro-summary block remains in place.
  • para-zk:setup now treats managed scaffolding (templates, dashboards, READMEs) as
    fully plugin-owned: it overwrites those files whenever generated content differs,
    leaves matching files alone, and no longer exposes a managed-file force option.
    User content notes remain outside the setup write set.
  • Managed-block UI: the four per-type "cited by" Dataview views collapse into one general
    cited-by view on every note type except spark — a vault-wide backlink scan that classifies
    each citing note by its type (raw type shown for unlisted kinds) and renders a
    root-relative, .md-stripped path (fixing the <domain>/index filename collision where
    multiple index pages all showed as "index"). All managed-block buttons (create subnote/retro/
    subarea, distill/discard, create-from-resource/digest) move from per-view toolbars into
    declarative para-zk-action blocks; the legacy bare-token para-zk-view key fallback is removed.
  • The general cited-by view now excludes a project/area folder note's own subtree — its subnotes
    already appear in the subnotes section, so they no longer double up in "cited by" — at any nesting
    depth, while flat notes (resource, ZK, LLM-Wiki, …) keep every citation including same-folder siblings.
  • The project/area subnotes view now sorts by recency (most recently edited first, file.mtime),
    matching the cited-by view, instead of by filename.
  • LLM-Wiki authoring surfaces now carry an explicit Obsidian-MathJax rule: the
    wiki-weaver agent, the wiki-capture skill, and wiki-ingest's insight-fold step
    write formulas as $…$/$$…$$ with literal single backslashes and never inside backtick
    code-spans (backticks are reserved for PZ[id] citations and code/identifiers) — a
    backtick-wrapped formula rendered as monospace text instead of math. wiki-lint gains a
    broken-math detection finding (backtick-wrapped formulas, \(...\)/\[...\] delimiters,
    doubled backslashes), reported for a wiki-ingest re-ingest or a manual fix.
  • import-resource now removes dead intra-document page-anchor scaffolding — the empty
    <span id="page-…"> anchors and the [text](#page-…) links that point at them, neither of
    which resolves in Obsidian (the link renders as a dead "not found" link). Anchors are stripped
    and links delinked to their plain visible text; heading-embedded anchors also broke PARA-ZK's
    #heading citation matching.
  • para-zk:list query now matches the note's full address path, not just its
    basename, so query=<subpath>/ scopes a listing to a subfolder — a wiki domain
    (type=llm-wiki query=AI/), a Resources folder, or a project's subnotes. Title
    substrings still match (the basename is part of the address), so existing queries
    are unaffected. The wiki read-flow's no-index fallback uses this to enumerate a
    single domain's pages.

Fixed

  • Custom-sort dependency config now reconciles the managed sortspec bookmarks group
    recursively, not just at the top level. A vault built from an older baseline whose ZK
    group drifted (e.g. missing Digest between Spark and Permanent) was reported
    "configured" and never healed. setup now descends into a managed group the user has
    already populated with nested groups and inserts missing nested folders at their baseline
    position. Empty groups are never force-populated, and existing top-level and nested orders
    are preserved.