(self)
| 171 | return "\n".join(lines) |
| 172 | |
| 173 | def to_dict(self) -> dict: |
| 174 | data = {"tasks": [], "revision_log": self._revision_log} |
| 175 | for t in self._tasks.values(): |
| 176 | t_dict = asdict(t) |
| 177 | # Convert TaskStatus enum to string for JSON serialization |
| 178 | if isinstance(t_dict.get("status"), TaskStatus): |
| 179 | t_dict["status"] = t_dict["status"].value |
| 180 | data["tasks"].append(t_dict) |
| 181 | return data |
| 182 | |
| 183 | def _persist(self) -> None: |
| 184 | if not self._persist_path: |
no test coverage detected