logseq-matryca-parser 1.11.1__tar.gz → 1.11.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (354) hide show
  1. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/AGENTS.md +4 -1
  2. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/CHANGELOG.md +53 -0
  3. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/PKG-INFO +43 -18
  4. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/README.md +42 -17
  5. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/RELEASE_HIGHLIGHTS.md +19 -2
  6. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/claude-skill-logseq-read/SKILL.md +5 -4
  7. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/claude-skill-logseq-read/scripts/parse_logseq.py +8 -7
  8. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/CLEAN_CODE_ARCHITECTURE.md +21 -12
  9. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/GOOD_FIRST_ISSUES.md +88 -29
  10. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/README.md +7 -4
  11. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/ROADMAP_2026-2027.md +80 -7
  12. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/index.md +6 -3
  13. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/internal/LOGSEQ_ORG_PARSER_EXPERIMENTAL_STATUS.md +8 -4
  14. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/log.md +163 -2
  15. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/maintained.toml +3 -0
  16. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/CLEAN_ARCH_BACKLOG.md +26 -10
  17. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/COMPOSITE_MARKDOWN_ASSURANCE_2026-10-03.md +84 -2
  18. logseq_matryca_parser-1.11.2/docs/quality/OPEN_ISSUE_RECONCILIATION_2026-09-24.md +218 -0
  19. logseq_matryca_parser-1.11.2/docs/quality/PARSER_ASSURANCE_ACCEPTANCE_2026-10-18.md +293 -0
  20. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/README.md +7 -4
  21. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/reference/AGENT_ACTION_CONTRACT.md +4 -1
  22. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/reference/API_STABILITY.md +6 -5
  23. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/reference/FILESYSTEM_SAFETY.md +5 -3
  24. logseq_matryca_parser-1.11.2/docs/reference/PERFORMANCE_EVIDENCE.md +352 -0
  25. logseq_matryca_parser-1.11.2/docs/reference/PKM_OBSIDIAN_COMPARISON.md +290 -0
  26. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/metrics/index.json +1 -1
  27. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/metrics/quarters/2026-Q4.json +2998 -703
  28. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/pyproject.toml +1 -0
  29. logseq_matryca_parser-1.11.2/release-bundle/RELEASE_NOTES.md +52 -0
  30. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/_version.py +1 -1
  31. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/graph.py +22 -2
  32. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/adversarial.py +7 -0
  33. logseq_matryca_parser-1.11.2/tests/performance/comparison_contract.py +1264 -0
  34. logseq_matryca_parser-1.11.2/tests/performance/decision_native_binding.py +327 -0
  35. logseq_matryca_parser-1.11.2/tests/performance/decision_native_small_checks.py +185 -0
  36. logseq_matryca_parser-1.11.2/tests/performance/decision_sampling.py +219 -0
  37. logseq_matryca_parser-1.11.2/tests/performance/decision_semantics.py +453 -0
  38. logseq_matryca_parser-1.11.2/tests/performance/decision_vault.py +52 -0
  39. logseq_matryca_parser-1.11.2/tests/performance/decision_vault_scale_checks.py +83 -0
  40. logseq_matryca_parser-1.11.2/tests/performance/decision_workload.py +109 -0
  41. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_check_wheel_contract.py +1 -1
  42. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_graph_concurrency.py +57 -1
  43. logseq_matryca_parser-1.11.2/tests/test_graph_ownership_index.py +302 -0
  44. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_adversarial.py +88 -0
  45. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_deep_refresh.py +81 -4
  46. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_malformed_properties.py +48 -0
  47. logseq_matryca_parser-1.11.2/tests/test_performance_comparison_contract.py +1282 -0
  48. logseq_matryca_parser-1.11.2/tests/test_performance_decision_native_binding.py +919 -0
  49. logseq_matryca_parser-1.11.2/tests/test_performance_decision_sampling.py +639 -0
  50. logseq_matryca_parser-1.11.2/tests/test_performance_decision_semantics.py +515 -0
  51. logseq_matryca_parser-1.11.2/tests/test_performance_decision_vault.py +257 -0
  52. logseq_matryca_parser-1.11.2/tests/test_performance_decision_workload.py +310 -0
  53. logseq_matryca_parser-1.11.2/tests/test_reading_skill_install_boundary.py +99 -0
  54. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/uv.lock +13 -12
  55. logseq_matryca_parser-1.11.1/docs/quality/OPEN_ISSUE_RECONCILIATION_2026-09-24.md +0 -102
  56. logseq_matryca_parser-1.11.1/docs/reference/PERFORMANCE_EVIDENCE.md +0 -78
  57. logseq_matryca_parser-1.11.1/release-bundle/RELEASE_NOTES.md +0 -24
  58. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.cursorignore +0 -0
  59. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.cursorrules +0 -0
  60. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.gitattributes +0 -0
  61. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/CODEOWNERS +0 -0
  62. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/FUNDING.yml +0 -0
  63. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  64. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/ISSUE_TEMPLATE/clean_architecture.yml +0 -0
  65. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  66. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  67. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  68. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/clean_arch_issue_numbers.txt +0 -0
  69. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/copilot-instructions.md +0 -0
  70. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/dependabot.yml +0 -0
  71. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/dependency-license-overrides.toml +0 -0
  72. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/labels.yml +0 -0
  73. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/scripts/create_clean_arch_issues.sh +0 -0
  74. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/scripts/create_good_first_issues.sh +0 -0
  75. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/workflows/ci.yml +0 -0
  76. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/workflows/daily-metrics.yml +0 -0
  77. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/workflows/dependency-hygiene.yml +0 -0
  78. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/workflows/dependency-review.yml +0 -0
  79. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/workflows/parser-adversarial.yml +0 -0
  80. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/workflows/pypi_publish.yml +0 -0
  81. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/workflows/scorecard.yml +0 -0
  82. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.github/workflows/workflow-analysis.yml +0 -0
  83. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.gitignore +0 -0
  84. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.pre-commit-config.yaml +0 -0
  85. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/.repomixignore +0 -0
  86. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/CITATION.cff +0 -0
  87. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/CLAUDE.md +0 -0
  88. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/CODE_OF_CONDUCT.md +0 -0
  89. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/CONTRIBUTING.md +0 -0
  90. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/GOVERNANCE.md +0 -0
  91. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/LICENSE +0 -0
  92. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/MAINTAINERS.md +0 -0
  93. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/Makefile +0 -0
  94. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/NOTICE +0 -0
  95. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/SECURITY.md +0 -0
  96. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/SUPPORT.md +0 -0
  97. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/AAIF_ALIGNMENT.md +0 -0
  98. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/AI_CONTRIBUTION_POLICY.md +0 -0
  99. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/ARCHITECTURE.md +0 -0
  100. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/BUG_HUNT_REPORT.md +0 -0
  101. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/CI_ASSURANCE.md +0 -0
  102. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/CODEQL.md +0 -0
  103. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/COOKBOOK.md +0 -0
  104. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/DOCUMENTATION_SYSTEM.md +0 -0
  105. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/ISSUE_TRIAGE_POLICY.md +0 -0
  106. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/LSDOC_REFERENCE_STUDY_AND_EXECUTION_PLAN_2026-08-16.md +0 -0
  107. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/README_READABILITY_REPORT_2026-08-08.md +0 -0
  108. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/RELEASE_PROCESS.md +0 -0
  109. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/REPOSITORY_GOVERNANCE_AAIF_STUDY_2026-08-19.md +0 -0
  110. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/REPOSITORY_IMPROVEMENT_STUDY_2026-07-28.md +0 -0
  111. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/REPOSITORY_STELLAR_ROADMAP_2026-08-06.md +0 -0
  112. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/decisions/ADR-0001-PROTOCOL_ADAPTER_BOUNDARY.md +0 -0
  113. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/decisions/ADR-0002-OFFICIAL-OKF-V02-MIGRATION-GATE.md +0 -0
  114. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/decisions/ADR-0003-AAIF-SUBMISSION-GATE.md +0 -0
  115. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/decisions/ADR-0004-PARSER-PLUMBER-BOUNDARY.md +0 -0
  116. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/decisions/ADR-001-external-oracle-boundary.md +0 -0
  117. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/decisions/ADR-002-local-graph-assurance-boundary.md +0 -0
  118. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/decisions/index.md +0 -0
  119. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/design-docs/ARCHITECTURE_BLUEPRINT.md +0 -0
  120. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/design-docs/CODE_SCAFFOLD.md +0 -0
  121. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/design-docs/LOGSEQ_ASSET_RESOLUTION_SPEC.md +0 -0
  122. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/design-docs/LOGSEQ_DATASCRIPT_MAPPING.md +0 -0
  123. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/design-docs/LOGSEQ_TEMPORAL_ONTOLOGY.md +0 -0
  124. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/design-docs/OFFICIAL_MLDOC_SPECS.md +0 -0
  125. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/design-docs/README.md +0 -0
  126. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/design-docs/REFERENCE_SPEC.md +0 -0
  127. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/error_log.md +0 -0
  128. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/goals/LSDOC_PARSER_ASSURANCE_GOAL.md +0 -0
  129. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/internal/ASSURANCE_TERRA_HANDOFF_2026-08-21.md +0 -0
  130. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/internal/LLAMAINDEX_COMPANION_MIGRATION_CHECKPOINT_2026-09-27.md +0 -0
  131. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/internal/LOCAL_CODE_STUDY.md +0 -0
  132. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/internal/M1A_CORRECTIVE_HARDENING_RESTART_HANDOFF_2026-08-16.md +0 -0
  133. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/internal/M5_LOCAL_GRAPH_ASSURANCE_REVIEW_HANDOFF_2026-08-18.md +0 -0
  134. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/internal/POST_V1_8_1_BACKLOG_EXECUTION_2026-08-25.md +0 -0
  135. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/internal/STATIC_ANALYSIS_POLICY.md +0 -0
  136. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/logseq_ast_primer.md +0 -0
  137. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/GITHUB_CLEAN_ARCH_ROADMAP.md +0 -0
  138. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/GRAPH_PROPERTY_ASSURANCE_2026-10-03.md +0 -0
  139. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/ISSUE_RECONCILIATION_2026-08-06.md +0 -0
  140. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/ISSUE_TRIAGE_2026-07.md +0 -0
  141. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/LOGSEQ_MARKDOWN_DATASET_CANDIDATES_2026-10-10.md +0 -0
  142. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/OFFICIAL_LOGSEQ_MARKDOWN_COMPATIBILITY_2026-10-10.md +0 -0
  143. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/quality/official_logseq_corpus_2026-10-10.json +0 -0
  144. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/reference/CONFORMANCE_SUPPORT_MATRIX.md +0 -0
  145. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/reference/DEPENDENCY_LICENSE_POLICY.md +0 -0
  146. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/reference/DIAGNOSTICS.md +0 -0
  147. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/reference/LOCAL_GRAPH_ASSURANCE.md +0 -0
  148. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/reference/index.md +0 -0
  149. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/rfc/OLLAMA_RAG.md +0 -0
  150. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/rfc/SOURCE_LOCATION_RFC.md +0 -0
  151. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_AGENT_NATIVE_XRAY.md +0 -0
  152. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_CLI_HYDRATION_AND_ENRICHMENT.md +0 -0
  153. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_CONTEXT_SYNTHESIS_AND_SCOPING.md +0 -0
  154. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_EMBED_EXPANSION_AND_FLUENT_QUERIES.md +0 -0
  155. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_GRAPH_RAG_SEMANTICS.md +0 -0
  156. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_HEADLESS_WRITER.md +0 -0
  157. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_INCREMENTAL_WATCHER.md +0 -0
  158. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_INLINE_SHIELD_AND_NAMESPACES.md +0 -0
  159. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_OBSIDIAN_ADAPTER.md +0 -0
  160. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_ROBUSTNESS_AND_SOFT_BREAKS.md +0 -0
  161. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_TOML_FIX_AND_PYPI_DISTRIBUTION.md +0 -0
  162. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/roadmaps/ROADMAP_UUID_AND_GRAPH_SUPERPOWERS.md +0 -0
  163. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/security/DAILY_METRICS_THREAT_MODEL.md +0 -0
  164. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/security/DEPENDENCY_ADVISORY_EXCEPTIONS.md +0 -0
  165. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-08-20-parser-lexical-state.md +0 -0
  166. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-08-20-runtime-evidence-harness.md +0 -0
  167. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-08-21-graph-mutation-coherence.md +0 -0
  168. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-08-21-post-m9-reconciliation.md +0 -0
  169. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-08-24-local-assurance-coverage.md +0 -0
  170. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-08-30-native-github-actions.md +0 -0
  171. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-08-30-v1.8.2-repository-completion.md +0 -0
  172. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-09-24-open-pr-reconciliation-and-vendor-gate.md +0 -0
  173. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-09-26-hypothesis-parser-properties.md +0 -0
  174. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-09-27-llamaindex-companion-separation.md +0 -0
  175. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-09-29-logseq-org-parser.md +0 -0
  176. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-10-03-hypothesis-malformed-markdown.md +0 -0
  177. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/plans/2026-10-03-scalar-metadata-serialization.md +0 -0
  178. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/receipts/2026-08-30-v1.8.2-backlog-reconciliation.md +0 -0
  179. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/receipts/2026-08-30-v1.8.2-baseline.md +0 -0
  180. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/receipts/2026-08-30-v1.8.2-final-audit.md +0 -0
  181. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/receipts/2026-08-30-v1.8.2-publication.md +0 -0
  182. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/receipts/2026-08-30-v1.8.2-qualification.md +0 -0
  183. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/specs/2026-08-20-parser-lexical-state-design.md +0 -0
  184. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/specs/2026-08-21-graph-mutation-coherence-design.md +0 -0
  185. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/specs/2026-08-24-meaningful-test-coverage-design.md +0 -0
  186. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/specs/2026-08-30-native-github-actions-design.md +0 -0
  187. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/specs/2026-08-30-v1.8.2-repository-completion-design.md +0 -0
  188. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/specs/2026-09-24-open-pr-quality-gates.md +0 -0
  189. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/specs/2026-09-27-llamaindex-companion-separation-design.md +0 -0
  190. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/docs/superpowers/specs/2026-09-29-logseq-org-parser-design.md +0 -0
  191. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/examples/demo_logseq_journal.md +0 -0
  192. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/examples/run_demo.py +0 -0
  193. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/examples/run_synapse_rag.py +0 -0
  194. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/legacy/local_digestor.py +0 -0
  195. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/lib/bindings/utils.js +0 -0
  196. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/lib/tom-select/tom-select.complete.min.js +0 -0
  197. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/lib/tom-select/tom-select.css +0 -0
  198. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/lib/vis-9.1.2/vis-network.css +0 -0
  199. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/lib/vis-9.1.2/vis-network.min.js +0 -0
  200. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/llms.txt +0 -0
  201. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/metrics/quarters/2026-Q2.json +0 -0
  202. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/metrics/quarters/2026-Q3.json +0 -0
  203. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/repomix-output-parser.xml +0 -0
  204. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/__init__.py +0 -0
  205. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/archive_repository_metrics.py +0 -0
  206. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/check_documentation.py +0 -0
  207. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/check_release_contract.py +0 -0
  208. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/check_vendor_free_docs.py +0 -0
  209. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/check_vendor_free_docs.sh +0 -0
  210. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/check_wheel_contract.py +0 -0
  211. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/debug_pre_release.py +0 -0
  212. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/extract_changelog.py +0 -0
  213. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/generate_supply_chain_evidence.py +0 -0
  214. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/scripts/update_compat_snapshots.py +0 -0
  215. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/.gitignore +0 -0
  216. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/NOTICE +0 -0
  217. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/__init__.py +0 -0
  218. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/__main__.py +0 -0
  219. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/_lexical_state.py +0 -0
  220. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/_org_parser.py +0 -0
  221. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/_org_source.py +0 -0
  222. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/_org_source_contract.py +0 -0
  223. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/_org_source_posix.py +0 -0
  224. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/_org_source_windows.py +0 -0
  225. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/agent_press.py +0 -0
  226. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/agent_writer.py +0 -0
  227. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/diagnostics.py +0 -0
  228. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/exceptions.py +0 -0
  229. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/forge.py +0 -0
  230. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/kinetic.py +0 -0
  231. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/kinetic_commands.py +0 -0
  232. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/kinetic_export.py +0 -0
  233. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/lens.py +0 -0
  234. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/local_graph_assurance.py +0 -0
  235. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/logos_core.py +0 -0
  236. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/logos_parser.py +0 -0
  237. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/logseq_markdown.py +0 -0
  238. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/logseq_paths.py +0 -0
  239. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/py.typed +0 -0
  240. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/pyproject.toml +0 -0
  241. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/synapse.py +0 -0
  242. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/src/logseq_matryca_parser/synapse_embed.py +0 -0
  243. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/__init__.py +0 -0
  244. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/deep-refresh-regression.md +0 -0
  245. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/hierarchy-identity.md +0 -0
  246. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/manifest.json +0 -0
  247. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/pages/nested-title-entrypoint.md +0 -0
  248. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/properties-and-links.md +0 -0
  249. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/snapshots/m1a-deep-refresh.exact.json +0 -0
  250. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/snapshots/m1a-hierarchy-identity.exact.json +0 -0
  251. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/snapshots/m1a-nested-entrypoint.exact.json +0 -0
  252. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/snapshots/m1a-properties-links-assets.exact.json +0 -0
  253. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/snapshots/m1a-softbreak-logbook.exact.json +0 -0
  254. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/snapshots/m1a-task-timing.exact.json +0 -0
  255. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/soft-breaks-properties-logbook.md +0 -0
  256. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/compat/v1/tasks-priority-time.md +0 -0
  257. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/org/boundary-lines.org +0 -0
  258. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/org/inert-content.org +0 -0
  259. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/org/malformed-drawer.org +0 -0
  260. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/org/outline-workflow.org +0 -0
  261. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/org/properties-references.org +0 -0
  262. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/fixtures/org/schedule-and-clock.org +0 -0
  263. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/__init__.py +0 -0
  264. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/exact_v1/boundary-lines.json +0 -0
  265. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/exact_v1/inert-content.json +0 -0
  266. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/exact_v1/malformed-drawer.json +0 -0
  267. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/exact_v1/outline-workflow.json +0 -0
  268. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/exact_v1/properties-references.json +0 -0
  269. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/exact_v1/schedule-and-clock.json +0 -0
  270. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/logseq_org_semantic_v1/boundary-lines.json +0 -0
  271. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/logseq_org_semantic_v1/inert-content.json +0 -0
  272. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/logseq_org_semantic_v1/malformed-drawer.json +0 -0
  273. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/logseq_org_semantic_v1/outline-workflow.json +0 -0
  274. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/logseq_org_semantic_v1/properties-references.json +0 -0
  275. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/logseq_org_semantic_v1/schedule-and-clock.json +0 -0
  276. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/manifest.json +0 -0
  277. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/org_assurance/manifest.py +0 -0
  278. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/__init__.py +0 -0
  279. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/composite_properties.py +0 -0
  280. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/corpus.py +0 -0
  281. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/graph_lifecycle.py +0 -0
  282. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/invariants.py +0 -0
  283. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/lexical_mutation.py +0 -0
  284. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/malformed_properties.py +0 -0
  285. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/projection.py +0 -0
  286. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/randomized_shielding.py +0 -0
  287. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/semantic_anchors.py +0 -0
  288. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/serialization_integrity.py +0 -0
  289. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/parser_assurance/work_growth.py +0 -0
  290. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/performance/__init__.py +0 -0
  291. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/performance/runtime_evidence.py +0 -0
  292. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/performance/synthetic_vault.py +0 -0
  293. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_agent_press.py +0 -0
  294. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_agent_writer.py +0 -0
  295. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_archive_repository_metrics.py +0 -0
  296. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_canvas_fence_regression.py +0 -0
  297. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_check_documentation.py +0 -0
  298. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_check_release_contract.py +0 -0
  299. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_check_vendor_free_docs.py +0 -0
  300. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_compat_corpus.py +0 -0
  301. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_demo_example.py +0 -0
  302. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_dependency_advisory_exception.py +0 -0
  303. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_dependency_boundary.py +0 -0
  304. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_diagnostics.py +0 -0
  305. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_exceptions.py +0 -0
  306. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_extract_changelog.py +0 -0
  307. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_forge.py +0 -0
  308. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_generate_supply_chain_evidence.py +0 -0
  309. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_graph.py +0 -0
  310. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_graph_collisions.py +0 -0
  311. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_graph_lifecycle_properties.py +0 -0
  312. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_graph_properties.py +0 -0
  313. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_kinetic.py +0 -0
  314. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_layer_boundary.py +0 -0
  315. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_lens.py +0 -0
  316. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_llms_txt_contract.py +0 -0
  317. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_local_graph_assurance.py +0 -0
  318. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_logos_parser.py +0 -0
  319. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_logseq_markdown.py +0 -0
  320. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_logseq_paths.py +0 -0
  321. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_module_entrypoint.py +0 -0
  322. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_optional_import_boundary.py +0 -0
  323. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_org_assurance.py +0 -0
  324. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_org_parser.py +0 -0
  325. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_org_source_imports.py +0 -0
  326. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_org_source_posix.py +0 -0
  327. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_org_source_windows.py +0 -0
  328. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_package_version.py +0 -0
  329. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_composite_properties.py +0 -0
  330. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_deep_mixed_markdown_properties.py +0 -0
  331. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_final_newline_properties.py +0 -0
  332. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_lexical_mutation_properties.py +0 -0
  333. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_lexical_state.py +0 -0
  334. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_metadata_only.py +0 -0
  335. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_mixed_markdown_properties.py +0 -0
  336. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_properties.py +0 -0
  337. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_reuse_properties.py +0 -0
  338. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_semantic_anchors.py +0 -0
  339. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_shielding_properties.py +0 -0
  340. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_parser_work_growth.py +0 -0
  341. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_performance_evidence_docs.py +0 -0
  342. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_performance_synthetic_vault.py +0 -0
  343. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_plumber_boundary_docs.py +0 -0
  344. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_pre_release_roundtrip.py +0 -0
  345. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_public_api_contract.py +0 -0
  346. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_quality_gate_contract.py +0 -0
  347. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_runtime_evidence.py +0 -0
  348. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_serialization_integrity_properties.py +0 -0
  349. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_snapshot_graph.py +0 -0
  350. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_synapse.py +0 -0
  351. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_synapse_example.py +0 -0
  352. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/test_writer_security.py +0 -0
  353. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/tests/typing_samples/public_api.py +0 -0
  354. {logseq_matryca_parser-1.11.1 → logseq_matryca_parser-1.11.2}/zizmor.yml +0 -0
@@ -61,7 +61,10 @@ filesystem scope, repository scope, network authority, or release decision.
61
61
 
62
62
  - Read, parse, scan, export, and dry-run operations may proceed only within the
63
63
  documented path and vault-containment rules.
64
- - Writes are opt-in, confined, and require explicit caller or human authority.
64
+ - Bounded Markdown writes are opt-in and require explicit caller or human authority.
65
+ - An X-Ray read also writes an alias-state file; use it only with trusted vaults
66
+ until that state-write boundary is corrected. It is not covered by the
67
+ Markdown writer's containment or atomic-replacement guarantees.
65
68
  - Repository changes require a reviewable diff and the documented validation
66
69
  gate; releases and external publication require an explicit maintainer gate.
67
70
  - Record source path, source revision when available, action, applied/proposed
@@ -7,6 +7,59 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [1.11.2] - 2026-10-26
11
+
12
+ ### Fixed
13
+
14
+ - **Graph ownership enumeration** — resolve distinct published pages and node
15
+ source paths once per attached-node read instead of rescanning every page
16
+ for every block. Preserve aliases, collision filtering, node order and
17
+ coordinated graph snapshots without retaining a cross-operation cache.
18
+
19
+ ### Added
20
+
21
+ - **Focused refresh-depth matrix** — exercise soft-break, block-property,
22
+ fenced-code, query and list-property refresh at depths 1, 2, 3, 4, 8 and 32.
23
+ Extend the existing round-trip families by 20 combinations without changing
24
+ production code, identity policy or limits; this is not exhaustive coverage.
25
+
26
+ ### Documentation
27
+
28
+ - Consolidate the [current assurance delivery](docs/quality/COMPOSITE_MARKDOWN_ASSURANCE_2026-10-03.md#current-delivery-and-release-status),
29
+ [#104 acceptance package](docs/quality/PARSER_ASSURANCE_ACCEPTANCE_2026-10-18.md),
30
+ architecture residuals and dated contributor catalog. Record approval of
31
+ #234's permanent regressions without duplicating a formal corpus fixture;
32
+ preserve release history and separate qualification and issue-closure gates.
33
+ - Add Obsidian to the README PKM comparison and link one source-backed
34
+ [comparison study](docs/reference/PKM_OBSIDIAN_COMPARISON.md). Distinguish
35
+ applications from the parser library, native features from community plugins,
36
+ and compatible output from lossless cross-app support; replace absolute Git,
37
+ sovereignty and ordinal AI-readiness claims with concrete capabilities.
38
+
39
+ ### Security
40
+
41
+ - **Development-toolchain updates** — refresh locked `virtualenv` and `filelock`
42
+ versions in the `pre-commit` development dependency chain (#266). These
43
+ packages are not part of the base or optional-extra dependency closures.
44
+ - **Locked optional extras** — refresh `packaging` and `certifi` in the locked
45
+ `ai`/`all` extras closure (#266, #259). The lock supports project audits and
46
+ release evidence; it does not constrain versions installed by downstream users.
47
+ - **Reading-skill dependency setup** — the bundled reading-skill helper no
48
+ longer installs Parser from the repository's unpinned default branch when it
49
+ is missing. It stops and prints manual PyPI installation guidance instead.
50
+ Earlier source distributions and copied repository skills retain the old
51
+ behavior; update any copied skill separately.
52
+
53
+ ### Known issues
54
+
55
+ - **Snapshot graph paths** — some checks and graph reads resolve logical paths
56
+ against host filesystem metadata. Symlinks can affect ordering or results;
57
+ see the [API stability contract](docs/reference/API_STABILITY.md).
58
+ - **X-Ray read state** — `matryca-parse agent-read` writes
59
+ `.matryca_xray_state.json` under the selected graph path. Until the state-write
60
+ boundary is corrected, use X-Ray only with trusted vaults. The state write is
61
+ not covered by the Markdown writer's guarantees.
62
+
10
63
  ## [1.11.1] - 2026-10-20
11
64
 
12
65
  ### Fixed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: logseq-matryca-parser
3
- Version: 1.11.1
3
+ Version: 1.11.2
4
4
  Summary: The Logos Protocol: Deterministic Logseq AST parsing for Matryca.ai.
5
5
  Project-URL: Homepage, https://github.com/MarcoPorcellato/logseq-matryca-parser
6
6
  Project-URL: Repository, https://github.com/MarcoPorcellato/logseq-matryca-parser
@@ -112,10 +112,17 @@ evidence; they are not included in the current results.
112
112
 
113
113
  ## 🌐 The Vision: Virtual Centralization vs. Binary Lock-in
114
114
 
115
- The PKM (Personal Knowledge Management) world is currently forcing users to make a painful choice between **Data Longevity** and **AI Power**.
116
-
117
- * **Vanilla Logseq / Obsidian** is a "Forest" of decentralized Markdown files. It guarantees the Lindy effect (plain-text lasts forever) and perfect Git versioning, but standard AI chunkers treat it like a blender, destroying the outliner hierarchy.
118
- * **Tana** is a centralized "Tree". It offers incredible semantic power, but traps your brain in a proprietary cloud database.
115
+ PKM (Personal Knowledge Management) tools differ in where knowledge lives,
116
+ how it is structured, and how other tools can use it. Local files and rich
117
+ structure are not mutually exclusive.
118
+
119
+ * **Logseq OG file graphs and Obsidian** keep Markdown notes locally but use
120
+ different block, property and reference conventions. Obsidian also provides
121
+ a note-link graph, structured properties, Search and Bases; it is not simply
122
+ a folder without structure.
123
+ * **Tana Outliner** provides linked nodes, fields and supertags in a hosted
124
+ workspace, with documented Markdown and JSON exports. Export availability
125
+ and fidelity should be evaluated separately from the working storage model.
119
126
  * **The new Logseq DB (SQLite)** uses a local database and provides official
120
127
  export paths. Its primary working state is not line-diffable Markdown,
121
128
  however, and the semantic fidelity of exported Markdown remains a separate
@@ -142,13 +149,23 @@ does not claim that the separate NLTK advisory is fixed for other consumers.
142
149
 
143
150
  ## ⚖️ The PKM Landscape
144
151
 
145
- | Feature | Vanilla Markdown | **Matryca Parser** | Logseq DB (SQLite) | Tana |
146
- | :--- | :--- | :--- | :--- | :--- |
147
- | **Data Format** | Plain-text (.md) | **Plain-text (.md)** | Local SQLite database with official exports | Proprietary Cloud |
148
- | **Version Control** | Perfect (Git) | **Perfect (Git)** | Database backup/export; no native line-by-line graph diff | None |
149
- | **Data Structure** | Decentralized Forest | **Virtually Centralized Graph** | Relational Database | Centralized Tree |
150
- | **AI Readiness** | Low (Linear Chunks) | **High (Topological AST)** | DB-native; external semantic mapping remains tool-specific | High (Proprietary) |
151
- | **Sovereignty** | 100% Local | **100% Local (Sovereign AI)** | Local database plus official export paths | Cloud-Only |
152
+ This compares workflows, not product rankings: Markdown is a format;
153
+ Obsidian, Logseq DB and Tana are applications; **Matryca Parser is a Python
154
+ library for Logseq Markdown**, not a replacement editor or sync service.
155
+
156
+ | Dimension | Vanilla Markdown | Obsidian | **Matryca Parser** | Logseq DB | Tana Outliner |
157
+ | :--- | :--- | :--- | :--- | :--- | :--- |
158
+ | **Working data** | Plain-text `.md` files | Local Markdown vault; optional cloud services | **Logseq Markdown source; derived in-memory AST/graph** | DB graph; local SQLite on desktop | Hosted workspace; documented exports |
159
+ | **Structure and links** | Headings, lists and link conventions | Note-link graph; headings/lists; optional `^block-id` anchors | **Typed block hierarchy, UUIDs, parent/left/path relations** | Linked nodes, properties and tags | Outline and node references |
160
+ | **Metadata and queries** | Depend on chosen tools | YAML properties; native Search and Bases | **Page/block properties, reference resolution, graph queries** | Typed properties and DB queries | Fields, supertags and search nodes |
161
+ | **Automation** | External scripts/tools | TypeScript plugins; CLI requires app; Headless services beta | **Python API and CLI without a note-taking app** | Official CLI and scripting | Product-specific commands and integrations |
162
+ | **History and control** | Git/backup configured separately | Local recovery; external Git; optional Sync history | Local source files; no built-in Git/sync or model-locality guarantee | Database backups and export snapshots | Hosted state and export snapshots |
163
+ | **Portability limits** | Syntax/rendering varies by tool | Extensions, Bases and Canvas need compatible tooling | Obsidian-compatible output; no lossless cross-app round trip promised | SQLite/EDN; Markdown export omits data | Markdown/JSON; Markdown ZIP excludes media |
164
+
165
+ [Full Obsidian comparison and official sources](docs/reference/PKM_OBSIDIAN_COMPARISON.md)
166
+ explain block identity, native versus community features, current CLI/Headless
167
+ scope and export limits. Obsidian-compatible export does **not** establish a
168
+ native Obsidian-vault input contract.
152
169
 
153
170
  ---
154
171
 
@@ -210,6 +227,10 @@ Logseq Matryca Parser is a deterministic **Stack-Machine engine** that acts as t
210
227
  | **Export and integrate — SYNAPSE, FORGE, LENS** | Lineage-aware LangChain exports and context-enriched chunks; LlamaIndex nodes through a separate companion; JSON and Markdown serialization, Obsidian vault generation, and interactive graph visualization. |
211
228
  | **Automate safely — KINETIC and agent tools** | CLI parse, scan, export, and visualization; token-efficient X-Ray reads; append-only logging; bounded AST writes; vault containment, dry-run patches, and atomic replacement. |
212
229
 
230
+ `agent-read` also writes `.matryca_xray_state.json` under the selected graph
231
+ path. Until its state-write boundary is corrected, use X-Ray only with trusted
232
+ vaults; this state write is not covered by the Markdown writer's guarantees.
233
+
213
234
  The v1.11.0 release line also contains an **experimental, read-only Org
214
235
  reader** behind a private, non-stable API. It reads Org text or one selected
215
236
  `.org` file; it does not load a vault graph or claim complete GNU Org or
@@ -297,7 +318,7 @@ graph = LogseqGraph.load_directory("/path/to/logseq/graph")
297
318
  page_obj = graph.get_page("My Page") # case-insensitive
298
319
  effective = graph.get_effective_properties(page_obj.root_nodes[0].uuid)
299
320
 
300
- # Build the same in-memory indexes from caller-captured Markdown without filesystem access.
321
+ # Build in-memory indexes from captured Markdown; some reads resolve host paths.
301
322
  from logseq_matryca_parser import SnapshotPage
302
323
 
303
324
  snapshot_graph = LogseqGraph.from_snapshot_pages(
@@ -362,13 +383,14 @@ We welcome issues, pull requests, and constructive feedback.
362
383
 
363
384
  | Resource | Link |
364
385
  | :--- | :--- |
365
- | **Good first issues** | [docs/GOOD_FIRST_ISSUES.md](docs/GOOD_FIRST_ISSUES.md) — starter tasks ([#19](https://github.com/MarcoPorcellato/logseq-matryca-parser/issues/19)–[#52](https://github.com/MarcoPorcellato/logseq-matryca-parser/issues/52)) |
386
+ | **Good first issues** | [Recommended starter pack](docs/GOOD_FIRST_ISSUES.md#recommended-starter-pack) — dated Wave 5/6 selection and preserved earlier IDs; recheck GitHub before claiming |
366
387
  | **Contributing** | [CONTRIBUTING.md](CONTRIBUTING.md) — setup, tests, PR workflow |
367
388
  | **Cookbook** | [docs/COOKBOOK.md](docs/COOKBOOK.md) — integration recipes (Synapse, graph query, watcher) |
368
389
  | **Documentation index** | [docs/README.md](docs/README.md) — active vs historical docs |
369
390
  | **Documentation system** | [docs/DOCUMENTATION_SYSTEM.md](docs/DOCUMENTATION_SYSTEM.md) — authority, lifecycle, metadata, and federation |
370
391
  | **Roadmap** | [docs/ROADMAP_2026-2027.md](docs/ROADMAP_2026-2027.md) — milestones, dependencies, and evidence gates |
371
392
  | **Markdown compatibility evidence** | [Official Logseq corpus report](docs/quality/OFFICIAL_LOGSEQ_MARKDOWN_COMPATIBILITY_2026-10-10.md) — all 313 selected official documents passed raw-content and tree checks; semantic coverage and limits are explained |
393
+ | **Generated assurance and acceptance** | [Current delivery](docs/quality/COMPOSITE_MARKDOWN_ASSURANCE_2026-10-03.md#current-delivery-and-release-status) and [#104 acceptance package](docs/quality/PARSER_ASSURANCE_ACCEPTANCE_2026-10-18.md) — bounded checks, selected depth coverage and explicit acceptance gates |
372
394
  | **Support** | [SUPPORT.md](SUPPORT.md) — safe issue routing, support scope, and response boundaries |
373
395
  | **Governance** | [GOVERNANCE.md](GOVERNANCE.md) — decisions, maintainer path, and conflict handling |
374
396
  | **Agent safety** | [docs/reference/AGENT_ACTION_CONTRACT.md](docs/reference/AGENT_ACTION_CONTRACT.md) — authority, approvals, provenance, and prompt-injection boundary |
@@ -377,18 +399,21 @@ We welcome issues, pull requests, and constructive feedback.
377
399
 
378
400
  ## 📦 Release history
379
401
 
380
- Current source version: **v1.11.1**. The [PyPI project page](https://pypi.org/project/logseq-matryca-parser/) and
402
+ Current source version: **v1.11.2**. The [PyPI project page](https://pypi.org/project/logseq-matryca-parser/) and
381
403
  [GitHub Releases](https://github.com/MarcoPorcellato/logseq-matryca-parser/releases) list available distributions.
382
404
  Security support follows the [latest-release policy](SECURITY.md).
383
405
 
384
- The v1.11.1 source includes fenced-code parsing fixes for outline items, eligible
385
- multiline scalar-metadata round trips, and bounded composite Markdown assurance.
386
- See the [changelog](CHANGELOG.md) for scope and limits.
406
+ The v1.11.2 source removes repeated page scans from attached-node graph reads
407
+ while preserving aliases, collision filtering and node order. It also adds a
408
+ focused refresh-depth test matrix and consolidates assurance documentation.
409
+ This does not establish end-to-end Plumber dashboard performance or cancellation.
410
+ See the [changelog](CHANGELOG.md) for scope, limits and known issues.
387
411
 
388
412
  Read the complete [release highlights](RELEASE_HIGHLIGHTS.md), the exhaustive
389
413
  [changelog](CHANGELOG.md), or the signed artifacts on
390
414
  [GitHub Releases](https://github.com/MarcoPorcellato/logseq-matryca-parser/releases).
391
415
 
416
+ - **v1.11.2** — Bounds graph ownership-resolution work per read, extends focused refresh-depth tests, and consolidates assurance and PKM comparison documentation.
392
417
  - **v1.11.1** — Fixes fenced-code parsing in outline items, preserves eligible multiline scalar-metadata round trips, and adds bounded composite Markdown assurance.
393
418
  - **v1.11.0** — Adds an experimental, read-only Logseq Org reader with source retention and explicit support limits.
394
419
  - **v1.10.0** — Clarifies the LlamaIndex companion boundary and removes the Parser's NLTK dependency chain.
@@ -73,10 +73,17 @@ evidence; they are not included in the current results.
73
73
 
74
74
  ## 🌐 The Vision: Virtual Centralization vs. Binary Lock-in
75
75
 
76
- The PKM (Personal Knowledge Management) world is currently forcing users to make a painful choice between **Data Longevity** and **AI Power**.
77
-
78
- * **Vanilla Logseq / Obsidian** is a "Forest" of decentralized Markdown files. It guarantees the Lindy effect (plain-text lasts forever) and perfect Git versioning, but standard AI chunkers treat it like a blender, destroying the outliner hierarchy.
79
- * **Tana** is a centralized "Tree". It offers incredible semantic power, but traps your brain in a proprietary cloud database.
76
+ PKM (Personal Knowledge Management) tools differ in where knowledge lives,
77
+ how it is structured, and how other tools can use it. Local files and rich
78
+ structure are not mutually exclusive.
79
+
80
+ * **Logseq OG file graphs and Obsidian** keep Markdown notes locally but use
81
+ different block, property and reference conventions. Obsidian also provides
82
+ a note-link graph, structured properties, Search and Bases; it is not simply
83
+ a folder without structure.
84
+ * **Tana Outliner** provides linked nodes, fields and supertags in a hosted
85
+ workspace, with documented Markdown and JSON exports. Export availability
86
+ and fidelity should be evaluated separately from the working storage model.
80
87
  * **The new Logseq DB (SQLite)** uses a local database and provides official
81
88
  export paths. Its primary working state is not line-diffable Markdown,
82
89
  however, and the semantic fidelity of exported Markdown remains a separate
@@ -103,13 +110,23 @@ does not claim that the separate NLTK advisory is fixed for other consumers.
103
110
 
104
111
  ## ⚖️ The PKM Landscape
105
112
 
106
- | Feature | Vanilla Markdown | **Matryca Parser** | Logseq DB (SQLite) | Tana |
107
- | :--- | :--- | :--- | :--- | :--- |
108
- | **Data Format** | Plain-text (.md) | **Plain-text (.md)** | Local SQLite database with official exports | Proprietary Cloud |
109
- | **Version Control** | Perfect (Git) | **Perfect (Git)** | Database backup/export; no native line-by-line graph diff | None |
110
- | **Data Structure** | Decentralized Forest | **Virtually Centralized Graph** | Relational Database | Centralized Tree |
111
- | **AI Readiness** | Low (Linear Chunks) | **High (Topological AST)** | DB-native; external semantic mapping remains tool-specific | High (Proprietary) |
112
- | **Sovereignty** | 100% Local | **100% Local (Sovereign AI)** | Local database plus official export paths | Cloud-Only |
113
+ This compares workflows, not product rankings: Markdown is a format;
114
+ Obsidian, Logseq DB and Tana are applications; **Matryca Parser is a Python
115
+ library for Logseq Markdown**, not a replacement editor or sync service.
116
+
117
+ | Dimension | Vanilla Markdown | Obsidian | **Matryca Parser** | Logseq DB | Tana Outliner |
118
+ | :--- | :--- | :--- | :--- | :--- | :--- |
119
+ | **Working data** | Plain-text `.md` files | Local Markdown vault; optional cloud services | **Logseq Markdown source; derived in-memory AST/graph** | DB graph; local SQLite on desktop | Hosted workspace; documented exports |
120
+ | **Structure and links** | Headings, lists and link conventions | Note-link graph; headings/lists; optional `^block-id` anchors | **Typed block hierarchy, UUIDs, parent/left/path relations** | Linked nodes, properties and tags | Outline and node references |
121
+ | **Metadata and queries** | Depend on chosen tools | YAML properties; native Search and Bases | **Page/block properties, reference resolution, graph queries** | Typed properties and DB queries | Fields, supertags and search nodes |
122
+ | **Automation** | External scripts/tools | TypeScript plugins; CLI requires app; Headless services beta | **Python API and CLI without a note-taking app** | Official CLI and scripting | Product-specific commands and integrations |
123
+ | **History and control** | Git/backup configured separately | Local recovery; external Git; optional Sync history | Local source files; no built-in Git/sync or model-locality guarantee | Database backups and export snapshots | Hosted state and export snapshots |
124
+ | **Portability limits** | Syntax/rendering varies by tool | Extensions, Bases and Canvas need compatible tooling | Obsidian-compatible output; no lossless cross-app round trip promised | SQLite/EDN; Markdown export omits data | Markdown/JSON; Markdown ZIP excludes media |
125
+
126
+ [Full Obsidian comparison and official sources](docs/reference/PKM_OBSIDIAN_COMPARISON.md)
127
+ explain block identity, native versus community features, current CLI/Headless
128
+ scope and export limits. Obsidian-compatible export does **not** establish a
129
+ native Obsidian-vault input contract.
113
130
 
114
131
  ---
115
132
 
@@ -171,6 +188,10 @@ Logseq Matryca Parser is a deterministic **Stack-Machine engine** that acts as t
171
188
  | **Export and integrate — SYNAPSE, FORGE, LENS** | Lineage-aware LangChain exports and context-enriched chunks; LlamaIndex nodes through a separate companion; JSON and Markdown serialization, Obsidian vault generation, and interactive graph visualization. |
172
189
  | **Automate safely — KINETIC and agent tools** | CLI parse, scan, export, and visualization; token-efficient X-Ray reads; append-only logging; bounded AST writes; vault containment, dry-run patches, and atomic replacement. |
173
190
 
191
+ `agent-read` also writes `.matryca_xray_state.json` under the selected graph
192
+ path. Until its state-write boundary is corrected, use X-Ray only with trusted
193
+ vaults; this state write is not covered by the Markdown writer's guarantees.
194
+
174
195
  The v1.11.0 release line also contains an **experimental, read-only Org
175
196
  reader** behind a private, non-stable API. It reads Org text or one selected
176
197
  `.org` file; it does not load a vault graph or claim complete GNU Org or
@@ -258,7 +279,7 @@ graph = LogseqGraph.load_directory("/path/to/logseq/graph")
258
279
  page_obj = graph.get_page("My Page") # case-insensitive
259
280
  effective = graph.get_effective_properties(page_obj.root_nodes[0].uuid)
260
281
 
261
- # Build the same in-memory indexes from caller-captured Markdown without filesystem access.
282
+ # Build in-memory indexes from captured Markdown; some reads resolve host paths.
262
283
  from logseq_matryca_parser import SnapshotPage
263
284
 
264
285
  snapshot_graph = LogseqGraph.from_snapshot_pages(
@@ -323,13 +344,14 @@ We welcome issues, pull requests, and constructive feedback.
323
344
 
324
345
  | Resource | Link |
325
346
  | :--- | :--- |
326
- | **Good first issues** | [docs/GOOD_FIRST_ISSUES.md](docs/GOOD_FIRST_ISSUES.md) — starter tasks ([#19](https://github.com/MarcoPorcellato/logseq-matryca-parser/issues/19)–[#52](https://github.com/MarcoPorcellato/logseq-matryca-parser/issues/52)) |
347
+ | **Good first issues** | [Recommended starter pack](docs/GOOD_FIRST_ISSUES.md#recommended-starter-pack) — dated Wave 5/6 selection and preserved earlier IDs; recheck GitHub before claiming |
327
348
  | **Contributing** | [CONTRIBUTING.md](CONTRIBUTING.md) — setup, tests, PR workflow |
328
349
  | **Cookbook** | [docs/COOKBOOK.md](docs/COOKBOOK.md) — integration recipes (Synapse, graph query, watcher) |
329
350
  | **Documentation index** | [docs/README.md](docs/README.md) — active vs historical docs |
330
351
  | **Documentation system** | [docs/DOCUMENTATION_SYSTEM.md](docs/DOCUMENTATION_SYSTEM.md) — authority, lifecycle, metadata, and federation |
331
352
  | **Roadmap** | [docs/ROADMAP_2026-2027.md](docs/ROADMAP_2026-2027.md) — milestones, dependencies, and evidence gates |
332
353
  | **Markdown compatibility evidence** | [Official Logseq corpus report](docs/quality/OFFICIAL_LOGSEQ_MARKDOWN_COMPATIBILITY_2026-10-10.md) — all 313 selected official documents passed raw-content and tree checks; semantic coverage and limits are explained |
354
+ | **Generated assurance and acceptance** | [Current delivery](docs/quality/COMPOSITE_MARKDOWN_ASSURANCE_2026-10-03.md#current-delivery-and-release-status) and [#104 acceptance package](docs/quality/PARSER_ASSURANCE_ACCEPTANCE_2026-10-18.md) — bounded checks, selected depth coverage and explicit acceptance gates |
333
355
  | **Support** | [SUPPORT.md](SUPPORT.md) — safe issue routing, support scope, and response boundaries |
334
356
  | **Governance** | [GOVERNANCE.md](GOVERNANCE.md) — decisions, maintainer path, and conflict handling |
335
357
  | **Agent safety** | [docs/reference/AGENT_ACTION_CONTRACT.md](docs/reference/AGENT_ACTION_CONTRACT.md) — authority, approvals, provenance, and prompt-injection boundary |
@@ -338,18 +360,21 @@ We welcome issues, pull requests, and constructive feedback.
338
360
 
339
361
  ## 📦 Release history
340
362
 
341
- Current source version: **v1.11.1**. The [PyPI project page](https://pypi.org/project/logseq-matryca-parser/) and
363
+ Current source version: **v1.11.2**. The [PyPI project page](https://pypi.org/project/logseq-matryca-parser/) and
342
364
  [GitHub Releases](https://github.com/MarcoPorcellato/logseq-matryca-parser/releases) list available distributions.
343
365
  Security support follows the [latest-release policy](SECURITY.md).
344
366
 
345
- The v1.11.1 source includes fenced-code parsing fixes for outline items, eligible
346
- multiline scalar-metadata round trips, and bounded composite Markdown assurance.
347
- See the [changelog](CHANGELOG.md) for scope and limits.
367
+ The v1.11.2 source removes repeated page scans from attached-node graph reads
368
+ while preserving aliases, collision filtering and node order. It also adds a
369
+ focused refresh-depth test matrix and consolidates assurance documentation.
370
+ This does not establish end-to-end Plumber dashboard performance or cancellation.
371
+ See the [changelog](CHANGELOG.md) for scope, limits and known issues.
348
372
 
349
373
  Read the complete [release highlights](RELEASE_HIGHLIGHTS.md), the exhaustive
350
374
  [changelog](CHANGELOG.md), or the signed artifacts on
351
375
  [GitHub Releases](https://github.com/MarcoPorcellato/logseq-matryca-parser/releases).
352
376
 
377
+ - **v1.11.2** — Bounds graph ownership-resolution work per read, extends focused refresh-depth tests, and consolidates assurance and PKM comparison documentation.
353
378
  - **v1.11.1** — Fixes fenced-code parsing in outline items, preserves eligible multiline scalar-metadata round trips, and adds bounded composite Markdown assurance.
354
379
  - **v1.11.0** — Adds an experimental, read-only Logseq Org reader with source retention and explicit support limits.
355
380
  - **v1.10.0** — Clarifies the LlamaIndex companion boundary and removes the Parser's NLTK dependency chain.
@@ -7,8 +7,25 @@ published artifacts and attestations, see
7
7
 
8
8
  ## Unreleased
9
9
 
10
- No changes are currently listed. See the [changelog](CHANGELOG.md) for the
11
- current source record.
10
+ ## v1.11.2
11
+
12
+ This patch removes repeated page scans from attached-node graph reads
13
+ and includes the focused assurance and documentation work already merged after
14
+ v1.11.1. Existing public APIs and declared install requirements are unchanged;
15
+ locked development-tool and optional-extra dependency versions were refreshed.
16
+
17
+ | Area | Change |
18
+ | :--- | :--- |
19
+ | **Graph ownership reads** | Resolves each distinct published page object and each distinct nonempty node source spelling once per read, preserving aliases, collision filtering, node order and coordinated snapshots without a cross-operation cache. |
20
+ | **Focused refresh-depth tests** | Completes the selected five-family/six-depth matrix at depths 1, 2, 3, 4, 8 and 32, adding 20 round-trip combinations without changing parser behavior, identity policy or limits; this complements, not replaces, bounded generated assurance. |
21
+ | **Assurance documentation** | Consolidates the [current delivery record](docs/quality/COMPOSITE_MARKDOWN_ASSURANCE_2026-10-03.md#current-delivery-and-release-status) and [#104 acceptance package](docs/quality/PARSER_ASSURANCE_ACCEPTANCE_2026-10-18.md), preserving dated evidence and separate issue-closure and publication gates. |
22
+ | **PKM comparison** | Adds Obsidian and a [source-backed comparison study](docs/reference/PKM_OBSIDIAN_COMPARISON.md), distinguishing applications, native features, community plugins and compatible export from lossless cross-app support. |
23
+
24
+ The ownership correction does not qualify whole-request dashboard latency,
25
+ reference-fallback performance, cancellation or downstream Plumber integration.
26
+ The snapshot-path and X-Ray state-write limitations remain; the reading-skill
27
+ helper now stops instead of installing an unpinned dependency. See the
28
+ [changelog](CHANGELOG.md) for scope, dependency notes and known issues.
12
29
 
13
30
  ## v1.11.1
14
31
 
@@ -73,11 +73,12 @@ The script returns structured markdown containing:
73
73
 
74
74
  ---
75
75
 
76
- ## Automatic setup
76
+ ## Dependency setup
77
77
 
78
- The script installs `logseq-matryca-parser` automatically if missing.
79
- If installation fails, install manually with:
78
+ The script does not install dependencies. If the Parser is missing, it prints
79
+ manual installation guidance and exits without reading the vault. Install a
80
+ published release in the same Python environment before running the skill:
80
81
 
81
82
  ```bash
82
- uv pip install logseq-matryca-parser
83
+ python -m pip install "logseq-matryca-parser>=1.11.2,<2"
83
84
  ```
@@ -15,7 +15,6 @@ Usage:
15
15
  import argparse
16
16
  import os
17
17
  import re
18
- import subprocess
19
18
  import sys
20
19
  from datetime import date
21
20
  from pathlib import Path
@@ -30,13 +29,15 @@ TASK_ICONS = {"TODO": "☐", "DOING": "🔄", "DONE": "✓", "LATER": "⏳"}
30
29
  def ensure_installed():
31
30
  try:
32
31
  from logseq_matryca_parser import LogosParser # noqa: F401
33
- except ImportError:
34
- print("[setup] Installing logseq-matryca-parser...", file=sys.stderr)
35
- subprocess.run(
36
- [sys.executable, "-m", "pip", "install",
37
- "git+https://github.com/MarcoPorcellato/logseq-matryca-parser.git"],
38
- check=True, capture_output=True,
32
+ except ModuleNotFoundError as exc:
33
+ if exc.name != "logseq_matryca_parser":
34
+ raise
35
+ print(
36
+ 'logseq-matryca-parser is not installed. Install it yourself from PyPI: '
37
+ 'python -m pip install "logseq-matryca-parser>=1.11.2,<2"',
38
+ file=sys.stderr,
39
39
  )
40
+ raise SystemExit(2) from exc
40
41
 
41
42
 
42
43
  def format_node(node, depth=0) -> list[str]:
@@ -8,8 +8,8 @@ audience: contributors
8
8
  owner: logseq-matryca-parser
9
9
  authority: source_repository
10
10
  execution_mode: reviewed
11
- last_verified: 2026-10-04
12
- verified: 2026-10-04
11
+ last_verified: 2026-10-21
12
+ verified: 2026-10-21
13
13
  stale_after: 2027-03-31
14
14
  okf_profile: matryca_okf_inspired_quality
15
15
  okf_spec_version: null
@@ -19,7 +19,7 @@ superseded_by: null
19
19
 
20
20
  # Clean Code & Clean Architecture — Logseq Matryca Parser
21
21
 
22
- **Version:** maintainer contracts refreshed for **v1.11.0**, published on 2026-10-02; the release includes the experimental Org-reader slice (v1 structural backlog complete; parser, graph-coherence, local-assurance, and stable snapshot-graph slices merged)
22
+ **Release baseline:** **v1.11.1**, published on 2026-10-20, includes the fenced-code correction, scoped scalar-metadata serializer fix and bounded assurance source. The experimental Org reader remains the private subset introduced in v1.11.0. The selected depth-matrix completion and documentation consolidation are a later local candidate; see the [current assurance record](quality/COMPOSITE_MARKDOWN_ASSURANCE_2026-10-03.md#current-delivery-and-release-status).
23
23
  **Audience:** contributors and Cursor agents patching `src/logseq_matryca_parser/`
24
24
  **Companion:** [`ARCHITECTURE.md`](ARCHITECTURE.md) (LOGOS domain contract) · [`BUG_HUNT_REPORT.md`](BUG_HUNT_REPORT.md) (audit evidence) · [`CONTRIBUTING.md`](../CONTRIBUTING.md)
25
25
 
@@ -27,6 +27,15 @@ This document applies **Robert C. Martin's** *Clean Architecture* (dependency ru
27
27
 
28
28
  **Adoption model:** **incremental v1**. A full hexagonal package split (`domain/ports.py`, separate driver packages) is **out of scope** for routine PRs. Uncle Bob here is a **quality contract**, not a mandate to rewrite the flat `src/logseq_matryca_parser/` layout in one change.
29
29
 
30
+ **Residual parser work:** line classification and lexical-state extraction are
31
+ delivered. [#108](https://github.com/MarcoPorcellato/logseq-matryca-parser/issues/108)
32
+ owns the remaining private reducer and semantic-enrichment slices, after accepted
33
+ [#104](https://github.com/MarcoPorcellato/logseq-matryca-parser/issues/104)
34
+ semantic evidence and
35
+ [#111](https://github.com/MarcoPorcellato/logseq-matryca-parser/issues/111)
36
+ decision benchmarks. The [#104 acceptance package](quality/PARSER_ASSURANCE_ACCEPTANCE_2026-10-18.md)
37
+ prepares that decision; it does not authorize a refactor or close an issue.
38
+
30
39
  **Cross-repository boundary:** Parser owns deterministic OG parsing, typed ASTs,
31
40
  the in-memory graph, and parser-native serialization. [Matryca
32
41
  Plumber](https://github.com/MarcoPorcellato/matryca-plumber) may depend on it
@@ -117,7 +126,7 @@ flowchart TB
117
126
  | Pattern | Why it exists | Tracking |
118
127
  |---------|---------------|----------|
119
128
  | Flat module layout (no `domain/` package) | Library shipped as one PyPI package; low ceremony for contributors | This doc — incremental slices only |
120
- | `kinetic.py` ~230 lines | Typer app factory + `export` orchestration | **Shipped** — handlers in `kinetic_export.py`, subcommands in `kinetic_commands.py` |
129
+ | Thin KINETIC orchestration | Typer app factory + `export` orchestration | **Shipped** — handlers in `kinetic_export.py`, subcommands in `kinetic_commands.py` |
121
130
  | Monolithic SYNAPSE embed `while` loop | Deterministic expansion with cycle guards | **Shipped** — `synapse_embed.py` strategy ([#70](https://github.com/MarcoPorcellato/logseq-matryca-parser/issues/70)) |
122
131
  | `LogseqGraph.pages` dict with alias keys | Logseq `alias::` / `title::` parity | Point-in-time compatibility mapping; consumers must not mutate it and must use `iter_canonical_pages()` — DEBT-001 **shipped** |
123
132
 
@@ -127,7 +136,7 @@ Audit backlog: [`quality/CLEAN_ARCH_BACKLOG.md`](quality/CLEAN_ARCH_BACKLOG.md).
127
136
 
128
137
  ## Module maps (fat modules)
129
138
 
130
- ### `logos_parser.py` (~1,440 lines) — LOGOS stack machine
139
+ ### `logos_parser.py` — LOGOS stack machine
131
140
 
132
141
  | Area | Responsibility |
133
142
  |------|----------------|
@@ -145,7 +154,7 @@ uv run pytest tests/test_logos_parser.py -q
145
154
  make check
146
155
  ```
147
156
 
148
- ### `graph.py` (~920 lines) — in-memory graph RAM image
157
+ ### `graph.py` — in-memory graph RAM image
149
158
 
150
159
  | Area | Responsibility |
151
160
  |------|----------------|
@@ -174,16 +183,16 @@ close.
174
183
  `SnapshotPage` plus `LogseqGraph.from_snapshot_pages()` is the additive
175
184
  in-memory bulk-load boundary. It accepts caller-captured Markdown text and safe
176
185
  graph-relative logical paths, parses only through `StackMachineParser.parse()`, and
177
- then reuses the normal graph index builders. The factory neither discovers nor
178
- reopens or inspects source paths or the graph-root label; those synthetic paths are
179
- graph metadata only. Capture,
180
- filesystem authority, revisions, and cross-product DTO projection remain outside
181
- Parser.
186
+ then reuses the normal graph index builders. The factory does not discover
187
+ source files. Some checks and graph reads resolve logical paths and the root
188
+ label against host filesystem metadata; symlinks can therefore affect ordering
189
+ or results. Capture, filesystem authority, revisions, and cross-product DTO
190
+ projection remain outside Parser.
182
191
 
183
192
  The private inventory and snapshot representations are implementation details,
184
193
  not stable public API.
185
194
 
186
- ### `kinetic.py` (~230 lines) — KINETIC app factory
195
+ ### `kinetic.py` — KINETIC app factory
187
196
 
188
197
  | Area | Responsibility | Module |
189
198
  |------|----------------|--------|