fabricatio 0.5.0.dev1__tar.gz → 0.5.1.dev1__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 (243) hide show
  1. fabricatio-0.5.1.dev1/.coveragerc +42 -0
  2. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/.github/workflows/tests.yaml +1 -0
  3. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/Cargo.lock +1 -155
  4. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/Makefile +4 -3
  5. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/PKG-INFO +14 -16
  6. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/README.md +13 -15
  7. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/minor/hello_fabricatio.py +2 -8
  8. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/yue/compose.py +3 -13
  9. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/extra/scripts/tdown +0 -0
  10. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/pyproject.toml +19 -6
  11. fabricatio-0.5.1.dev1/packages/fabricatio-yue/python/fabricatio_yue/actions/compose.py +16 -0
  12. fabricatio-0.5.1.dev1/packages/fabricatio-yue/python/fabricatio_yue/cli.py +60 -0
  13. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/models/segment.py +11 -8
  14. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/pyproject.toml +6 -5
  15. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/fabricatio/actions/__init__.py +5 -0
  16. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/tests/test_minor_integration.py +1 -1
  17. fabricatio-0.5.1.dev1/templates/built-in/memory_recall.hbs +16 -0
  18. fabricatio-0.5.1.dev1/templates/built-in/memory_record.hbs +10 -0
  19. fabricatio-0.5.1.dev1/uv.lock +2648 -0
  20. fabricatio-0.5.0.dev1/uv.lock +0 -2696
  21. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/.github/workflows/build-package.yaml +0 -0
  22. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/.github/workflows/ruff.yaml +0 -0
  23. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/.gitignore +0 -0
  24. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/.readthedocs.yaml +0 -0
  25. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/Cargo.toml +0 -0
  26. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/LICENSE +0 -0
  27. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/assets/band.png +0 -0
  28. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/assets/logo/16.svg +0 -0
  29. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/assets/logo/400.svg +0 -0
  30. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/assets/logo/64.svg +0 -0
  31. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/docs/Makefile +0 -0
  32. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/docs/source/conf.py +0 -0
  33. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/docs/source/configuration.rst +0 -0
  34. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/docs/source/contributing.rst +0 -0
  35. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/docs/source/development.rst +0 -0
  36. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/docs/source/index.rst +0 -0
  37. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/docs/source/installation.rst +0 -0
  38. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/docs/source/usage.rst +0 -0
  39. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/anki_deck/.gitignore +0 -0
  40. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/anki_deck/deck_gen.py +0 -0
  41. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/correct/correct.py +0 -0
  42. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/correct/correct_loop.py +0 -0
  43. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/extract_and_inject/.gitignore +0 -0
  44. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/extract_and_inject/article_rag.py +0 -0
  45. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/extract_and_inject/ask.py +0 -0
  46. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/extract_and_inject/chunk_article.py +0 -0
  47. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/extract_and_inject/extract_and_inject.py +0 -0
  48. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/extract_article/extract.py +0 -0
  49. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/llm_usages/llm_usage.py +0 -0
  50. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/make_a_rating/rating.py +0 -0
  51. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/make_diary/commits.json +0 -0
  52. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/make_diary/diary.py +0 -0
  53. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/minor/write_a_poem.py +0 -0
  54. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/propose_task/.gitignore +0 -0
  55. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/propose_task/propose.py +0 -0
  56. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/reviewer/censor.py +0 -0
  57. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/reviewer/review.py +0 -0
  58. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/rules/.gitignore +0 -0
  59. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/rules/draft_ruleset.py +0 -0
  60. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/search_bibtex/.gitignore +0 -0
  61. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/search_bibtex/search.py +0 -0
  62. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/simple_chat/chat.py +0 -0
  63. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/simple_rag/simple_rag.py +0 -0
  64. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/task_handle/handle_task.py +0 -0
  65. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/write_article/.gitignore +0 -0
  66. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/write_article/article_rag.py +0 -0
  67. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/write_article/post_process.py +0 -0
  68. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/write_article/write_article.py +0 -0
  69. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/write_outline/.gitignore +0 -0
  70. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/write_outline/write_outline.py +0 -0
  71. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/examples/write_outline/write_outline_corrected.py +0 -0
  72. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/LICENSE +0 -0
  73. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/README.md +0 -0
  74. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/pyproject.toml +0 -0
  75. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/python/fabricatio_actions/__init__.py +0 -0
  76. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/python/fabricatio_actions/actions/__init__.py +0 -0
  77. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/python/fabricatio_actions/actions/fs.py +0 -0
  78. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/python/fabricatio_actions/actions/output.py +0 -0
  79. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/python/fabricatio_actions/models/__init__.py +0 -0
  80. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/python/fabricatio_actions/models/generic.py +0 -0
  81. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-actions/python/fabricatio_actions/py.typed +0 -0
  82. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/.gitignore +0 -0
  83. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/LICENSE +0 -0
  84. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/README.md +0 -0
  85. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/pyproject.toml +0 -0
  86. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/fabricatio_digest/__init__.py +0 -0
  87. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/fabricatio_digest/actions/__init__.py +0 -0
  88. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/fabricatio_digest/capabilities/__init__.py +0 -0
  89. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/fabricatio_digest/capabilities/digest.py +0 -0
  90. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/fabricatio_digest/config.py +0 -0
  91. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/fabricatio_digest/models/__init__.py +0 -0
  92. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/fabricatio_digest/models/tasklist.py +0 -0
  93. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/fabricatio_digest/py.typed +0 -0
  94. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/fabricatio_digest/workflows/__init__.py +0 -0
  95. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-digest/python/tests/tests.py +0 -0
  96. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/LICENSE +0 -0
  97. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/README.md +0 -0
  98. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/pyproject.toml +0 -0
  99. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/__init__.py +0 -0
  100. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/actions/__init__.py +0 -0
  101. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/capabilities/__init__.py +0 -0
  102. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/capabilities/correct.py +0 -0
  103. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/capabilities/review.py +0 -0
  104. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/config.py +0 -0
  105. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/models/__init__.py +0 -0
  106. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/models/improve.py +0 -0
  107. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/models/kwargs_types.py +0 -0
  108. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/models/problem.py +0 -0
  109. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/py.typed +0 -0
  110. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-improve/python/fabricatio_improve/workflows/__init__.py +0 -0
  111. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-judge/LICENSE +0 -0
  112. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-judge/README.md +0 -0
  113. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-judge/pyproject.toml +0 -0
  114. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-judge/python/fabricatio_judge/__init__.py +0 -0
  115. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-judge/python/fabricatio_judge/capabilities/__init__.py +0 -0
  116. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-judge/python/fabricatio_judge/capabilities/advanced_judge.py +0 -0
  117. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-judge/python/fabricatio_judge/models/__init__.py +0 -0
  118. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-judge/python/fabricatio_judge/models/advanced_judge.py +0 -0
  119. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-judge/python/fabricatio_judge/py.typed +0 -0
  120. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/.gitignore +0 -0
  121. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/LICENSE +0 -0
  122. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/README.md +0 -0
  123. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/pyproject.toml +0 -0
  124. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/fabricatio_question/__init__.py +0 -0
  125. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/fabricatio_question/actions/__init__.py +0 -0
  126. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/fabricatio_question/capabilities/__init__.py +0 -0
  127. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/fabricatio_question/capabilities/questioning.py +0 -0
  128. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/fabricatio_question/config.py +0 -0
  129. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/fabricatio_question/models/__init__.py +0 -0
  130. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/fabricatio_question/models/questions.py +0 -0
  131. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/fabricatio_question/py.typed +0 -0
  132. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/fabricatio_question/workflows/__init__.py +0 -0
  133. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-question/python/tests/tests.py +0 -0
  134. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/LICENSE +0 -0
  135. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/README.md +0 -0
  136. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/pyproject.toml +0 -0
  137. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/__init__.py +0 -0
  138. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/actions/__init__.py +0 -0
  139. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/actions/rules.py +0 -0
  140. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/capabilities/__init__.py +0 -0
  141. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/capabilities/censor.py +0 -0
  142. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/capabilities/check.py +0 -0
  143. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/config.py +0 -0
  144. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/models/__init__.py +0 -0
  145. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/models/kwargs_types.py +0 -0
  146. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/models/patch.py +0 -0
  147. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/models/rule.py +0 -0
  148. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-rule/python/fabricatio_rule/py.typed +0 -0
  149. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/.gitignore +0 -0
  150. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/LICENSE +0 -0
  151. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/README.md +0 -0
  152. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/pyproject.toml +0 -0
  153. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/python/fabricatio_tagging/__init__.py +0 -0
  154. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/python/fabricatio_tagging/actions/__init__.py +0 -0
  155. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/python/fabricatio_tagging/capabilities/__init__.py +0 -0
  156. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/python/fabricatio_tagging/capabilities/tagging.py +0 -0
  157. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/python/fabricatio_tagging/config.py +0 -0
  158. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/python/fabricatio_tagging/models/__init__.py +0 -0
  159. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/python/fabricatio_tagging/py.typed +0 -0
  160. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/python/fabricatio_tagging/workflows/__init__.py +0 -0
  161. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-tagging/python/tests/tests.py +0 -0
  162. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/.gitignore +0 -0
  163. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/LICENSE +0 -0
  164. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/README.md +0 -0
  165. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/__init__.py +0 -0
  166. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/actions/__init__.py +0 -0
  167. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/capabilities/__init__.py +0 -0
  168. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/capabilities/genre.py +0 -0
  169. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/capabilities/lyricize.py +0 -0
  170. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/config.py +0 -0
  171. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/models/__init__.py +0 -0
  172. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/py.typed +0 -0
  173. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/top_200_tags.json +0 -0
  174. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/fabricatio_yue/workflows/__init__.py +0 -0
  175. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/packages/fabricatio-yue/python/tests/tests.py +0 -0
  176. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/fabricatio/__init__.py +0 -0
  177. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/fabricatio/capabilities/__init__.py +0 -0
  178. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/fabricatio/models/__init__.py +0 -0
  179. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/fabricatio/py.typed +0 -0
  180. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/fabricatio/toolboxes/__init__.py +0 -0
  181. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/fabricatio/toolboxes/arithmetic.py +0 -0
  182. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/fabricatio/toolboxes/fs.py +0 -0
  183. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/python/fabricatio/workflows/__init__.py +0 -0
  184. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/src/bin/tdown.rs +0 -0
  185. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/src/lib.rs +0 -0
  186. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/subpackages.py +0 -0
  187. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/as_prompt.hbs +0 -0
  188. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/binary-exploitation-ctf-solver.hbs +0 -0
  189. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/chap_summary.hbs +0 -0
  190. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/check_string.hbs +0 -0
  191. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/claude-xml.hbs +0 -0
  192. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/clean-up-code.hbs +0 -0
  193. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/co_validation.hbs +0 -0
  194. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/code_string.hbs +0 -0
  195. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/create_json_obj.hbs +0 -0
  196. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/cryptography-ctf-solver.hbs +0 -0
  197. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/dependencies.hbs +0 -0
  198. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/digest.hbs +0 -0
  199. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/dispatch_task.hbs +0 -0
  200. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/document-the-code.hbs +0 -0
  201. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/draft_rating_criteria.hbs +0 -0
  202. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/draft_rating_manual.hbs +0 -0
  203. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/draft_rating_weights_klee.hbs +0 -0
  204. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/draft_tool_usage_code.hbs +0 -0
  205. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/extract.hbs +0 -0
  206. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/extract_criteria_from_reasons.hbs +0 -0
  207. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/extract_reasons_from_examples.hbs +0 -0
  208. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/find-security-vulnerabilities.hbs +0 -0
  209. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/fix-bugs.hbs +0 -0
  210. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/fix_troubled_obj.hbs +0 -0
  211. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/fix_troubled_string.hbs +0 -0
  212. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/generate_anki_card_back_side.hbs +0 -0
  213. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/generate_anki_card_front_side.hbs +0 -0
  214. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/generate_anki_card_template.hbs +0 -0
  215. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/generate_anki_card_template_generation_requirements.hbs +0 -0
  216. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/generate_anki_deck_metadata.hbs +0 -0
  217. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/generate_anki_model_generation_requirements.hbs +0 -0
  218. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/generate_anki_model_name.hbs +0 -0
  219. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/generic_string.hbs +0 -0
  220. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/improve-performance.hbs +0 -0
  221. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/liststr.hbs +0 -0
  222. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/lyricize.hbs +0 -0
  223. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/make_choice.hbs +0 -0
  224. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/make_judgment.hbs +0 -0
  225. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/mapping.hbs +0 -0
  226. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/pathstr.hbs +0 -0
  227. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/rate_fine_grind.hbs +0 -0
  228. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/refactor.hbs +0 -0
  229. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/refined_query.hbs +0 -0
  230. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/research_content_summary.hbs +0 -0
  231. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/retrieved_display.hbs +0 -0
  232. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/reverse-engineering-ctf-solver.hbs +0 -0
  233. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/review_string.hbs +0 -0
  234. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/rule_requirement.hbs +0 -0
  235. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/ruleset_requirement_breakdown.hbs +0 -0
  236. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/select_genre.hbs +0 -0
  237. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/selection.hbs +0 -0
  238. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/tagging.hbs +0 -0
  239. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/task_briefing.hbs +0 -0
  240. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/web-ctf-solver.hbs +0 -0
  241. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/write-git-commit.hbs +0 -0
  242. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/write-github-pull-request.hbs +0 -0
  243. {fabricatio-0.5.0.dev1 → fabricatio-0.5.1.dev1}/templates/built-in/write-github-readme.hbs +0 -0
@@ -0,0 +1,42 @@
1
+ [run]
2
+ source =
3
+ python/fabricatio
4
+ packages/fabricatio-core/python/fabricatio-core
5
+ packages/fabricatio-capabilities/python/fabricatio_capabilities
6
+ packages/fabricatio-actions/python/fabricatio_actions
7
+ packages/fabricatio-typst/python/fabricatio_typst
8
+ packages/fabricatio-rag/python/fabricatio_rag
9
+ packages/fabricatio-rule/python/fabricatio_rule
10
+ packages/fabricatio-judge/python/fabricatio_judge
11
+ packages/fabricatio-improve/python/fabricatio_improve
12
+ packages/fabricatio-digest/python/fabricatio_digest
13
+ packages/fabricatio-memory/python/fabricatio_memory
14
+ packages/fabricatio-anki/python/fabricatio_anki
15
+ packages/fabricatio-question/python/fabricatio_question
16
+ packages/fabricatio-tagging/python/fabricatio_tagging
17
+ packages/fabricatio-yue/python/fabricatio_yue
18
+
19
+ omit =
20
+ */__pycache__/*
21
+ */tests/*
22
+
23
+ [report]
24
+ show_missing = True
25
+ precision = 2
26
+ exclude_lines =
27
+ pragma: no cover
28
+ def __repr__
29
+ if self.debug:
30
+ raise AssertionError
31
+ raise NotImplementedError
32
+ if TYPE_CHECKING:
33
+
34
+ [html]
35
+ directory = htmlcov
36
+ title = fabricatio Code Coverage Report
37
+
38
+ [xml]
39
+ output = coverage.xml
40
+
41
+ [json]
42
+ output = coverage.json
@@ -51,6 +51,7 @@ jobs:
51
51
  - name: Test
52
52
  run: |
53
53
  make test
54
+ uv run coveralls
54
55
 
55
56
 
56
57
 
@@ -17,12 +17,6 @@ version = "2.0.1"
17
17
  source = "registry+https://github.com/rust-lang/crates.io-index"
18
18
  checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
19
19
 
20
- [[package]]
21
- name = "adler32"
22
- version = "1.2.0"
23
- source = "registry+https://github.com/rust-lang/crates.io-index"
24
- checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234"
25
-
26
20
  [[package]]
27
21
  name = "ahash"
28
22
  version = "0.3.8"
@@ -43,18 +37,6 @@ dependencies = [
43
37
  "version_check",
44
38
  ]
45
39
 
46
- [[package]]
47
- name = "ahash"
48
- version = "0.8.12"
49
- source = "registry+https://github.com/rust-lang/crates.io-index"
50
- checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75"
51
- dependencies = [
52
- "cfg-if",
53
- "once_cell",
54
- "version_check",
55
- "zerocopy",
56
- ]
57
-
58
40
  [[package]]
59
41
  name = "aho-corasick"
60
42
  version = "1.1.3"
@@ -440,15 +422,6 @@ dependencies = [
440
422
  "shlex",
441
423
  ]
442
424
 
443
- [[package]]
444
- name = "cedarwood"
445
- version = "0.4.6"
446
- source = "registry+https://github.com/rust-lang/crates.io-index"
447
- checksum = "6d910bedd62c24733263d0bed247460853c9d22e8956bd4cd964302095e04e90"
448
- dependencies = [
449
- "smallvec",
450
- ]
451
-
452
425
  [[package]]
453
426
  name = "census"
454
427
  version = "0.4.2"
@@ -585,15 +558,6 @@ version = "0.8.7"
585
558
  source = "registry+https://github.com/rust-lang/crates.io-index"
586
559
  checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
587
560
 
588
- [[package]]
589
- name = "core2"
590
- version = "0.4.0"
591
- source = "registry+https://github.com/rust-lang/crates.io-index"
592
- checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505"
593
- dependencies = [
594
- "memchr",
595
- ]
596
-
597
561
  [[package]]
598
562
  name = "cpufeatures"
599
563
  version = "0.2.17"
@@ -718,12 +682,6 @@ dependencies = [
718
682
  "syn 2.0.102",
719
683
  ]
720
684
 
721
- [[package]]
722
- name = "dary_heap"
723
- version = "0.3.7"
724
- source = "registry+https://github.com/rust-lang/crates.io-index"
725
- checksum = "04d2cd9c18b9f454ed67da600630b021a8a80bf33f8c95896ab33aaf1c26b728"
726
-
727
685
  [[package]]
728
686
  name = "deck_loader"
729
687
  version = "0.1.0"
@@ -927,6 +885,7 @@ version = "0.0.0"
927
885
  dependencies = [
928
886
  "bincode",
929
887
  "blake3",
888
+ "chrono",
930
889
  "dotenvy",
931
890
  "fabricatio-constants 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
932
891
  "figment",
@@ -950,7 +909,6 @@ name = "fabricatio-memory"
950
909
  version = "0.0.0"
951
910
  dependencies = [
952
911
  "chrono",
953
- "jieba-rs",
954
912
  "once_cell",
955
913
  "pyo3",
956
914
  "serde",
@@ -1200,15 +1158,6 @@ dependencies = [
1200
1158
  "slab",
1201
1159
  ]
1202
1160
 
1203
- [[package]]
1204
- name = "fxhash"
1205
- version = "0.2.1"
1206
- source = "registry+https://github.com/rust-lang/crates.io-index"
1207
- checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c"
1208
- dependencies = [
1209
- "byteorder",
1210
- ]
1211
-
1212
1161
  [[package]]
1213
1162
  name = "genanki-rs"
1214
1163
  version = "0.4.0"
@@ -1317,16 +1266,6 @@ dependencies = [
1317
1266
  "ahash 0.7.8",
1318
1267
  ]
1319
1268
 
1320
- [[package]]
1321
- name = "hashbrown"
1322
- version = "0.14.5"
1323
- source = "registry+https://github.com/rust-lang/crates.io-index"
1324
- checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
1325
- dependencies = [
1326
- "ahash 0.8.12",
1327
- "allocator-api2",
1328
- ]
1329
-
1330
1269
  [[package]]
1331
1270
  name = "hashbrown"
1332
1271
  version = "0.15.4"
@@ -1643,29 +1582,6 @@ dependencies = [
1643
1582
  "icu_properties",
1644
1583
  ]
1645
1584
 
1646
- [[package]]
1647
- name = "include-flate"
1648
- version = "0.3.0"
1649
- source = "registry+https://github.com/rust-lang/crates.io-index"
1650
- checksum = "df49c16750695486c1f34de05da5b7438096156466e7f76c38fcdf285cf0113e"
1651
- dependencies = [
1652
- "include-flate-codegen",
1653
- "lazy_static",
1654
- "libflate",
1655
- ]
1656
-
1657
- [[package]]
1658
- name = "include-flate-codegen"
1659
- version = "0.2.0"
1660
- source = "registry+https://github.com/rust-lang/crates.io-index"
1661
- checksum = "8c5b246c6261be723b85c61ecf87804e8ea4a35cb68be0ff282ed84b95ffe7d7"
1662
- dependencies = [
1663
- "libflate",
1664
- "proc-macro2",
1665
- "quote",
1666
- "syn 2.0.102",
1667
- ]
1668
-
1669
1585
  [[package]]
1670
1586
  name = "indexmap"
1671
1587
  version = "2.9.0"
@@ -1738,30 +1654,6 @@ version = "1.0.15"
1738
1654
  source = "registry+https://github.com/rust-lang/crates.io-index"
1739
1655
  checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c"
1740
1656
 
1741
- [[package]]
1742
- name = "jieba-macros"
1743
- version = "0.7.1"
1744
- source = "registry+https://github.com/rust-lang/crates.io-index"
1745
- checksum = "7c676b32a471d3cfae8dac2ad2f8334cd52e53377733cca8c1fb0a5062fec192"
1746
- dependencies = [
1747
- "phf_codegen",
1748
- ]
1749
-
1750
- [[package]]
1751
- name = "jieba-rs"
1752
- version = "0.7.3"
1753
- source = "registry+https://github.com/rust-lang/crates.io-index"
1754
- checksum = "b06096b4b61fb4bfdbf16c6a968ea2d6be1ac9617cf3db741c3b641e6c290a35"
1755
- dependencies = [
1756
- "cedarwood",
1757
- "fxhash",
1758
- "include-flate",
1759
- "jieba-macros",
1760
- "lazy_static",
1761
- "phf",
1762
- "regex",
1763
- ]
1764
-
1765
1657
  [[package]]
1766
1658
  name = "jobserver"
1767
1659
  version = "0.1.33"
@@ -1782,12 +1674,6 @@ dependencies = [
1782
1674
  "wasm-bindgen",
1783
1675
  ]
1784
1676
 
1785
- [[package]]
1786
- name = "lazy_static"
1787
- version = "1.5.0"
1788
- source = "registry+https://github.com/rust-lang/crates.io-index"
1789
- checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
1790
-
1791
1677
  [[package]]
1792
1678
  name = "levenshtein_automata"
1793
1679
  version = "0.2.1"
@@ -1800,30 +1686,6 @@ version = "0.2.172"
1800
1686
  source = "registry+https://github.com/rust-lang/crates.io-index"
1801
1687
  checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa"
1802
1688
 
1803
- [[package]]
1804
- name = "libflate"
1805
- version = "2.1.0"
1806
- source = "registry+https://github.com/rust-lang/crates.io-index"
1807
- checksum = "45d9dfdc14ea4ef0900c1cddbc8dcd553fbaacd8a4a282cf4018ae9dd04fb21e"
1808
- dependencies = [
1809
- "adler32",
1810
- "core2",
1811
- "crc32fast",
1812
- "dary_heap",
1813
- "libflate_lz77",
1814
- ]
1815
-
1816
- [[package]]
1817
- name = "libflate_lz77"
1818
- version = "2.1.0"
1819
- source = "registry+https://github.com/rust-lang/crates.io-index"
1820
- checksum = "e6e0d73b369f386f1c44abd9c570d5318f55ccde816ff4b562fa452e5182863d"
1821
- dependencies = [
1822
- "core2",
1823
- "hashbrown 0.14.5",
1824
- "rle-decode-fast",
1825
- ]
1826
-
1827
1689
  [[package]]
1828
1690
  name = "libm"
1829
1691
  version = "0.2.15"
@@ -2276,16 +2138,6 @@ dependencies = [
2276
2138
  "phf_shared",
2277
2139
  ]
2278
2140
 
2279
- [[package]]
2280
- name = "phf_codegen"
2281
- version = "0.11.3"
2282
- source = "registry+https://github.com/rust-lang/crates.io-index"
2283
- checksum = "aef8048c789fa5e851558d709946d6d79a8ff88c0440c587967f8e94bfb1216a"
2284
- dependencies = [
2285
- "phf_generator",
2286
- "phf_shared",
2287
- ]
2288
-
2289
2141
  [[package]]
2290
2142
  name = "phf_generator"
2291
2143
  version = "0.11.3"
@@ -2814,12 +2666,6 @@ dependencies = [
2814
2666
  "windows-sys 0.52.0",
2815
2667
  ]
2816
2668
 
2817
- [[package]]
2818
- name = "rle-decode-fast"
2819
- version = "1.0.3"
2820
- source = "registry+https://github.com/rust-lang/crates.io-index"
2821
- checksum = "3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422"
2822
-
2823
2669
  [[package]]
2824
2670
  name = "rusqlite"
2825
2671
  version = "0.25.4"
@@ -28,10 +28,11 @@ clean:
28
28
  rm -rf $(DIST)/* $(DATA)/*
29
29
 
30
30
 
31
+ test_raw:
32
+ uv run pytest python/tests packages/*/python/tests --cov --cov-report=term --cov-report=html --cov-report=xml
31
33
  test:dev
32
34
  uv sync --extra full
33
- uv run pytest python/tests packages/*/python/tests
34
-
35
+ make test_raw
35
36
  publish: bdist
36
37
  uv run subpackages.py --pyversion $(PY)
37
38
  uvx -p $(PY) --project . maturin publish || true
@@ -39,4 +40,4 @@ publish: bdist
39
40
 
40
41
  docs:
41
42
  make -C docs html
42
- .PHONY: dev bdist clean publish tests bins dirs all docs
43
+ .PHONY: dev bdist clean publish test test_raw bins dirs all docs
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fabricatio
3
- Version: 0.5.0.dev1
3
+ Version: 0.5.1.dev1
4
4
  Classifier: License :: OSI Approved :: MIT License
5
5
  Classifier: Programming Language :: Rust
6
6
  Classifier: Programming Language :: Python :: 3.12
@@ -72,6 +72,7 @@ Project-URL: Issues, https://github.com/Whth/fabricatio/issues
72
72
  [![Build Package](https://github.com/Whth/fabricatio/actions/workflows/build-package.yaml/badge.svg)](https://github.com/Whth/fabricatio/actions/workflows/build-package.yaml)
73
73
  [![Ruff Lint](https://github.com/Whth/fabricatio/actions/workflows/ruff.yaml/badge.svg)](https://github.com/Whth/fabricatio/actions/workflows/ruff.yaml)
74
74
  [![Tests](https://github.com/Whth/fabricatio/actions/workflows/tests.yaml/badge.svg)](https://github.com/Whth/fabricatio/actions/workflows/tests.yaml)
75
+ [![Coverage Status](https://coveralls.io/repos/github/Whth/fabricatio/badge.svg)](https://coveralls.io/github/Whth/fabricatio)
75
76
  ![GitHub Issues](https://img.shields.io/github/issues/Whth/fabricatio)
76
77
  ![GitHub Pull Requests](https://img.shields.io/github/issues-pr/Whth/fabricatio)
77
78
  ![GitHub Stars](https://img.shields.io/github/stars/Whth/fabricatio)
@@ -119,35 +120,32 @@ make bdist
119
120
  ### Basic Example
120
121
 
121
122
  ```python
122
- import asyncio
123
- from fabricatio import Action, Role, Task, logger, WorkFlow, Event
123
+ """Example of a simple hello world program using fabricatio."""
124
+
124
125
  from typing import Any
125
126
 
127
+ from fabricatio import Action, Event, Role, Task, WorkFlow, logger
128
+
126
129
 
127
130
  class Hello(Action):
128
- name: str = "hello"
131
+ """Action that says hello."""
132
+
129
133
  output_key: str = "task_output"
130
134
 
131
- async def _execute(self, task_input: Task[str], **_) -> Any:
135
+ async def _execute(self, **_) -> Any:
132
136
  ret = "Hello fabricatio!"
133
137
  logger.info("executing talk action")
134
138
  return ret
135
139
 
140
+ """Main function."""
136
141
 
137
- async def main() -> None:
138
- Role(
139
- name="talker",
140
- description="talker role",
141
- registry={Event.quick_instantiate("talk"): WorkFlow(name="talk", steps=(Hello,))}
142
- )
143
142
 
144
- task = Task(name="say hello", goals=["say hello"], description="say hello to the world")
145
- result = await task.delegate("talk")
146
- logger.success(f"Result: {result}")
143
+ (Role()
144
+ .register_workflow(Event.quick_instantiate("talk"), WorkFlow(name="talk", steps=(Hello,)))
145
+ .dispatch())
147
146
 
147
+ assert Task(name="say hello").delegate_blocking("talk") == "Hello fabricatio!"
148
148
 
149
- if __name__ == "__main__":
150
- asyncio.run(main())
151
149
  ```
152
150
 
153
151
  ### Examples
@@ -20,6 +20,7 @@
20
20
  [![Build Package](https://github.com/Whth/fabricatio/actions/workflows/build-package.yaml/badge.svg)](https://github.com/Whth/fabricatio/actions/workflows/build-package.yaml)
21
21
  [![Ruff Lint](https://github.com/Whth/fabricatio/actions/workflows/ruff.yaml/badge.svg)](https://github.com/Whth/fabricatio/actions/workflows/ruff.yaml)
22
22
  [![Tests](https://github.com/Whth/fabricatio/actions/workflows/tests.yaml/badge.svg)](https://github.com/Whth/fabricatio/actions/workflows/tests.yaml)
23
+ [![Coverage Status](https://coveralls.io/repos/github/Whth/fabricatio/badge.svg)](https://coveralls.io/github/Whth/fabricatio)
23
24
  ![GitHub Issues](https://img.shields.io/github/issues/Whth/fabricatio)
24
25
  ![GitHub Pull Requests](https://img.shields.io/github/issues-pr/Whth/fabricatio)
25
26
  ![GitHub Stars](https://img.shields.io/github/stars/Whth/fabricatio)
@@ -67,35 +68,32 @@ make bdist
67
68
  ### Basic Example
68
69
 
69
70
  ```python
70
- import asyncio
71
- from fabricatio import Action, Role, Task, logger, WorkFlow, Event
71
+ """Example of a simple hello world program using fabricatio."""
72
+
72
73
  from typing import Any
73
74
 
75
+ from fabricatio import Action, Event, Role, Task, WorkFlow, logger
76
+
74
77
 
75
78
  class Hello(Action):
76
- name: str = "hello"
79
+ """Action that says hello."""
80
+
77
81
  output_key: str = "task_output"
78
82
 
79
- async def _execute(self, task_input: Task[str], **_) -> Any:
83
+ async def _execute(self, **_) -> Any:
80
84
  ret = "Hello fabricatio!"
81
85
  logger.info("executing talk action")
82
86
  return ret
83
87
 
88
+ """Main function."""
84
89
 
85
- async def main() -> None:
86
- Role(
87
- name="talker",
88
- description="talker role",
89
- registry={Event.quick_instantiate("talk"): WorkFlow(name="talk", steps=(Hello,))}
90
- )
91
90
 
92
- task = Task(name="say hello", goals=["say hello"], description="say hello to the world")
93
- result = await task.delegate("talk")
94
- logger.success(f"Result: {result}")
91
+ (Role()
92
+ .register_workflow(Event.quick_instantiate("talk"), WorkFlow(name="talk", steps=(Hello,)))
93
+ .dispatch())
95
94
 
95
+ assert Task(name="say hello").delegate_blocking("talk") == "Hello fabricatio!"
96
96
 
97
- if __name__ == "__main__":
98
- asyncio.run(main())
99
97
  ```
100
98
 
101
99
  ### Examples
@@ -20,12 +20,6 @@ class Hello(Action):
20
20
  """Main function."""
21
21
 
22
22
 
23
- Role(
24
- name="talker",
25
- description="talker role",
26
- registry={Event.quick_instantiate("talk"): WorkFlow(name="talk", steps=(Hello,))},
27
- )
23
+ (Role().register_workflow(Event.quick_instantiate("talk"), WorkFlow(name="talk", steps=(Hello,))).dispatch())
28
24
 
29
-
30
- if __name__ == "__main__":
31
- task.delegate_blocking("talk")
25
+ logger.success(task.delegate_blocking("talk"))
@@ -1,19 +1,9 @@
1
1
  """Example of using the library."""
2
2
 
3
- from pathlib import Path
4
-
5
- from fabricatio import Action, Event, Role, Task, WorkFlow
6
- from fabricatio.capabilities import Lyricize
3
+ from fabricatio import Event, Role, Task, WorkFlow
4
+ from fabricatio.actions import Compose
5
+ from fabricatio.models import Song
7
6
  from fabricatio_core.utils import ok
8
- from fabricatio_yue.models.segment import Song
9
-
10
-
11
- class Compose(Action, Lyricize):
12
- """Compose a song."""
13
-
14
- async def _execute(self, req: str, output: Path, **cxt) -> Song:
15
- return ok(await self.lyricize(req)).save_to(output)
16
-
17
7
 
18
8
  (
19
9
  Role()
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "fabricatio-yue"
3
- version = "0.1.0-dev10"
3
+ version = "0.2.0-dev1"
4
4
  description = "An extension of fabricatio, provide capability to compose lyrics that can be used in music generation with YuE."
5
5
  readme = "README.md"
6
6
  license = { file = "LICENSE" }
@@ -29,6 +29,12 @@ dev = [
29
29
  "pytest",
30
30
  ]
31
31
 
32
+ [project.optional-dependencies]
33
+ cli = [
34
+ "questionary>=2.1.0",
35
+ "typer-slim[standard]>=0.15.2",
36
+ ]
37
+
32
38
 
33
39
  [build-system]
34
40
  requires = ["hatchling"]
@@ -41,16 +47,23 @@ sources = ["python"]
41
47
  url = "https://mirrors.bfsu.edu.cn/pypi/web/simple"
42
48
  default = true
43
49
 
44
- [[tool.uv.index]]
45
- url = "https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple"
46
-
47
- [[tool.uv.index]]
48
- url = "https://mirrors.huaweicloud.com/repository/pypi/simple"
50
+ [tool.uv.sources]
51
+ fabricatio = { workspace = true }
49
52
 
50
53
  [project.urls]
51
54
  Homepage = "https://github.com/Whth/fabricatio"
52
55
  Repository = "https://github.com/Whth/fabricatio"
53
56
  Issues = "https://github.com/Whth/fabricatio/issues"
54
57
 
58
+ [[tool.uv.index]]
59
+ url = "https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple"
60
+
61
+ [[tool.uv.index]]
62
+ url = "https://mirrors.huaweicloud.com/repository/pypi/simple"
63
+
55
64
  [[tool.uv.index]]
56
65
  url = "https://mirrors.aliyun.com/pypi/simple/"
66
+
67
+
68
+ [project.scripts]
69
+ yuek = "fabricatio_yue.cli:main"
@@ -0,0 +1,16 @@
1
+ """Compose action for creating songs."""
2
+
3
+ from pathlib import Path
4
+
5
+ from fabricatio import Action
6
+ from fabricatio.capabilities import Lyricize
7
+ from fabricatio_core.utils import ok
8
+
9
+ from fabricatio_yue.models.segment import Song
10
+
11
+
12
+ class Compose(Action, Lyricize):
13
+ """Compose a song."""
14
+
15
+ async def _execute(self, req: str, output: Path, **cxt) -> Song:
16
+ return ok(await self.lyricize(req)).save_to(output)
@@ -0,0 +1,60 @@
1
+ """Command-line interface for Fabricatio Yue song composition."""
2
+
3
+ from importlib.util import find_spec
4
+
5
+ from fabricatio_core.decorators import precheck_package
6
+
7
+ if not find_spec("typer"):
8
+ raise ModuleNotFoundError(
9
+ "Please install fabricatio-yue with 'pip install fabricatio-yue[cli]' or 'uv tool install fabricatio-yue[cli]'"
10
+ )
11
+
12
+ from pathlib import Path
13
+
14
+ from typer import Option, Typer
15
+
16
+ app = Typer(
17
+ name="yuek",
18
+ help="Compose lyrics with Fabricatio!",
19
+ epilog="For more information, visit: https://github.com/Whth/fabricatio",
20
+ short_help="Fabricatio Yue CLI for song composition",
21
+ )
22
+
23
+
24
+ @app.command()
25
+ @precheck_package(
26
+ "questionary",
27
+ "Please install fabricatio-yue with 'pip install fabricatio-yue[cli]' or 'uv tool install fabricatio-yue[cli]'",
28
+ )
29
+ def compose(
30
+ requirement: str = Option(None, "-r", "--requirement", help="Song requirement/prompt"),
31
+ output: Path = Option(Path("song"), "-o", "--output", help="Output file folder"),
32
+ ) -> None:
33
+ """Compose a song based on your requirements."""
34
+ from fabricatio import Event, Role, Task, WorkFlow
35
+ from fabricatio_core.utils import ok
36
+ from questionary import text
37
+
38
+ from fabricatio_yue.actions.compose import Compose
39
+
40
+ Role().register_workflow(
41
+ Event.quick_instantiate(ns := "compose"), WorkFlow(steps=(Compose().to_task_output(),))
42
+ ).dispatch()
43
+
44
+ ok(
45
+ Task(name="compose song")
46
+ .update_init_context(
47
+ req=(
48
+ requirement
49
+ or ok(text("What kind of song would you like to compose?").ask(), "No requirement provided!")
50
+ ),
51
+ output=output,
52
+ )
53
+ .delegate_blocking(ns),
54
+ "Failed to compose song!",
55
+ )
56
+
57
+
58
+ def main() -> None:
59
+ """Entry point for the CLI application."""
60
+ app()
@@ -87,7 +87,7 @@ class Song(SketchedAble, WithBriefing):
87
87
  @property
88
88
  def briefing(self) -> str:
89
89
  """Generate a briefing of the song including its genre tags and duration."""
90
- return f"# {self.name}\n>{self.description}\n\nDuration: {self.duration} s.\n\n{self.block(" ".join(self.genres), 'genres')} \n\n---\n"
90
+ return f"# {self.name}\n>{self.description}\n\nDuration: {self.duration} s.\n\n{self.block(' '.join(self.genres), 'genres')} \n\n---\n"
91
91
 
92
92
  def save_to(self, parent_dir: str | Path) -> Self:
93
93
  """Save the song to a directory.
@@ -103,7 +103,10 @@ class Song(SketchedAble, WithBriefing):
103
103
 
104
104
  logger.info(f"Saving song to {file_path.as_posix()}")
105
105
 
106
- out = f"{self.briefing}\n" + "\n".join(f'## Section {i}. {seg.section_type.capitalize()}\n\n{self._wrapp(seg)}' for i,seg in enumerate(self.segments))
106
+ out = f"{self.briefing}\n" + "\n".join(
107
+ f"## Section {i}. {seg.section_type.capitalize()}\n\n{self._wrapp(seg)}"
108
+ for i, seg in enumerate(self.segments)
109
+ )
107
110
 
108
111
  file_path.write_text(out, encoding="utf-8")
109
112
 
@@ -112,12 +115,12 @@ class Song(SketchedAble, WithBriefing):
112
115
  def _wrapp(self, segment: Segment) -> str:
113
116
  return (
114
117
  f"Duration: {segment.duration} s.\n\n"
115
-
116
- +
117
- (f"Extra Genres: {self.block(' '.join(segment.extra_genres), 'genres')}\n"
118
- f"Assembled Genres: {self.block(' '.join(self.genres + segment.extra_genres), 'genres')}") if segment.extra_genres else ""
119
- +
120
- f"Lyrics:{self.block(segment.assemble, 'lyrics')}"
118
+ + (
119
+ f"Extra Genres: {self.block(' '.join(segment.extra_genres), 'genres')}\n"
120
+ f"Assembled Genres: {self.block(' '.join(self.genres + segment.extra_genres), 'genres')}"
121
+ )
122
+ if segment.extra_genres
123
+ else "" + f"Lyrics:{self.block(segment.assemble, 'lyrics')}"
121
124
  )
122
125
 
123
126
  @staticmethod