feat(devgen/modules): streamline provider guard and enhance ManifestInspector flexibility

Add token‑limit error handling and switch git diff to null‑delimited output for reliable file detection.
This commit is contained in:
sankalp committed 2026-07-03 18:07:26 +05:45
1 parent 11a9db7986
commit f7001d4243
3 files changed
+30 -20

No files matched your search

+11 -10
View File
@@ -143,13 +143,14 @@ class ManifestInspector:
"""
@staticmethod
def summary() -> str:
def summary(cwd: Optional[Path] = None) -> str:
cwd = cwd or get_git_root() or Path(".")
lines = [
s
for s in (
ManifestInspector._pyproject(),
ManifestInspector._package_json(),
ManifestInspector._requirements(),
ManifestInspector._pyproject(cwd),
ManifestInspector._package_json(cwd),
ManifestInspector._requirements(cwd),
)
if s
]
@@ -164,8 +165,8 @@ class ManifestInspector:
return re.split(r"[><=!~\[]", spec, 1)[0].strip()
@staticmethod
def _pyproject() -> Optional[str]:
path = Path("pyproject.toml")
def _pyproject(cwd: Path) -> Optional[str]:
path = cwd / "pyproject.toml"
if not path.exists():
return None
try:
@@ -186,8 +187,8 @@ class ManifestInspector:
return f"[pyproject.toml] {' '.join(parts)}" if parts else None
@staticmethod
def _package_json() -> Optional[str]:
path = Path("package.json")
def _package_json(cwd: Path) -> Optional[str]:
path = cwd / "package.json"
if not path.exists():
return None
try:
@@ -203,8 +204,8 @@ class ManifestInspector:
return f"[package.json] {' '.join(parts)}" if parts else None
@staticmethod
def _requirements() -> Optional[str]:
path = Path("requirements.txt")
def _requirements(cwd: Path) -> Optional[str]:
path = cwd / "requirements.txt"
if not path.exists():
return None
try: