Add frontmatter properties editor regression coverage #67

Closed
opened 2026-05-21 13:29:37 +00:00 by steve · 0 comments
Owner

Add regression coverage for the frontmatter properties editor across its shared
API contracts and visible app surfaces.

Context

Current coverage is uneven:

  • API tests cover search/property indexing and one processFrontMatter() cache
    fallback case, but not the full mutation and rename contract.
  • Markdown tests cover metadata parsing, frontmatter line decorations, and link
    completions, but not the property editor component or built-in property
    widgets.
  • Workspace/desktop smoke tests cover boot and task-frontmatter writes, but not
    user-driven property editing, autocomplete, add/remove, or rename flows in the
    file properties side view or live-preview frontmatter block.

Acceptance Criteria

  • API unit tests cover FileManager.processFrontMatter() mutation edge cases and
    MetadataTypeManager rename/type-index behavior.
  • Markdown component or integration tests cover built-in widget rendering and
    commit behavior for text, number, checkbox, date, datetime, and unknown values.
  • Workspace Playwright coverage edits frontmatter through the file properties
    side view: add a property, use autocomplete, change a value, remove a property,
    and verify the markdown file bytes.
  • Workspace Playwright coverage edits frontmatter through the live-preview or
    rendered frontmatter block and verifies the same persistence path.
  • At least one test exercises property rename across multiple notes and confirms
    the All Properties view/counts converge after metadata updates.
  • The coverage is wired into the relevant package check scripts or existing e2e
    suites so future changes cannot skip it accidentally.

Notes

This is the testing counterpart to TASK-PLUGIN-045, TASK-PLUGIN-046, and
TASK-API-001.

Implementation Summary

The requested coverage is already in place: API tests exercise FileManager.processFrontMatter and MetadataTypeManager rename behavior, markdown widget tests cover commit behavior, and workspace Playwright coverage exercises File Properties and live-preview frontmatter editing across notes.

Add regression coverage for the frontmatter properties editor across its shared API contracts and visible app surfaces. ## Context Current coverage is uneven: - API tests cover search/property indexing and one `processFrontMatter()` cache fallback case, but not the full mutation and rename contract. - Markdown tests cover metadata parsing, frontmatter line decorations, and link completions, but not the property editor component or built-in property widgets. - Workspace/desktop smoke tests cover boot and task-frontmatter writes, but not user-driven property editing, autocomplete, add/remove, or rename flows in the file properties side view or live-preview frontmatter block. ## Acceptance Criteria - API unit tests cover `FileManager.processFrontMatter()` mutation edge cases and `MetadataTypeManager` rename/type-index behavior. - Markdown component or integration tests cover built-in widget rendering and commit behavior for text, number, checkbox, date, datetime, and unknown values. - Workspace Playwright coverage edits frontmatter through the file properties side view: add a property, use autocomplete, change a value, remove a property, and verify the markdown file bytes. - Workspace Playwright coverage edits frontmatter through the live-preview or rendered frontmatter block and verifies the same persistence path. - At least one test exercises property rename across multiple notes and confirms the All Properties view/counts converge after metadata updates. - The coverage is wired into the relevant package `check` scripts or existing e2e suites so future changes cannot skip it accidentally. ## Notes This is the testing counterpart to `TASK-PLUGIN-045`, `TASK-PLUGIN-046`, and `TASK-API-001`. ## Implementation Summary The requested coverage is already in place: API tests exercise FileManager.processFrontMatter and MetadataTypeManager rename behavior, markdown widget tests cover commit behavior, and workspace Playwright coverage exercises File Properties and live-preview frontmatter editing across notes. <!-- backlog:task_id=TASK-TEST-004 source_spec=spec/src/40-testing/current-state.md -->
steve 2026-05-22 23:25:40 +00:00
  • closed this issue
  • added
    done
    and removed
    open
    labels
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lapis-notes/lapis#67
No description provided.