sumd 0.3.34__tar.gz → 0.3.35__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 (35) hide show
  1. {sumd-0.3.34 → sumd-0.3.35}/CHANGELOG.md +21 -0
  2. {sumd-0.3.34 → sumd-0.3.35}/PKG-INFO +6 -6
  3. {sumd-0.3.34 → sumd-0.3.35}/README.md +5 -5
  4. {sumd-0.3.34 → sumd-0.3.35}/pyproject.toml +1 -1
  5. {sumd-0.3.34 → sumd-0.3.35}/sumd/__init__.py +1 -1
  6. {sumd-0.3.34 → sumd-0.3.35}/sumd/validator.py +2 -2
  7. {sumd-0.3.34 → sumd-0.3.35}/.gitignore +0 -0
  8. {sumd-0.3.34 → sumd-0.3.35}/LICENSE +0 -0
  9. {sumd-0.3.34 → sumd-0.3.35}/sumd/cli.py +0 -0
  10. {sumd-0.3.34 → sumd-0.3.35}/sumd/extractor.py +0 -0
  11. {sumd-0.3.34 → sumd-0.3.35}/sumd/generator.py +0 -0
  12. {sumd-0.3.34 → sumd-0.3.35}/sumd/mcp_server.py +0 -0
  13. {sumd-0.3.34 → sumd-0.3.35}/sumd/models.py +0 -0
  14. {sumd-0.3.34 → sumd-0.3.35}/sumd/parser.py +0 -0
  15. {sumd-0.3.34 → sumd-0.3.35}/sumd/pipeline.py +0 -0
  16. {sumd-0.3.34 → sumd-0.3.35}/sumd/renderer.py +0 -0
  17. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/__init__.py +0 -0
  18. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/api_stubs.py +0 -0
  19. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/architecture.py +0 -0
  20. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/base.py +0 -0
  21. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/call_graph.py +0 -0
  22. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/code_analysis.py +0 -0
  23. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/configuration.py +0 -0
  24. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/dependencies.py +0 -0
  25. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/deployment.py +0 -0
  26. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/environment.py +0 -0
  27. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/extras.py +0 -0
  28. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/interfaces.py +0 -0
  29. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/metadata.py +0 -0
  30. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/quality.py +0 -0
  31. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/refactor_analysis.py +0 -0
  32. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/source_snippets.py +0 -0
  33. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/test_contracts.py +0 -0
  34. {sumd-0.3.34 → sumd-0.3.35}/sumd/sections/workflows.py +0 -0
  35. {sumd-0.3.34 → sumd-0.3.35}/sumd/toon_parser.py +0 -0
@@ -7,6 +7,27 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.3.35] - 2026-04-23
11
+
12
+ ### Docs
13
+ - Update README.md
14
+ - Update SUMD.md
15
+ - Update docs/README.md
16
+ - Update project/context.md
17
+
18
+ ### Other
19
+ - Update app.doql.less
20
+ - Update project/analysis.toon.yaml
21
+ - Update project/calls.mmd
22
+ - Update project/calls.png
23
+ - Update project/calls.toon.yaml
24
+ - Update project/calls.yaml
25
+ - Update project/compact_flow.mmd
26
+ - Update project/compact_flow.png
27
+ - Update project/duplication.toon.yaml
28
+ - Update project/evolution.toon.yaml
29
+ - ... and 7 more files
30
+
10
31
  ## [0.3.34] - 2026-04-23
11
32
 
12
33
  ### Docs
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: sumd
3
- Version: 0.3.34
3
+ Version: 0.3.35
4
4
  Summary: SUMD - Structured Unified Markdown Descriptor for AI-aware project documentation
5
5
  Project-URL: Homepage, https://github.com/tom/statement
6
6
  Project-URL: Repository, https://github.com/tom/statement
@@ -41,17 +41,17 @@ Description-Content-Type: text/markdown
41
41
 
42
42
  ## AI Cost Tracking
43
43
 
44
- ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.3.34-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
45
- ![AI Cost](https://img.shields.io/badge/AI%20Cost-$7.50-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-21.6h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
44
+ ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.3.35-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
45
+ ![AI Cost](https://img.shields.io/badge/AI%20Cost-$7.50-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-21.9h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
46
46
 
47
- - 🤖 **LLM usage:** $7.5000 (64 commits)
48
- - 👤 **Human dev:** ~$2163 (21.6h @ $100/h, 30min dedup)
47
+ - 🤖 **LLM usage:** $7.5000 (65 commits)
48
+ - 👤 **Human dev:** ~$2193 (21.9h @ $100/h, 30min dedup)
49
49
 
50
50
  Generated on 2026-04-23 using [openrouter/qwen/qwen3-coder-next](https://openrouter.ai/qwen/qwen3-coder-next)
51
51
 
52
52
  ---
53
53
 
54
- ![Version](https://img.shields.io/badge/version-0.3.34-blue) ![Python](https://img.shields.io/badge/python-3.10+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
54
+ ![Version](https://img.shields.io/badge/version-0.3.35-blue) ![Python](https://img.shields.io/badge/python-3.10+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
55
55
 
56
56
  **SUMD** (Structured Unified Markdown Descriptor) is a semantic project descriptor format in Markdown.
57
57
  It defines intent, structure, execution entry points, and the mental model of a system for both humans and LLMs.
@@ -3,17 +3,17 @@
3
3
 
4
4
  ## AI Cost Tracking
5
5
 
6
- ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.3.34-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
7
- ![AI Cost](https://img.shields.io/badge/AI%20Cost-$7.50-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-21.6h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
6
+ ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.3.35-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
7
+ ![AI Cost](https://img.shields.io/badge/AI%20Cost-$7.50-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-21.9h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
8
8
 
9
- - 🤖 **LLM usage:** $7.5000 (64 commits)
10
- - 👤 **Human dev:** ~$2163 (21.6h @ $100/h, 30min dedup)
9
+ - 🤖 **LLM usage:** $7.5000 (65 commits)
10
+ - 👤 **Human dev:** ~$2193 (21.9h @ $100/h, 30min dedup)
11
11
 
12
12
  Generated on 2026-04-23 using [openrouter/qwen/qwen3-coder-next](https://openrouter.ai/qwen/qwen3-coder-next)
13
13
 
14
14
  ---
15
15
 
16
- ![Version](https://img.shields.io/badge/version-0.3.34-blue) ![Python](https://img.shields.io/badge/python-3.10+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
16
+ ![Version](https://img.shields.io/badge/version-0.3.35-blue) ![Python](https://img.shields.io/badge/python-3.10+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
17
17
 
18
18
  **SUMD** (Structured Unified Markdown Descriptor) is a semantic project descriptor format in Markdown.
19
19
  It defines intent, structure, execution entry points, and the mental model of a system for both humans and LLMs.
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "sumd"
7
- version = "0.3.34"
7
+ version = "0.3.35"
8
8
  description = "SUMD - Structured Unified Markdown Descriptor for AI-aware project documentation"
9
9
  readme = "README.md"
10
10
  license = "Apache-2.0"
@@ -4,7 +4,7 @@ SUMD is a semantic project descriptor format in Markdown that defines intent,
4
4
  structure, execution entry points, and mental model of a system for both humans and LLMs.
5
5
  """
6
6
 
7
- __version__ = "0.3.34"
7
+ __version__ = "0.3.35"
8
8
 
9
9
  from sumd.models import SUMDDocument
10
10
  from sumd.parser import (
@@ -91,8 +91,8 @@ def _validate_deps_body(body: str, path: str) -> list[str]:
91
91
  line = line.strip()
92
92
  if not line or line.startswith("#"):
93
93
  continue
94
- # PEP 508 lookalike: name with optional extras/version
95
- if not re.match(r"^[A-Za-z0-9_\-\.]+", line):
94
+ # PEP 508 / npm lookalike: name with optional extras/version
95
+ if not re.match(r"^(?:@[A-Za-z0-9_\-\.]+\/)?[A-Za-z0-9_\-\.]+", line):
96
96
  issues.append(f"deps line {i} in {path} looks invalid: {line!r}")
97
97
  return issues
98
98
 
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
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
File without changes
File without changes
File without changes