campfire-cli 0.1.0__tar.gz → 0.1.1__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 (176) hide show
  1. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/PKG-INFO +2 -1
  2. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/pyproject.toml +2 -1
  3. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/__init__.py +1 -1
  4. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/filesystem/locking.py +3 -9
  5. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/uv.lock +31 -1
  6. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/.github/workflows/ci.yml +0 -0
  7. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/.github/workflows/release.yml +0 -0
  8. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/.gitignore +0 -0
  9. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/AGENTS.md +0 -0
  10. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/ARCHITECTURE.md +0 -0
  11. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/COMMAND.md +0 -0
  12. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/DECISIONS.md +0 -0
  13. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/LICENSE +0 -0
  14. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/README.md +0 -0
  15. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/SPEC.md +0 -0
  16. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/alembic/SPEC.md +0 -0
  17. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/alembic/env.py +0 -0
  18. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/alembic/script.py.mako +0 -0
  19. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/alembic/versions/001_initial_schema.py +0 -0
  20. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/alembic.ini +0 -0
  21. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/scripts/SPEC.md +0 -0
  22. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/__init__.py +0 -0
  23. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/env.py +0 -0
  24. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/script.py.mako +0 -0
  25. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/versions/001_initial_schema.py +0 -0
  26. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/versions/002_workspace_project_registry.py +0 -0
  27. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/versions/003_unified_workspace_state.py +0 -0
  28. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/versions/004_restructure_workspace_domain.py +0 -0
  29. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/versions/005_decision_channel.py +0 -0
  30. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/versions/006_workspace_topology_index.py +0 -0
  31. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/versions/007_workspace_adoption.py +0 -0
  32. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/alembic/versions/__init__.py +0 -0
  33. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/SPEC.md +0 -0
  34. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/__init__.py +0 -0
  35. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/base/SPEC.md +0 -0
  36. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/base/__init__.py +0 -0
  37. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/base/cli/base_cli.py +0 -0
  38. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/base/repository/base_repository.py +0 -0
  39. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/base/schema/base_schema.py +0 -0
  40. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/base/service/base_service.py +0 -0
  41. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/decision/SPEC.md +0 -0
  42. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/decision/__init__.py +0 -0
  43. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/decision/cli/decision_cli.py +0 -0
  44. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/decision/repository/decision_repository.py +0 -0
  45. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/decision/schema/decision_schema.py +0 -0
  46. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/decision/service/decision_projection_service.py +0 -0
  47. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/decision/service/decision_service.py +0 -0
  48. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/SPEC.md +0 -0
  49. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/__init__.py +0 -0
  50. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/cli/__init__.py +0 -0
  51. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/cli/document_cli.py +0 -0
  52. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/cli/profile_cli.py +0 -0
  53. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/cli/type_cli.py +0 -0
  54. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/repository/__init__.py +0 -0
  55. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/repository/document_profile_repository.py +0 -0
  56. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/repository/document_type_repository.py +0 -0
  57. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/__init__.py +0 -0
  58. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/document_profile_service.py +0 -0
  59. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/document_rule_service.py +0 -0
  60. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/document_scanner.py +0 -0
  61. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/document_service.py +0 -0
  62. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/document_type_service.py +0 -0
  63. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/frontmatter_apply.py +0 -0
  64. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/frontmatter_formatter.py +0 -0
  65. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/frontmatter_plan.py +0 -0
  66. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/profile_registry.py +0 -0
  67. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/type_apply.py +0 -0
  68. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/document/service/type_plan.py +0 -0
  69. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/SPEC.md +0 -0
  70. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/__init__.py +0 -0
  71. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/cli/maintenance_cli.py +0 -0
  72. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/repository/maintenance_repository.py +0 -0
  73. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/schema/maintenance_schema.py +0 -0
  74. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/service/archive_service.py +0 -0
  75. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/service/link_service.py +0 -0
  76. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/service/maintenance_protocol.py +0 -0
  77. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/service/maintenance_service.py +0 -0
  78. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/service/moc_service.py +0 -0
  79. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/maintenance/service/plan_service.py +0 -0
  80. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/skill/SPEC.md +0 -0
  81. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/skill/__init__.py +0 -0
  82. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/skill/cli/skill_cli.py +0 -0
  83. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/skill/repository/skill_repository.py +0 -0
  84. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/skill/schema/skill_schema.py +0 -0
  85. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/skill/service/skill_service.py +0 -0
  86. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/SPEC.md +0 -0
  87. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/__init__.py +0 -0
  88. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/cli/__init__.py +0 -0
  89. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/cli/adoption_cli.py +0 -0
  90. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/cli/config_cli.py +0 -0
  91. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/cli/domain_cli.py +0 -0
  92. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/cli/project_cli.py +0 -0
  93. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/cli/restructure_cli.py +0 -0
  94. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/cli/space_cli.py +0 -0
  95. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/cli/workspace_cli.py +0 -0
  96. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/repository/__init__.py +0 -0
  97. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/repository/adoption_repository.py +0 -0
  98. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/repository/manifest_repository.py +0 -0
  99. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/repository/restructure_repository.py +0 -0
  100. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/repository/workspace_repository.py +0 -0
  101. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/schema/__init__.py +0 -0
  102. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/schema/adoption_schema.py +0 -0
  103. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/schema/restructure_schema.py +0 -0
  104. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/schema/workspace_schema.py +0 -0
  105. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/__init__.py +0 -0
  106. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/adoption_protocol.py +0 -0
  107. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/adoption_service.py +0 -0
  108. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/config_service.py +0 -0
  109. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/domain_restructure_service.py +0 -0
  110. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/project_service.py +0 -0
  111. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/restructure_protocol.py +0 -0
  112. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/restructure_service.py +0 -0
  113. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/restructure_verifier.py +0 -0
  114. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/structure_service.py +0 -0
  115. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/workspace_protocol.py +0 -0
  116. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/app/workspace/service/workspace_service.py +0 -0
  117. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/SPEC.md +0 -0
  118. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/__init__.py +0 -0
  119. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/database/__init__.py +0 -0
  120. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/database/migrations.py +0 -0
  121. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/database/models.py +0 -0
  122. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/database/session.py +0 -0
  123. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/documents/__init__.py +0 -0
  124. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/documents/document_types.py +0 -0
  125. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/documents/frontmatter_schema.py +0 -0
  126. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/documents/markdown.py +0 -0
  127. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/exceptions/__init__.py +0 -0
  128. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/exceptions/base.py +0 -0
  129. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/filesystem/__init__.py +0 -0
  130. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/filesystem/atomic.py +0 -0
  131. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/governance/__init__.py +0 -0
  132. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/governance/issues.py +0 -0
  133. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/governance/locking.py +0 -0
  134. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/governance/snapshots.py +0 -0
  135. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/hashing.py +0 -0
  136. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/reports/__init__.py +0 -0
  137. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/reports/json_report.py +0 -0
  138. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/common/reports/markdown_report.py +0 -0
  139. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/config/SPEC.md +0 -0
  140. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/config/defaults.py +0 -0
  141. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/config/settings.py +0 -0
  142. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/container.py +0 -0
  143. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/main.py +0 -0
  144. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/__init__.py +0 -0
  145. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/bases/Agent/346/211/247/350/241/214/345/267/245/344/275/234/345/217/260.base" +0 -0
  146. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/bases/SPEC.md +0 -0
  147. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/bases//344/273/273/345/212/241/345/267/245/344/275/234/345/217/260.base" +0 -0
  148. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/bases//345/206/263/347/255/226/345/267/245/344/275/234/345/217/260.base" +0 -0
  149. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/bases//345/276/205/345/275/222/346/241/243/346/226/207/346/241/243.base" +0 -0
  150. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/bases//351/241/271/347/233/256/346/226/207/346/241/243.base" +0 -0
  151. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/defaults/__init__.py +0 -0
  152. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/defaults/config.yml +0 -0
  153. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/SPEC.md +0 -0
  154. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-context-bootstrap/SKILL.md +0 -0
  155. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-context-bootstrap/agents/openai.yaml +0 -0
  156. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-conversation-router/SKILL.md +0 -0
  157. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-conversation-router/agents/openai.yaml +0 -0
  158. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-conversation-router/references/inbox-handoff.md +0 -0
  159. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-conversation-router/references/learning-intake.md +0 -0
  160. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-conversation-router/references/task-intake.md +0 -0
  161. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-document-capture/SKILL.md +0 -0
  162. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-inbox-triage/SKILL.md +0 -0
  163. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-weekly-report-writing/SKILL.md +0 -0
  164. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-weekly-report-writing/agents/openai.yaml +0 -0
  165. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-workspace-adoption/SKILL.md +0 -0
  166. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-workspace-maintenance/SKILL.md +0 -0
  167. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-workspace-maintenance/references//344/273/273/345/212/241/346/255/243/346/226/207/347/273/223/346/236/204.md" +0 -0
  168. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/src/campfire_cli/resources/skills/campfire-workspace-restructure/SKILL.md +0 -0
  169. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/tests/SPEC.md +0 -0
  170. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/tests/conftest.py +0 -0
  171. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/tests/integration/test_cli.py +0 -0
  172. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/tests/unit/test_atomic_write.py +0 -0
  173. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/tests/unit/test_common_governance.py +0 -0
  174. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/tests/unit/test_config.py +0 -0
  175. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/tests/unit/test_frontmatter.py +0 -0
  176. {campfire_cli-0.1.0 → campfire_cli-0.1.1}/tests/unit/test_repository_boundaries.py +0 -0
@@ -1,11 +1,12 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: campfire-cli
3
- Version: 0.1.0
3
+ Version: 0.1.1
4
4
  Summary: Local-first shared context and governance CLI for humans and agents
5
5
  License-Expression: MIT
6
6
  License-File: LICENSE
7
7
  Requires-Python: >=3.12
8
8
  Requires-Dist: alembic>=1.13
9
+ Requires-Dist: psutil>=7.2.2
9
10
  Requires-Dist: pydantic-settings>=2.2
10
11
  Requires-Dist: pydantic>=2.7
11
12
  Requires-Dist: pyyaml>=6.0
@@ -1,12 +1,13 @@
1
1
  [project]
2
2
  name = "campfire-cli"
3
- version = "0.1.0"
3
+ version = "0.1.1"
4
4
  description = "Local-first shared context and governance CLI for humans and agents"
5
5
  readme = "README.md"
6
6
  license = "MIT"
7
7
  requires-python = ">=3.12"
8
8
  dependencies = [
9
9
  "alembic>=1.13",
10
+ "psutil>=7.2.2",
10
11
  "pydantic>=2.7",
11
12
  "pydantic-settings>=2.2",
12
13
  "pyyaml>=6.0",
@@ -1,3 +1,3 @@
1
1
  """Campfire CLI package."""
2
2
 
3
- __version__ = "0.1.0"
3
+ __version__ = "0.1.1"
@@ -5,6 +5,8 @@ from collections.abc import Iterator
5
5
  from contextlib import contextmanager
6
6
  from pathlib import Path
7
7
 
8
+ import psutil
9
+
8
10
  from campfire_cli.common.exceptions import GovernanceBlockedError
9
11
 
10
12
 
@@ -38,15 +40,7 @@ def _acquire(lock: Path) -> int:
38
40
  pid = int(lock.read_text(encoding="utf-8").strip())
39
41
  except (OSError, ValueError):
40
42
  raise GovernanceBlockedError(f"已有治理写操作且锁内容无法确认:{lock}") from exc
41
- try:
42
- os.kill(pid, 0)
43
- except PermissionError:
44
- raise GovernanceBlockedError(f"已有治理写操作(PID {pid}):{lock}") from exc
45
- except OSError:
46
- # 进程不存在:POSIX 抛 ProcessLookupError,Windows 抛 WinError 87,
47
- # 两者都是 OSError 子类,统一按死进程清理后重试。
48
- pass
49
- else:
43
+ if psutil.pid_exists(pid):
50
44
  raise GovernanceBlockedError(f"已有治理写操作(PID {pid}):{lock}") from exc
51
45
  lock.unlink(missing_ok=True)
52
46
  try:
@@ -36,10 +36,11 @@ wheels = [
36
36
 
37
37
  [[package]]
38
38
  name = "campfire-cli"
39
- version = "0.1.0"
39
+ version = "0.1.1"
40
40
  source = { editable = "." }
41
41
  dependencies = [
42
42
  { name = "alembic" },
43
+ { name = "psutil" },
43
44
  { name = "pydantic" },
44
45
  { name = "pydantic-settings" },
45
46
  { name = "pyyaml" },
@@ -57,6 +58,7 @@ dev = [
57
58
  [package.metadata]
58
59
  requires-dist = [
59
60
  { name = "alembic", specifier = ">=1.13" },
61
+ { name = "psutil", specifier = ">=7.2.2" },
60
62
  { name = "pydantic", specifier = ">=2.7" },
61
63
  { name = "pydantic-settings", specifier = ">=2.2" },
62
64
  { name = "pyyaml", specifier = ">=6.0" },
@@ -357,6 +359,34 @@ wheels = [
357
359
  { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 20538, upload-time = "2025-05-15T12:30:06.134Z" },
358
360
  ]
359
361
 
362
+ [[package]]
363
+ name = "psutil"
364
+ version = "7.2.2"
365
+ source = { registry = "https://pypi.org/simple" }
366
+ sdist = { url = "https://files.pythonhosted.org/packages/aa/c6/d1ddf4abb55e93cebc4f2ed8b5d6dbad109ecb8d63748dd2b20ab5e57ebe/psutil-7.2.2.tar.gz", hash = "sha256:0746f5f8d406af344fd547f1c8daa5f5c33dbc293bb8d6a16d80b4bb88f59372", size = 493740, upload-time = "2026-01-28T18:14:54.428Z" }
367
+ wheels = [
368
+ { url = "https://files.pythonhosted.org/packages/51/08/510cbdb69c25a96f4ae523f733cdc963ae654904e8db864c07585ef99875/psutil-7.2.2-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:2edccc433cbfa046b980b0df0171cd25bcaeb3a68fe9022db0979e7aa74a826b", size = 130595, upload-time = "2026-01-28T18:14:57.293Z" },
369
+ { url = "https://files.pythonhosted.org/packages/d6/f5/97baea3fe7a5a9af7436301f85490905379b1c6f2dd51fe3ecf24b4c5fbf/psutil-7.2.2-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:e78c8603dcd9a04c7364f1a3e670cea95d51ee865e4efb3556a3a63adef958ea", size = 131082, upload-time = "2026-01-28T18:14:59.732Z" },
370
+ { url = "https://files.pythonhosted.org/packages/37/d6/246513fbf9fa174af531f28412297dd05241d97a75911ac8febefa1a53c6/psutil-7.2.2-cp313-cp313t-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1a571f2330c966c62aeda00dd24620425d4b0cc86881c89861fbc04549e5dc63", size = 181476, upload-time = "2026-01-28T18:15:01.884Z" },
371
+ { url = "https://files.pythonhosted.org/packages/b8/b5/9182c9af3836cca61696dabe4fd1304e17bc56cb62f17439e1154f225dd3/psutil-7.2.2-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:917e891983ca3c1887b4ef36447b1e0873e70c933afc831c6b6da078ba474312", size = 184062, upload-time = "2026-01-28T18:15:04.436Z" },
372
+ { url = "https://files.pythonhosted.org/packages/16/ba/0756dca669f5a9300d0cbcbfae9a4c30e446dfc7440ffe43ded5724bfd93/psutil-7.2.2-cp313-cp313t-win_amd64.whl", hash = "sha256:ab486563df44c17f5173621c7b198955bd6b613fb87c71c161f827d3fb149a9b", size = 139893, upload-time = "2026-01-28T18:15:06.378Z" },
373
+ { url = "https://files.pythonhosted.org/packages/1c/61/8fa0e26f33623b49949346de05ec1ddaad02ed8ba64af45f40a147dbfa97/psutil-7.2.2-cp313-cp313t-win_arm64.whl", hash = "sha256:ae0aefdd8796a7737eccea863f80f81e468a1e4cf14d926bd9b6f5f2d5f90ca9", size = 135589, upload-time = "2026-01-28T18:15:08.03Z" },
374
+ { url = "https://files.pythonhosted.org/packages/81/69/ef179ab5ca24f32acc1dac0c247fd6a13b501fd5534dbae0e05a1c48b66d/psutil-7.2.2-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:eed63d3b4d62449571547b60578c5b2c4bcccc5387148db46e0c2313dad0ee00", size = 130664, upload-time = "2026-01-28T18:15:09.469Z" },
375
+ { url = "https://files.pythonhosted.org/packages/7b/64/665248b557a236d3fa9efc378d60d95ef56dd0a490c2cd37dafc7660d4a9/psutil-7.2.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:7b6d09433a10592ce39b13d7be5a54fbac1d1228ed29abc880fb23df7cb694c9", size = 131087, upload-time = "2026-01-28T18:15:11.724Z" },
376
+ { url = "https://files.pythonhosted.org/packages/d5/2e/e6782744700d6759ebce3043dcfa661fb61e2fb752b91cdeae9af12c2178/psutil-7.2.2-cp314-cp314t-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1fa4ecf83bcdf6e6c8f4449aff98eefb5d0604bf88cb883d7da3d8d2d909546a", size = 182383, upload-time = "2026-01-28T18:15:13.445Z" },
377
+ { url = "https://files.pythonhosted.org/packages/57/49/0a41cefd10cb7505cdc04dab3eacf24c0c2cb158a998b8c7b1d27ee2c1f5/psutil-7.2.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e452c464a02e7dc7822a05d25db4cde564444a67e58539a00f929c51eddda0cf", size = 185210, upload-time = "2026-01-28T18:15:16.002Z" },
378
+ { url = "https://files.pythonhosted.org/packages/dd/2c/ff9bfb544f283ba5f83ba725a3c5fec6d6b10b8f27ac1dc641c473dc390d/psutil-7.2.2-cp314-cp314t-win_amd64.whl", hash = "sha256:c7663d4e37f13e884d13994247449e9f8f574bc4655d509c3b95e9ec9e2b9dc1", size = 141228, upload-time = "2026-01-28T18:15:18.385Z" },
379
+ { url = "https://files.pythonhosted.org/packages/f2/fc/f8d9c31db14fcec13748d373e668bc3bed94d9077dbc17fb0eebc073233c/psutil-7.2.2-cp314-cp314t-win_arm64.whl", hash = "sha256:11fe5a4f613759764e79c65cf11ebdf26e33d6dd34336f8a337aa2996d71c841", size = 136284, upload-time = "2026-01-28T18:15:19.912Z" },
380
+ { url = "https://files.pythonhosted.org/packages/e7/36/5ee6e05c9bd427237b11b3937ad82bb8ad2752d72c6969314590dd0c2f6e/psutil-7.2.2-cp36-abi3-macosx_10_9_x86_64.whl", hash = "sha256:ed0cace939114f62738d808fdcecd4c869222507e266e574799e9c0faa17d486", size = 129090, upload-time = "2026-01-28T18:15:22.168Z" },
381
+ { url = "https://files.pythonhosted.org/packages/80/c4/f5af4c1ca8c1eeb2e92ccca14ce8effdeec651d5ab6053c589b074eda6e1/psutil-7.2.2-cp36-abi3-macosx_11_0_arm64.whl", hash = "sha256:1a7b04c10f32cc88ab39cbf606e117fd74721c831c98a27dc04578deb0c16979", size = 129859, upload-time = "2026-01-28T18:15:23.795Z" },
382
+ { url = "https://files.pythonhosted.org/packages/b5/70/5d8df3b09e25bce090399cf48e452d25c935ab72dad19406c77f4e828045/psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:076a2d2f923fd4821644f5ba89f059523da90dc9014e85f8e45a5774ca5bc6f9", size = 155560, upload-time = "2026-01-28T18:15:25.976Z" },
383
+ { url = "https://files.pythonhosted.org/packages/63/65/37648c0c158dc222aba51c089eb3bdfa238e621674dc42d48706e639204f/psutil-7.2.2-cp36-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b0726cecd84f9474419d67252add4ac0cd9811b04d61123054b9fb6f57df6e9e", size = 156997, upload-time = "2026-01-28T18:15:27.794Z" },
384
+ { url = "https://files.pythonhosted.org/packages/8e/13/125093eadae863ce03c6ffdbae9929430d116a246ef69866dad94da3bfbc/psutil-7.2.2-cp36-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:fd04ef36b4a6d599bbdb225dd1d3f51e00105f6d48a28f006da7f9822f2606d8", size = 148972, upload-time = "2026-01-28T18:15:29.342Z" },
385
+ { url = "https://files.pythonhosted.org/packages/04/78/0acd37ca84ce3ddffaa92ef0f571e073faa6d8ff1f0559ab1272188ea2be/psutil-7.2.2-cp36-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:b58fabe35e80b264a4e3bb23e6b96f9e45a3df7fb7eed419ac0e5947c61e47cc", size = 148266, upload-time = "2026-01-28T18:15:31.597Z" },
386
+ { url = "https://files.pythonhosted.org/packages/b4/90/e2159492b5426be0c1fef7acba807a03511f97c5f86b3caeda6ad92351a7/psutil-7.2.2-cp37-abi3-win_amd64.whl", hash = "sha256:eb7e81434c8d223ec4a219b5fc1c47d0417b12be7ea866e24fb5ad6e84b3d988", size = 137737, upload-time = "2026-01-28T18:15:33.849Z" },
387
+ { url = "https://files.pythonhosted.org/packages/8c/c7/7bb2e321574b10df20cbde462a94e2b71d05f9bbda251ef27d104668306a/psutil-7.2.2-cp37-abi3-win_arm64.whl", hash = "sha256:8c233660f575a5a89e6d4cb65d9f938126312bca76d8fe087b947b3a1aaac9ee", size = 134617, upload-time = "2026-01-28T18:15:36.514Z" },
388
+ ]
389
+
360
390
  [[package]]
361
391
  name = "pydantic"
362
392
  version = "2.13.5"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes