feat: rename bugfix-ship/requirement-flow to short-ship/long-ship with shared ship records
short-ship and long-ship share one ship-id record under .pouch/ship/<id>/. specifier writes PRDs into spec/; delivery-loop appends evidence pointers. Old names stay as deprecation stubs so existing installs keep working.
This commit is contained in:
+9
-1
@@ -59,6 +59,10 @@ def _parse_scalar(raw: str) -> Any:
|
||||
return True
|
||||
if lower == "false":
|
||||
return False
|
||||
if raw == "[]":
|
||||
return []
|
||||
if raw == "{}":
|
||||
return {}
|
||||
if raw.isdigit() or (raw.startswith("-") and raw[1:].isdigit()):
|
||||
return int(raw)
|
||||
return raw
|
||||
@@ -196,7 +200,11 @@ def _dump(data: Any, indent: int = 0) -> str:
|
||||
return f"{pad}{{}}\n"
|
||||
lines: list[str] = []
|
||||
for key, value in data.items():
|
||||
if isinstance(value, (dict, list)):
|
||||
if isinstance(value, list) and not value:
|
||||
lines.append(f"{pad}{key}: []")
|
||||
elif isinstance(value, dict) and not value:
|
||||
lines.append(f"{pad}{key}: {{}}")
|
||||
elif isinstance(value, (dict, list)):
|
||||
if isinstance(value, list) and value and all(isinstance(x, str) for x in value):
|
||||
lines.append(f"{pad}{key}:")
|
||||
for item in value:
|
||||
|
||||
Reference in New Issue
Block a user