|
| 1 | +## v0.0.93 (2025-12-27) |
| 2 | + |
| 3 | +### Feat |
| 4 | + |
| 5 | +- enhance prompt functions with language support and output schema |
| 6 | +- add update command to Makefile for prompt updates based on code changes |
| 7 | +- add language parameter to various functions for improved language handling |
| 8 | +- implement .env file key management and improve project root detection |
| 9 | +- enhance cloud configuration and error handling |
| 10 | + |
| 11 | +### Fix |
| 12 | + |
| 13 | +- remove temporary 'NEW PARAMETER' comment |
| 14 | +- include Vertex AI credentials in retry calls for llm_invoke |
| 15 | + |
1 | 16 | ## v0.0.92 (2025-12-25) |
2 | 17 |
|
3 | 18 | ### Feat |
4 | 19 |
|
5 | | -- add cloud configuration examples and enhance path handling |
6 | | -- support subdirectory basenames in output path generation |
7 | | -- implement environment variable checks for cloud execution in code generator |
8 | | -- enhance error handling for cloud execution in code generator |
9 | | -- add centralized cloud configuration module for PDD CLI |
10 | | -- enhance cloud URL configuration and authentication handling |
11 | | -- enhance backup organization and schema validation |
| 20 | +- **Centralized Cloud Configuration:** Added `pdd/core/cloud.py` module providing `CloudConfig` class for consistent cloud URL configuration and JWT token handling across all cloud-enabled commands. Supports `PDD_CLOUD_URL` for testing against different environments (local emulator, staging, production) and `PDD_JWT_TOKEN` for pre-injected tokens in CI/CD pipelines. |
| 21 | + |
| 22 | +- **Subdirectory Basename Support:** Updated `generate_output_paths`, `sync_main`, and `sync_orchestration` to handle module basenames with subdirectory paths (e.g., `core/cloud`). Directory structure is preserved in output filenames: `core/cloud` with pattern `test_{basename}.py` produces `core/test_cloud.py`. |
| 23 | + |
| 24 | +- **Enhanced Cloud Error Handling:** Cloud code generation now distinguishes between recoverable errors (5xx, timeouts → local fallback) and non-recoverable errors (401 auth, 402 insufficient credits, 403 access denied, 400 validation → immediate failure with clear error message). Added `PDD_CLOUD_ONLY` and `PDD_NO_LOCAL_FALLBACK` env vars to disable local fallback. |
| 25 | + |
| 26 | +- **CI/Headless Mode Detection:** Added automatic TTY detection for CI/non-interactive environments. When `--force` is set and running in headless mode (non-TTY), API key prompts are skipped and cloud authentication failures fail gracefully instead of blocking on user input. |
12 | 27 |
|
13 | 28 | ### Fix |
14 | 29 |
|
15 | | -- resolve path resolution mismatch in sync_orchestration |
16 | | -- mock isatty in test fixture for headless mode compatibility |
17 | | -- extend --force to skip API key prompts in CI/headless environments |
18 | | -- add headless mode detection for CI/non-TTY environments |
19 | | -- add timeout and non-TTY mode for pdd sync in CI |
20 | | -- rename code.py to buggy.py in agentic test fixtures |
21 | | -- correct typo in prompt tag from <proompt_content> to <prompt_content> |
22 | | -- package docs and add fallback path resolution for includes |
| 30 | +- **Path Resolution Mismatch (Issue #177):** Fixed `sync_orchestration` to use absolute paths when calling `code_generator_main` and `context_generator_main`, preventing path resolution mode conflicts between sync (`cwd`) and generate (`config_base`). Also ensures output directories exist before writing. |
23 | 31 |
|
24 | | -### Refactor |
| 32 | +- **Package Include Resolution (Issue #175):** `preprocess.py` now falls back to package directory when resolving `<include>` directives, allowing bundled docs like `docs/prompting_guide.md` to be found after pip/wheel installation. |
| 33 | + |
| 34 | +- **Sync Log Subdirectory Handling:** All sync log and fingerprint file operations now use `_safe_basename()` to properly handle subdirectory basenames in filenames. |
| 35 | + |
| 36 | +- **Prompt Tag Typo:** Corrected `<proompt_content>` to `<prompt_content>` in agentic fix prompt. |
| 37 | + |
| 38 | +- **Agentic Test Fixtures:** Renamed `code.py` to `buggy.py` in agentic test fixtures to avoid confusion with module names. |
| 39 | + |
| 40 | +### CI |
| 41 | + |
| 42 | +- **Package Install Test Workflow:** Added `.github/workflows/package-test.yml` to validate that packaged PDD correctly resolves `<include>` directives for bundled docs when installed via pip/wheel (not editable install). |
| 43 | + |
| 44 | +### Tests |
25 | 45 |
|
26 | | -- remove local _safe_basename function and update tests for subdirectory handling |
27 | | -- centralize cloud configuration and authentication handling |
| 46 | +- Added 266 lines of tests in `tests/core/test_cloud.py` covering `CloudConfig` URL resolution, JWT token handling, and environment variable precedence. |
| 47 | +- Added subdirectory basename tests in `test_generate_output_paths.py` and `test_sync_orchestration.py`. |
| 48 | +- Added headless mode and force flag tests across sync and code generator modules. |
28 | 49 |
|
29 | 50 | ## v0.0.91 (2025-12-24) |
30 | 51 |
|
|
0 commit comments