pdd-cli 0.0.90__py3-none-any.whl → 0.0.121__py3-none-any.whl

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 (151) hide show
  1. pdd/__init__.py +38 -6
  2. pdd/agentic_bug.py +323 -0
  3. pdd/agentic_bug_orchestrator.py +506 -0
  4. pdd/agentic_change.py +231 -0
  5. pdd/agentic_change_orchestrator.py +537 -0
  6. pdd/agentic_common.py +533 -770
  7. pdd/agentic_crash.py +2 -1
  8. pdd/agentic_e2e_fix.py +319 -0
  9. pdd/agentic_e2e_fix_orchestrator.py +582 -0
  10. pdd/agentic_fix.py +118 -3
  11. pdd/agentic_update.py +27 -9
  12. pdd/agentic_verify.py +3 -2
  13. pdd/architecture_sync.py +565 -0
  14. pdd/auth_service.py +210 -0
  15. pdd/auto_deps_main.py +63 -53
  16. pdd/auto_include.py +236 -3
  17. pdd/auto_update.py +125 -47
  18. pdd/bug_main.py +195 -23
  19. pdd/cmd_test_main.py +345 -197
  20. pdd/code_generator.py +4 -2
  21. pdd/code_generator_main.py +118 -32
  22. pdd/commands/__init__.py +6 -0
  23. pdd/commands/analysis.py +113 -48
  24. pdd/commands/auth.py +309 -0
  25. pdd/commands/connect.py +358 -0
  26. pdd/commands/fix.py +155 -114
  27. pdd/commands/generate.py +5 -0
  28. pdd/commands/maintenance.py +3 -2
  29. pdd/commands/misc.py +8 -0
  30. pdd/commands/modify.py +225 -163
  31. pdd/commands/sessions.py +284 -0
  32. pdd/commands/utility.py +12 -7
  33. pdd/construct_paths.py +334 -32
  34. pdd/context_generator_main.py +167 -170
  35. pdd/continue_generation.py +6 -3
  36. pdd/core/__init__.py +33 -0
  37. pdd/core/cli.py +44 -7
  38. pdd/core/cloud.py +237 -0
  39. pdd/core/dump.py +68 -20
  40. pdd/core/errors.py +4 -0
  41. pdd/core/remote_session.py +61 -0
  42. pdd/crash_main.py +219 -23
  43. pdd/data/llm_model.csv +4 -4
  44. pdd/docs/prompting_guide.md +864 -0
  45. pdd/docs/whitepaper_with_benchmarks/data_and_functions/benchmark_analysis.py +495 -0
  46. pdd/docs/whitepaper_with_benchmarks/data_and_functions/creation_compare.py +528 -0
  47. pdd/fix_code_loop.py +208 -34
  48. pdd/fix_code_module_errors.py +6 -2
  49. pdd/fix_error_loop.py +291 -38
  50. pdd/fix_main.py +208 -6
  51. pdd/fix_verification_errors_loop.py +235 -26
  52. pdd/fix_verification_main.py +269 -83
  53. pdd/frontend/dist/assets/index-B5DZHykP.css +1 -0
  54. pdd/frontend/dist/assets/index-CUWd8al1.js +450 -0
  55. pdd/frontend/dist/index.html +376 -0
  56. pdd/frontend/dist/logo.svg +33 -0
  57. pdd/generate_output_paths.py +46 -5
  58. pdd/generate_test.py +212 -151
  59. pdd/get_comment.py +19 -44
  60. pdd/get_extension.py +8 -9
  61. pdd/get_jwt_token.py +309 -20
  62. pdd/get_language.py +8 -7
  63. pdd/get_run_command.py +7 -5
  64. pdd/insert_includes.py +2 -1
  65. pdd/llm_invoke.py +531 -97
  66. pdd/load_prompt_template.py +15 -34
  67. pdd/operation_log.py +342 -0
  68. pdd/path_resolution.py +140 -0
  69. pdd/postprocess.py +122 -97
  70. pdd/preprocess.py +68 -12
  71. pdd/preprocess_main.py +33 -1
  72. pdd/prompts/agentic_bug_step10_pr_LLM.prompt +182 -0
  73. pdd/prompts/agentic_bug_step1_duplicate_LLM.prompt +73 -0
  74. pdd/prompts/agentic_bug_step2_docs_LLM.prompt +129 -0
  75. pdd/prompts/agentic_bug_step3_triage_LLM.prompt +95 -0
  76. pdd/prompts/agentic_bug_step4_reproduce_LLM.prompt +97 -0
  77. pdd/prompts/agentic_bug_step5_root_cause_LLM.prompt +123 -0
  78. pdd/prompts/agentic_bug_step6_test_plan_LLM.prompt +107 -0
  79. pdd/prompts/agentic_bug_step7_generate_LLM.prompt +172 -0
  80. pdd/prompts/agentic_bug_step8_verify_LLM.prompt +119 -0
  81. pdd/prompts/agentic_bug_step9_e2e_test_LLM.prompt +289 -0
  82. pdd/prompts/agentic_change_step10_identify_issues_LLM.prompt +1006 -0
  83. pdd/prompts/agentic_change_step11_fix_issues_LLM.prompt +984 -0
  84. pdd/prompts/agentic_change_step12_create_pr_LLM.prompt +140 -0
  85. pdd/prompts/agentic_change_step1_duplicate_LLM.prompt +73 -0
  86. pdd/prompts/agentic_change_step2_docs_LLM.prompt +101 -0
  87. pdd/prompts/agentic_change_step3_research_LLM.prompt +126 -0
  88. pdd/prompts/agentic_change_step4_clarify_LLM.prompt +164 -0
  89. pdd/prompts/agentic_change_step5_docs_change_LLM.prompt +981 -0
  90. pdd/prompts/agentic_change_step6_devunits_LLM.prompt +1005 -0
  91. pdd/prompts/agentic_change_step7_architecture_LLM.prompt +1044 -0
  92. pdd/prompts/agentic_change_step8_analyze_LLM.prompt +1027 -0
  93. pdd/prompts/agentic_change_step9_implement_LLM.prompt +1077 -0
  94. pdd/prompts/agentic_e2e_fix_step1_unit_tests_LLM.prompt +90 -0
  95. pdd/prompts/agentic_e2e_fix_step2_e2e_tests_LLM.prompt +91 -0
  96. pdd/prompts/agentic_e2e_fix_step3_root_cause_LLM.prompt +89 -0
  97. pdd/prompts/agentic_e2e_fix_step4_fix_e2e_tests_LLM.prompt +96 -0
  98. pdd/prompts/agentic_e2e_fix_step5_identify_devunits_LLM.prompt +91 -0
  99. pdd/prompts/agentic_e2e_fix_step6_create_unit_tests_LLM.prompt +106 -0
  100. pdd/prompts/agentic_e2e_fix_step7_verify_tests_LLM.prompt +116 -0
  101. pdd/prompts/agentic_e2e_fix_step8_run_pdd_fix_LLM.prompt +120 -0
  102. pdd/prompts/agentic_e2e_fix_step9_verify_all_LLM.prompt +146 -0
  103. pdd/prompts/agentic_fix_primary_LLM.prompt +2 -2
  104. pdd/prompts/agentic_update_LLM.prompt +192 -338
  105. pdd/prompts/auto_include_LLM.prompt +22 -0
  106. pdd/prompts/change_LLM.prompt +3093 -1
  107. pdd/prompts/detect_change_LLM.prompt +571 -14
  108. pdd/prompts/fix_code_module_errors_LLM.prompt +8 -0
  109. pdd/prompts/fix_errors_from_unit_tests_LLM.prompt +1 -0
  110. pdd/prompts/generate_test_LLM.prompt +19 -1
  111. pdd/prompts/generate_test_from_example_LLM.prompt +366 -0
  112. pdd/prompts/insert_includes_LLM.prompt +262 -252
  113. pdd/prompts/prompt_code_diff_LLM.prompt +123 -0
  114. pdd/prompts/prompt_diff_LLM.prompt +82 -0
  115. pdd/remote_session.py +876 -0
  116. pdd/server/__init__.py +52 -0
  117. pdd/server/app.py +335 -0
  118. pdd/server/click_executor.py +587 -0
  119. pdd/server/executor.py +338 -0
  120. pdd/server/jobs.py +661 -0
  121. pdd/server/models.py +241 -0
  122. pdd/server/routes/__init__.py +31 -0
  123. pdd/server/routes/architecture.py +451 -0
  124. pdd/server/routes/auth.py +364 -0
  125. pdd/server/routes/commands.py +929 -0
  126. pdd/server/routes/config.py +42 -0
  127. pdd/server/routes/files.py +603 -0
  128. pdd/server/routes/prompts.py +1347 -0
  129. pdd/server/routes/websocket.py +473 -0
  130. pdd/server/security.py +243 -0
  131. pdd/server/terminal_spawner.py +217 -0
  132. pdd/server/token_counter.py +222 -0
  133. pdd/summarize_directory.py +236 -237
  134. pdd/sync_animation.py +8 -4
  135. pdd/sync_determine_operation.py +329 -47
  136. pdd/sync_main.py +272 -28
  137. pdd/sync_orchestration.py +289 -211
  138. pdd/sync_order.py +304 -0
  139. pdd/template_expander.py +161 -0
  140. pdd/templates/architecture/architecture_json.prompt +41 -46
  141. pdd/trace.py +1 -1
  142. pdd/track_cost.py +0 -13
  143. pdd/unfinished_prompt.py +2 -1
  144. pdd/update_main.py +68 -26
  145. {pdd_cli-0.0.90.dist-info → pdd_cli-0.0.121.dist-info}/METADATA +15 -10
  146. pdd_cli-0.0.121.dist-info/RECORD +229 -0
  147. pdd_cli-0.0.90.dist-info/RECORD +0 -153
  148. {pdd_cli-0.0.90.dist-info → pdd_cli-0.0.121.dist-info}/WHEEL +0 -0
  149. {pdd_cli-0.0.90.dist-info → pdd_cli-0.0.121.dist-info}/entry_points.txt +0 -0
  150. {pdd_cli-0.0.90.dist-info → pdd_cli-0.0.121.dist-info}/licenses/LICENSE +0 -0
  151. {pdd_cli-0.0.90.dist-info → pdd_cli-0.0.121.dist-info}/top_level.txt +0 -0
pdd/update_main.py CHANGED
@@ -16,7 +16,7 @@ from rich.progress import (
16
16
  from rich.table import Table
17
17
  from rich.theme import Theme
18
18
 
19
- from .construct_paths import construct_paths
19
+ from .construct_paths import construct_paths, get_tests_dir_from_config, detect_context_for_file
20
20
  from .get_language import get_language
21
21
  from .update_prompt import update_prompt
22
22
  from .git_update import git_update
@@ -38,6 +38,7 @@ def resolve_prompt_code_pair(code_file_path: str, quiet: bool = False, output_di
38
38
  Derives the corresponding prompt file path from a code file path.
39
39
  Searches for and creates prompts only in the specified output directory or 'prompts' directory.
40
40
  If the prompt file does not exist, it creates an empty one in the target directory.
41
+ Preserves the subdirectory structure of the code file relative to the repository root.
41
42
 
42
43
  Args:
43
44
  code_file_path: Path to the code file
@@ -50,43 +51,71 @@ def resolve_prompt_code_pair(code_file_path: str, quiet: bool = False, output_di
50
51
  # Extract the filename without extension and directory
51
52
  code_filename = os.path.basename(code_file_path)
52
53
  base_name, _ = os.path.splitext(code_filename)
54
+
55
+ code_file_abs_path = os.path.abspath(code_file_path)
56
+ code_dir = os.path.dirname(code_file_abs_path)
53
57
 
54
- # Determine the output directory
58
+ # Find the repository root (where the code file is located)
59
+ # This is needed for relative path calculation to preserve structure
60
+ repo_root = code_dir
61
+ try:
62
+ import git
63
+ repo = git.Repo(code_dir, search_parent_directories=True)
64
+ repo_root = repo.working_tree_dir
65
+ except:
66
+ # If not a git repo, use the directory containing the code file
67
+ pass
68
+
69
+ # Determine the base prompts directory
55
70
  if output_dir:
56
71
  # Use the custom output directory (absolute path)
57
- prompts_dir = os.path.abspath(output_dir)
72
+ base_prompts_dir = os.path.abspath(output_dir)
58
73
  else:
59
- # Find the repository root (where the code file is located)
60
- code_file_abs_path = os.path.abspath(code_file_path)
61
- code_dir = os.path.dirname(code_file_abs_path)
62
-
63
- # For repository mode, find the actual repo root
64
- repo_root = code_dir
65
- try:
66
- import git
67
- repo = git.Repo(code_dir, search_parent_directories=True)
68
- repo_root = repo.working_tree_dir
69
- except:
70
- # If not a git repo, use the directory containing the code file
71
- pass
74
+ # Use context-aware prompts_dir from .pddrc if available
75
+ context_name, context_config = detect_context_for_file(code_file_path, repo_root)
76
+ prompts_dir_config = context_config.get("prompts_dir", "prompts")
77
+ if os.path.isabs(prompts_dir_config):
78
+ base_prompts_dir = prompts_dir_config
79
+ else:
80
+ base_prompts_dir = os.path.join(repo_root, prompts_dir_config)
72
81
 
73
- # Use the default prompts directory at repo root
74
- prompts_dir = os.path.join(repo_root, "prompts")
82
+ # Calculate relative path from repo_root to code_dir to preserve structure
83
+ try:
84
+ rel_dir = os.path.relpath(code_dir, repo_root)
85
+ if rel_dir == ".":
86
+ rel_dir = ""
87
+ else:
88
+ # If context has a code root (generate_output_path), strip that prefix
89
+ # E.g., for pdd/commands/file.py with generate_output_path="pdd",
90
+ # strip "pdd/" to get "commands/"
91
+ code_root = context_config.get("generate_output_path", "")
92
+ if code_root and rel_dir.startswith(code_root + os.sep):
93
+ # Strip the code root prefix
94
+ rel_dir = rel_dir[len(code_root) + len(os.sep):]
95
+ elif code_root and rel_dir == code_root:
96
+ # File is directly in code root
97
+ rel_dir = ""
98
+ except ValueError:
99
+ # Can happen on Windows if paths are on different drives
100
+ rel_dir = ""
101
+
102
+ # Construct the final directory including the relative structure
103
+ final_prompts_dir = os.path.join(base_prompts_dir, rel_dir)
75
104
 
76
105
  # Construct the prompt filename in the determined directory
77
106
  prompt_filename = f"{base_name}_{language}.prompt"
78
- prompt_path_str = os.path.join(prompts_dir, prompt_filename)
107
+ prompt_path_str = os.path.join(final_prompts_dir, prompt_filename)
79
108
  prompt_path = Path(prompt_path_str)
80
109
 
81
110
  # Ensure prompts directory exists
82
- prompts_path = Path(prompts_dir)
111
+ prompts_path = Path(final_prompts_dir)
83
112
  if not prompts_path.exists():
84
113
  try:
85
114
  prompts_path.mkdir(parents=True, exist_ok=True)
86
115
  if not quiet:
87
- console.print(f"[success]Created prompts directory:[/success] [path]{prompts_dir}[/path]")
116
+ console.print(f"[success]Created prompts directory:[/success] [path]{final_prompts_dir}[/path]")
88
117
  except OSError as e:
89
- console.print(f"[error]Failed to create prompts directory {prompts_dir}: {e}[/error]")
118
+ console.print(f"[error]Failed to create prompts directory {final_prompts_dir}: {e}[/error]")
90
119
 
91
120
  if not prompt_path.exists():
92
121
  try:
@@ -125,7 +154,7 @@ def find_and_resolve_all_pairs(repo_root: str, quiet: bool = False, extensions:
125
154
  code_files = [
126
155
  f for f in all_files
127
156
  if (
128
- get_language(f) is not None and
157
+ get_language(os.path.splitext(f)[1]) and # Pass extension, not full path
129
158
  not f.endswith('.prompt') and
130
159
  not os.path.splitext(os.path.basename(f))[0].startswith('test_') and
131
160
  not os.path.splitext(os.path.basename(f))[0].endswith('_example')
@@ -156,10 +185,12 @@ def update_file_pair(prompt_file: str, code_file: str, ctx: click.Context, repo:
156
185
  use_agentic = not simple and get_available_agents()
157
186
 
158
187
  if use_agentic:
188
+ tests_dir = get_tests_dir_from_config()
159
189
  success, message, agentic_cost, provider, changed_files = run_agentic_update(
160
190
  prompt_file=prompt_file,
161
191
  code_file=code_file,
162
192
  test_files=None,
193
+ tests_dir=tests_dir,
163
194
  verbose=verbose,
164
195
  quiet=quiet,
165
196
  )
@@ -215,7 +246,7 @@ def update_file_pair(prompt_file: str, code_file: str, ctx: click.Context, repo:
215
246
  temperature=ctx.obj.get("temperature", 0),
216
247
  verbose=verbose,
217
248
  time=ctx.obj.get('time', DEFAULT_TIME),
218
- simple=True, # Force legacy since we already tried agentic
249
+ simple=True, # Force legacy since we already tried agentic,
219
250
  quiet=quiet,
220
251
  prompt_file=prompt_file,
221
252
  )
@@ -260,6 +291,7 @@ def update_main(
260
291
  use_git: bool = False,
261
292
  repo: bool = False,
262
293
  extensions: Optional[str] = None,
294
+ directory: Optional[str] = None,
263
295
  strength: Optional[float] = None,
264
296
  temperature: Optional[float] = None,
265
297
  simple: bool = False,
@@ -276,6 +308,7 @@ def update_main(
276
308
  :param use_git: Use Git history to retrieve the original code if True.
277
309
  :param repo: If True, run in repository-wide mode.
278
310
  :param extensions: Comma-separated string of file extensions to filter by in repo mode.
311
+ :param directory: Optional directory to scan in repo mode (defaults to repo root).
279
312
  :param strength: Optional strength parameter (overrides ctx.obj if provided).
280
313
  :param temperature: Optional temperature parameter (overrides ctx.obj if provided).
281
314
  :return: Tuple containing the updated prompt, total cost, and model name.
@@ -297,7 +330,12 @@ def update_main(
297
330
  # Return error result instead of sys.exit(1) to allow orchestrator to handle gracefully
298
331
  return None
299
332
 
300
- pairs = find_and_resolve_all_pairs(repo_root, quiet, extensions, output)
333
+ # Use specified directory if provided, otherwise scan from repo root
334
+ if directory:
335
+ scan_dir = os.path.abspath(directory)
336
+ else:
337
+ scan_dir = repo_root
338
+ pairs = find_and_resolve_all_pairs(scan_dir, quiet, extensions, output)
301
339
 
302
340
  if not pairs:
303
341
  rprint("[info]No scannable code files found in the repository.[/info]")
@@ -399,10 +437,12 @@ def update_main(
399
437
  # Ensure prompt file exists for agentic
400
438
  Path(prompt_path).touch(exist_ok=True)
401
439
 
440
+ tests_dir = get_tests_dir_from_config()
402
441
  success, message, agentic_cost, provider, changed_files = run_agentic_update(
403
442
  prompt_file=prompt_path,
404
443
  code_file=modified_code_file,
405
444
  test_files=None,
445
+ tests_dir=tests_dir,
406
446
  verbose=verbose,
407
447
  quiet=quiet,
408
448
  )
@@ -460,10 +500,12 @@ def update_main(
460
500
  use_agentic = not simple and get_available_agents()
461
501
 
462
502
  if use_agentic:
503
+ tests_dir = get_tests_dir_from_config()
463
504
  success, message, agentic_cost, provider, changed_files = run_agentic_update(
464
505
  prompt_file=actual_input_prompt_file,
465
506
  code_file=modified_code_file,
466
507
  test_files=None,
508
+ tests_dir=tests_dir,
467
509
  verbose=verbose,
468
510
  quiet=quiet,
469
511
  )
@@ -583,4 +625,4 @@ def update_main(
583
625
  if not quiet:
584
626
  rprint(f"[bold red]Error:[/bold red] {str(e)}")
585
627
  # Return error result instead of sys.exit(1) to allow orchestrator to handle gracefully
586
- return None
628
+ return None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pdd-cli
3
- Version: 0.0.90
3
+ Version: 0.0.121
4
4
  Summary: PDD (Prompt-Driven Development) Command Line Interface
5
5
  Author: Greg Tanaka
6
6
  Author-email: glt@alumni.caltech.edu
@@ -23,19 +23,19 @@ Requires-Dist: GitPython==3.1.44
23
23
  Requires-Dist: Requests==2.32.3
24
24
  Requires-Dist: aiofiles==24.1.0
25
25
  Requires-Dist: click==8.1.7
26
- Requires-Dist: firecrawl-py
26
+ Requires-Dist: firecrawl-py==2.5.3
27
27
  Requires-Dist: firebase_admin==6.6.0
28
28
  Requires-Dist: keyring==25.6.0
29
- Requires-Dist: langchain_core==0.3.56
30
29
  Requires-Dist: nest_asyncio==1.6.0
31
30
  Requires-Dist: pandas==2.2.3
32
- Requires-Dist: psutil==5.9.0
33
- Requires-Dist: pydantic==2.11.2
34
- Requires-Dist: litellm[caching]>=1.75.5
31
+ Requires-Dist: psutil>=7.0.0
32
+ Requires-Dist: pydantic==2.11.4
33
+ Requires-Dist: litellm[caching]>=1.80.0
34
+ Requires-Dist: lxml>=5.0.0
35
35
  Requires-Dist: rich==14.0.0
36
36
  Requires-Dist: semver==3.0.2
37
37
  Requires-Dist: setuptools
38
- Requires-Dist: pytest
38
+ Requires-Dist: pytest==8.3.5
39
39
  Requires-Dist: pytest-cov==5.0.0
40
40
  Requires-Dist: boto3==1.35.99
41
41
  Requires-Dist: google-cloud-aiplatform>=1.3
@@ -46,7 +46,12 @@ Requires-Dist: textual
46
46
  Requires-Dist: python-dotenv==1.1.0
47
47
  Requires-Dist: PyYAML==6.0.1
48
48
  Requires-Dist: jsonschema==4.23.0
49
- Requires-Dist: z3-solver
49
+ Requires-Dist: z3-solver==4.14.1.0
50
+ Requires-Dist: fastapi>=0.115.0
51
+ Requires-Dist: uvicorn[standard]>=0.32.0
52
+ Requires-Dist: websockets>=13.0
53
+ Requires-Dist: watchdog>=4.0.0
54
+ Requires-Dist: tiktoken>=0.7.0
50
55
  Provides-Extra: dev
51
56
  Requires-Dist: commitizen; extra == "dev"
52
57
  Requires-Dist: pytest-cov; extra == "dev"
@@ -59,7 +64,7 @@ Requires-Dist: twine; extra == "dev"
59
64
  Requires-Dist: httpx==0.28.1; extra == "dev"
60
65
  Dynamic: license-file
61
66
 
62
- .. image:: https://img.shields.io/badge/pdd--cli-v0.0.90-blue
67
+ .. image:: https://img.shields.io/badge/pdd--cli-v0.0.121-blue
63
68
  :alt: PDD-CLI Version
64
69
 
65
70
  .. image:: https://img.shields.io/badge/Discord-join%20chat-7289DA.svg?logo=discord&logoColor=white&link=https://discord.gg/Yp4RTh8bG7
@@ -136,7 +141,7 @@ After installation, verify:
136
141
 
137
142
  pdd --version
138
143
 
139
- You'll see the current PDD version (e.g., 0.0.90).
144
+ You'll see the current PDD version (e.g., 0.0.121).
140
145
 
141
146
  Getting Started with Examples
142
147
  -----------------------------
@@ -0,0 +1,229 @@
1
+ pdd/__init__.py,sha256=8rLvde1g1_pXcJeRVEG1DPAriLyzlgL0qre21-7yoWg,1893
2
+ pdd/agentic_bug.py,sha256=ujaV29jbfMrD8BAcGcQUrkSLG5jCW-oPBk_Aw3LPMYU,11004
3
+ pdd/agentic_bug_orchestrator.py,sha256=ODUA6u-Nr_Hwzlug0ziY1JuDdfAwpksQO6uB-GfwWj0,19357
4
+ pdd/agentic_change.py,sha256=9Ydq6l-yDKhRJGiwcy6LbTRKGxyagnsRpmlE8auQ2io,7307
5
+ pdd/agentic_change_orchestrator.py,sha256=p9_L7vD8bB8DRj8nHYCF4mJ_50h_co4hyWVrzFYt0hM,21395
6
+ pdd/agentic_common.py,sha256=Aub4sXlvNVRrauYdbl0PcHeTq36iAcQUfsqOcHgd_dU,20160
7
+ pdd/agentic_crash.py,sha256=A9_tnMidCb-pvGGRiVKr7Hj8CwHJ4h3e9TN87a1kh8E,17776
8
+ pdd/agentic_e2e_fix.py,sha256=LS30pp4pGN-6MkpEVGnkHLGVpGWLcRvGdVFrgLUwkNE,10815
9
+ pdd/agentic_e2e_fix_orchestrator.py,sha256=HUGEXA8uKXvxSG0J2qsEutJV_bZJlnhTCdNCS-NXyoU,22423
10
+ pdd/agentic_fix.py,sha256=w9WKoxCeaH78NpA6B6zCwS_fpRtF3jyadqFfiu4_row,53288
11
+ pdd/agentic_langtest.py,sha256=BOiyIJTOf7lBEZscG9e0XSu4Sp7NiMGgkquATcw7eMc,6326
12
+ pdd/agentic_update.py,sha256=RM3F3x8ASr1fuIkTdonuAtUxo8P3O-ckgz3RKZk8qb8,13458
13
+ pdd/agentic_verify.py,sha256=vZCNjcv-y2TiI6XmuA__fOKYNLzKPLrCHRYYrMZyUHU,6475
14
+ pdd/architecture_sync.py,sha256=MBSwyajOn50RcBAKBLZNx4133UHTPMwxvv7w1DcIDJg,19061
15
+ pdd/auth_service.py,sha256=kup_TkldSAkfXofJ_-UPqMQiFIopCATgz-iYkrFBQRg,5999
16
+ pdd/auto_deps_main.py,sha256=AHuAQFvO6Xn8e1vVwiW5VUIvE4H6cSbjmIv3UU5x62Y,5017
17
+ pdd/auto_include.py,sha256=YJqU-nFm2M7cmHUU66Jqj8bj1Z6fvbMQNxH_Lqd5tDo,18666
18
+ pdd/auto_update.py,sha256=CUXEipFsJ4NwHFqsjafi8DPEosCTnxy5baswvbOerbo,8310
19
+ pdd/bug_main.py,sha256=-mSQmjj89MAucYqNur9pjOgp2ZnIp2IgpQrZPp0SDas,13267
20
+ pdd/bug_to_unit_test.py,sha256=BoQqNyKQpBQDW8-JwBH_RX4RHRSiU8Kk3EplFrkECt0,6665
21
+ pdd/change.py,sha256=Hg_x0pa370-e6oDiczaTgFAy3Am9ReCPkqFrvqv4U38,6114
22
+ pdd/change_main.py,sha256=RytUc4bZKYY3QjqKCEwJPpIJv47C_U3F-QBJAzJVLgs,28101
23
+ pdd/cli.py,sha256=N3OvJ2yfTpUvrSjVGICVD7-ekHtgFLTVbudrhuUv-dA,1480
24
+ pdd/cmd_test_main.py,sha256=u1GE3phYWgJPN75xreuBLlNiNmH5oUzekQO2-hFYR1s,15114
25
+ pdd/code_generator.py,sha256=JiV5xHaMWO5yjfBEpRREZ_rZdSzaClybDHZaImHIn7Y,6444
26
+ pdd/code_generator_main.py,sha256=fIgLdXhRfvkxUT_v8Ljw8wS7KZK68ewMYKK583yGr5I,65763
27
+ pdd/comment_line.py,sha256=sX2hf4bG1fILi_rvI9MkkwCZ2IitgKkW7nOiw8aQKPY,1845
28
+ pdd/config_resolution.py,sha256=DjWTDA7nFexH5E2hztPEFJdy0aboa8ImNBMj4czPeiM,2166
29
+ pdd/conflicts_in_prompts.py,sha256=9N3rZWdJUGayOTOgnHW9G_Jm1C9G4Y8hSLhnURc1BkY,4890
30
+ pdd/conflicts_main.py,sha256=SgIuU8d9S8GqP0EefloA82Tutu89n5dhcfPCtpf4Pcg,3874
31
+ pdd/construct_paths.py,sha256=_TzpsYYRi2WCdvSuUBFcugznzfM3sGDQAaXb5aoPPfk,52469
32
+ pdd/context_generator.py,sha256=-XLi4s50RLfT0YarRUC4ytT2bdDZfTffAMWPMqnj42k,6377
33
+ pdd/context_generator_main.py,sha256=-vHPOybHZ_9rm-S6Emvgda4AQFbcv-AW3BpPvUpAXOE,10004
34
+ pdd/continue_generation.py,sha256=hrSgLfPfhlE9FKImbbHG-0K9uEatKAIXU5XqlvfydXs,7962
35
+ pdd/crash_main.py,sha256=5SXzkaaLaZIUY51ncEqaGlC1iu4G-YxvHyEw9wu__U4,20170
36
+ pdd/detect_change.py,sha256=mA6k62xqeU1UG__CjzveJK0JDiRAO7AAC-JUfS0i2HQ,5510
37
+ pdd/detect_change_main.py,sha256=aEehiFlKAfqegW6e18gVMKxbcSQpV9gqLpyX7Bl7Chw,3863
38
+ pdd/edit_file.py,sha256=-FhZ-KGKYkPbnt0zFiDnnosPLh3bbKmften0Ios4-90,35017
39
+ pdd/find_section.py,sha256=lz_FPY4KDCRAGlL1pWVZiutUNv7E4KsDFK-ymDWA_Ec,962
40
+ pdd/fix_code_loop.py,sha256=1hWPKJmVwsEFA0cbcgChyJL0yAMQ7Cw2_TdXpO1Y82o,40526
41
+ pdd/fix_code_module_errors.py,sha256=zbWxaBzAYp9r0owZvlN46aAFKA1gZyOjZqX6vCEz7Yk,5579
42
+ pdd/fix_error_loop.py,sha256=g3lCi737o69Z6aUp9zJnNDCnG9Zx5JdAJPgcHfv_JzI,43300
43
+ pdd/fix_errors_from_unit_tests.py,sha256=00vanOVvZ8KUvQMaUtAoComjZNwiyrXd3bvi8iCUCXk,9577
44
+ pdd/fix_main.py,sha256=ZUwmF16YiIJix3gPc1AcI7lGsfgV0lDYB7Kmb5XtTb4,28007
45
+ pdd/fix_verification_errors.py,sha256=oT0edNBj4CTd1kaE0vdnWjyB6el1tECh0sIOZ8O1AmQ,11583
46
+ pdd/fix_verification_errors_loop.py,sha256=9R_hEHWf4PWAUFdP5rZl0fzdDH9d3jjvprf9vhhnpnY,68169
47
+ pdd/fix_verification_main.py,sha256=Q9OP-ToZ1Qv4nsRICDJQ0_NtF4hO4fs-w2j0Kxr6xPo,35790
48
+ pdd/generate_output_paths.py,sha256=mY4VWya4-4o6z6MYePqaGi9KnAAeaqeY6OU5mFb6cIw,31234
49
+ pdd/generate_test.py,sha256=PawBgvRZ-SaDqUtuh3slbUXb63OGPVKpkDcX0_MifB4,9294
50
+ pdd/get_comment.py,sha256=U-cP4-T3umN_fHVNladR4Gh1TrBtJlselWNjScEYqIM,808
51
+ pdd/get_extension.py,sha256=T5q0WZlEyPrxT7Bg-DoLZ0XR0JazV940shw7NKhEgNc,2693
52
+ pdd/get_jwt_token.py,sha256=NjYfznNvQ9u48dxPAEbAxCnYkLrq2Zg79MJbGrkxHlA,22812
53
+ pdd/get_language.py,sha256=ZQBK3UDJM2XBy9cFpu8k1b2m9wFsOmd0myXmESLFDOc,1506
54
+ pdd/get_run_command.py,sha256=Xux3iiNKvErOQWbXGmj25J8bgUkZYoZ96B9hvogqUxk,2348
55
+ pdd/get_test_command.py,sha256=2Ijf6LgJdrZ_xG6am_7uVQaz0ocFZLCFqxiP-VZmC34,2049
56
+ pdd/git_update.py,sha256=yoEJJfgLhVlsDx-EtKfAUv8ZqFMNJO1piXMEZ98qPxc,4994
57
+ pdd/increase_tests.py,sha256=68cM9d1CpaLLm2ISFpJw39xbRjsfwxwS06yAwRoUCHk,4433
58
+ pdd/incremental_code_generator.py,sha256=RoaJDavR0A5ybXc8Pvqe7Hwwhz9gHbP_kmGQXn3XveQ,9425
59
+ pdd/insert_includes.py,sha256=wPRYeWl2IxMNtqsANeeUdZo3CR4h2bo8-d5nYWsnGg0,6104
60
+ pdd/install_completion.py,sha256=bLMJuMOBDvsEnDAUpgiPesNRGhY_IvBvz8ZvmbTzP4o,5472
61
+ pdd/llm_invoke.py,sha256=kyOcK0HMT8fk5zRAlj6QSL9skLFAJX7JSUIZEhJT9Es,150324
62
+ pdd/load_prompt_template.py,sha256=A4CwhRCu4G1OPisZK-ZkdafjqTWGshxvxPm-czi7Als,2287
63
+ pdd/logo_animation.py,sha256=n6HJWzuFze2csAAW2-zbxfjvWFYRI4hIdwVBtHBOkj4,20782
64
+ pdd/mcp_config.json,sha256=D3ctWHlShvltbtH37zbYb6smVE0V80_lGjDKDIqsSBE,124
65
+ pdd/operation_log.py,sha256=E7e4R7OLHVVYqGTd25rJSEDPtWAnBqzYhxdtd4-NaE4,10859
66
+ pdd/path_resolution.py,sha256=TFEzlc2W_x_jwBwB5uTC3jYXMy9v-HyDkQg_DCbUHXU,4180
67
+ pdd/pdd_completion.fish,sha256=pfEyBWzFp3matC_SW2BTDNaBJybYKUEi3YpPE-D6AKU,13776
68
+ pdd/pdd_completion.sh,sha256=xgx-g6aeCCrlh6loeLyJN5jCsX15YXrWyT1U499p3C0,6490
69
+ pdd/pdd_completion.zsh,sha256=V9-V8jqw3osjlXNOvjYMJf0E771-_EQe-Cboo1xzPvY,17090
70
+ pdd/postprocess.py,sha256=jS6TG0FaH48qSVI7MoIsd6uXsc3Xmmzgu29AP2k2mJM,5936
71
+ pdd/postprocess_0.py,sha256=OW17GyCFLYErCyWh2tL4syuho3q2yFf2wyekQ4BLdPM,2168
72
+ pdd/preprocess.py,sha256=4y6HYQPBC6IE66aPWg_Gjyg4dUWbqKQLAQ_qKuP8Y48,22388
73
+ pdd/preprocess_main.py,sha256=apW_L_s4iaI_UwVV90VhlCe4PvJDijd84kc7Hrx5tlY,4889
74
+ pdd/process_csv_change.py,sha256=ckNqVPRooWVyIvmqjdEgo2PDLnpoQ6Taa2dUaWGRlzU,27926
75
+ pdd/pytest_output.py,sha256=UPnGZDbUCLZGEWcA2WvYRdgPegUjY25NHgK9ppFjFBg,10638
76
+ pdd/python_env_detector.py,sha256=y-QESoPNiKaD821uz8okX-9qA-oqvH9cQHY2_MwFHzU,5194
77
+ pdd/remote_session.py,sha256=xuWq_4GmnUnsgCZCDXot8cb52XxSXg9oF2LYOnhQd5E,33785
78
+ pdd/render_mermaid.py,sha256=nvFO_Wl5MpYIiF3yMpToF8ePerHsr3c9WV745u-Y3X8,9050
79
+ pdd/setup_tool.py,sha256=xKut3G4iIfLBIudix-O71Q9CCtS1GeC8O4uGV_Qjscc,24135
80
+ pdd/simple_math.py,sha256=j3WmhkbIef0M_1wCcIwBD7HAHWfvmTDU5BkQb-t4l6o,31
81
+ pdd/split.py,sha256=9lWrh-JOjOpxRp4-s1VL7bqJMVWlsmY5LxONT7sYM8A,5288
82
+ pdd/split_main.py,sha256=52rcZoeS_wpYRiqbqMUgr_hUY7GS62otwzDfuAGi6YA,4845
83
+ pdd/summarize_directory.py,sha256=TDihusV04mJiHV8X4-IFSs2LhTKlGiMGM7gQkXl4zA4,10036
84
+ pdd/sync_animation.py,sha256=5gFg8G8PKMtJLkScOV98OADyQhLMnw6rJf0pqZxAiQY,28274
85
+ pdd/sync_determine_operation.py,sha256=dlBu5Qf8aJ22h2VLQ-sfJAvxw2DqpLp2im0SW58PhAY,89907
86
+ pdd/sync_main.py,sha256=YFIeRO5Jp39VX1GXx-bRoggFRKhK6PVT0qPNn0Iq64Q,27062
87
+ pdd/sync_orchestration.py,sha256=vnE5Ne3Tkq9Ud7RBK5WS4bfzxlA0AVXGocto1_7DeEY,86841
88
+ pdd/sync_order.py,sha256=Uep8okR_6vL9z4WTeVTNZoaC1s3uzEZjOTd02C-fHRU,9899
89
+ pdd/sync_tui.py,sha256=gponSnFNHMO9uTRsmJnL5McCgLbeGeAa34d379STthI,29300
90
+ pdd/template_expander.py,sha256=vKpnDzNLn6dyaqhZBucBJa0s1LfntiqOOfi90GyXXts,4842
91
+ pdd/template_registry.py,sha256=L8ZQ-apmdDe7Jj_JlgHv7fUoIiJnGDuE0V64Y-MO9vA,8099
92
+ pdd/trace.py,sha256=n_h5gS8d7ywUmVuTmjtlQVkO5op_YrJeVwZKx9ZC-8s,12233
93
+ pdd/trace_main.py,sha256=SOnMEHta9WaMAxulMrk6aFojma4ti61ILvJp3NVhpbg,4992
94
+ pdd/track_cost.py,sha256=r1AA0rTm4FR3vdn7TrwNGHnE7MaFqhIlQcgGFIL9gsA,7669
95
+ pdd/unfinished_prompt.py,sha256=vrzJ5q9VHQChaLLeCXMLCP0QsfWNt1cFnVOhFEN12iU,6333
96
+ pdd/update_main.py,sha256=8Odw5X1RG82uGP0wva5qi7EBIpLPblOdfoHgtlkHhKY,26991
97
+ pdd/update_model_costs.py,sha256=RfeOlAHtc1FCx47A7CjrH2t5WXQclQ_9uYtNjtQh75I,22998
98
+ pdd/update_prompt.py,sha256=K1i9BIpb3ioFGM32WcqueAuKqzLlezsPsvcovOagOhI,5239
99
+ pdd/xml_tagger.py,sha256=5Bc3HRm7iz_XjBdzQIcMb8KocUQ8PELI2NN5Gw4amd4,4825
100
+ pdd/commands/__init__.py,sha256=5ID0Erk2chGBWPE7f_6vJy3-YE_Fc991DEfU4m8QZSc,1617
101
+ pdd/commands/analysis.py,sha256=m0zNvyzVinsY3-Fr6bDtRlr-fynRRtQLwdYOymC8HAA,10090
102
+ pdd/commands/auth.py,sha256=tGULnVN6a7x4rMtVCGUnvcEivRsvYUg4jQS3Koezw1Q,10170
103
+ pdd/commands/connect.py,sha256=dqjWEWw6EcRcK8yJHJEoDuLQocd8UiyBEBqELa_U-J0,13073
104
+ pdd/commands/fix.py,sha256=RWqGaK9GYoQRbzHmQlEBug22hoMLE69hcHsoJC6dFF8,7928
105
+ pdd/commands/generate.py,sha256=Obaxp96yRGgT1d3qkGCJ-wVTbg0ZLTkIgBmjo72kbbs,8940
106
+ pdd/commands/maintenance.py,sha256=DgAI_nQttdNkSaD9W0mJDtizevy6mKRMkfjlgJwwMes,5025
107
+ pdd/commands/misc.py,sha256=i9GK0wto-3oleB0tSwcsHipl9Shs2vEZ40-pUrdX0S4,2574
108
+ pdd/commands/modify.py,sha256=NKKMSrRJoLfv-xF9XcSxE7oEZDrBkNt46tPHM_o_Nuk,10868
109
+ pdd/commands/report.py,sha256=E9CCbbux_MP5oGu18M_XQBVaQhYCMsQOUn9KQPEBiSU,5868
110
+ pdd/commands/sessions.py,sha256=G7SAS6LfaGBM0QZLAF4DumqLEcVRIby0llDFKadS_Qo,10388
111
+ pdd/commands/templates.py,sha256=pJicUZww2U5nOcQw_tuQK3OQwYK3NRRc81SZ5YLkt_E,8957
112
+ pdd/commands/utility.py,sha256=JmM5VEGno2yB3ixk1sZQ3ENwS33DKU_AjrMOte_rnu4,3969
113
+ pdd/core/__init__.py,sha256=m5ywJMVb2PhmHbxC1KMA-TYP7Am4Z1rv_DihgOZRCu0,619
114
+ pdd/core/cli.py,sha256=8LWwh7UVz4lC0XHCVXbAMuQ27olrPFBJ9QvRdmlXHL4,22223
115
+ pdd/core/cloud.py,sha256=WvaGYwGVw41tClAHc1PyJXDN6xIfRowvBL-Z7JQtFKw,8289
116
+ pdd/core/dump.py,sha256=R31LXgiAl_u6yB0DPWtfjxs7t_aHO1uoDGiJJABvy88,22161
117
+ pdd/core/errors.py,sha256=CVI1h7p5K9lRTuw-BYxyGfH68NJ8-ZBGqW-KxD-_6MA,2641
118
+ pdd/core/remote_session.py,sha256=V46Y9jzKzUmvQbfRejFGCi7t_9hkjp_K78VPwX0NP_s,2163
119
+ pdd/core/utils.py,sha256=e2y-S6OcDbjJw1vdGWwNTDlICPyYy9H-5yfj5nPaAw8,2524
120
+ pdd/data/language_format.csv,sha256=X_vifnKBod8aeyzht94pdDpZWChkxT3Hu1G2cA_tTy8,1844
121
+ pdd/data/llm_model.csv,sha256=n42HslQzEGAjuyio_xpkQCAq7hcN5mumsfOhEcEYvME,1813
122
+ pdd/docs/prompting_guide.md,sha256=DY5VyJZCYIZ1NAvgjOaCx3Bv_hWo4krW4prwYivaUh0,39525
123
+ pdd/docs/whitepaper_with_benchmarks/data_and_functions/benchmark_analysis.py,sha256=IwvFLrgGLmx3ajF-Z_eQaRowCzyJk_cQxD3wxMkfZQU,23406
124
+ pdd/docs/whitepaper_with_benchmarks/data_and_functions/creation_compare.py,sha256=0sEVBjJ0yHQWzh4NbbJPmpsIB2iyJlvwU0uRnV12fDE,26558
125
+ pdd/frontend/dist/index.html,sha256=mySCIUsNdoSjs2zlgCTOiXCuPeAaJc3hK6j2xwhUilc,11856
126
+ pdd/frontend/dist/logo.svg,sha256=7pD_n_dgwPjM2iPBpj2rfPJ9fg1gfebAWOO4PCpum1U,797
127
+ pdd/frontend/dist/assets/index-B5DZHykP.css,sha256=HLO_vKmG5ANNQg2BEeOD8KYUvV8sL3rH0i2S1Cwe4T0,7322
128
+ pdd/frontend/dist/assets/index-CUWd8al1.js,sha256=8G0_U6UyaHvgB_Oz6tAm3ouosZzcti5clgFWRnbT9EU,1602195
129
+ pdd/prompts/agentic_bug_step10_pr_LLM.prompt,sha256=NlkzPKoOwy2aMvu36ZyBKkhYf-Ww5EzhAPmmUsP_6PI,5478
130
+ pdd/prompts/agentic_bug_step1_duplicate_LLM.prompt,sha256=UQnvHbMF-aN35Pgs2-Eu9VnZdwZmrUpJlkg4bJ4PuEk,2259
131
+ pdd/prompts/agentic_bug_step2_docs_LLM.prompt,sha256=rFyXFFm9o4BFJDlAcP0iDBRZdDKJI9bCcPoLZ6ZKalk,4110
132
+ pdd/prompts/agentic_bug_step3_triage_LLM.prompt,sha256=oXeNBtAmfcdhQ6jCSNP7OSXiMFxIPBpwee67hudcPIg,2323
133
+ pdd/prompts/agentic_bug_step4_reproduce_LLM.prompt,sha256=a7Vcs79WqWr9dBZcRA-1BMtVArcJ1gKLqz7czp_cZQo,2586
134
+ pdd/prompts/agentic_bug_step5_root_cause_LLM.prompt,sha256=HF82G_PDMsA5ydhSjjEMfWnvq44NAIN7-1zyWUg2mMA,3724
135
+ pdd/prompts/agentic_bug_step6_test_plan_LLM.prompt,sha256=u10D6__MZX3PWfs3cAOo_uK6A4-zx7Qao3s3LoH8DdU,2758
136
+ pdd/prompts/agentic_bug_step7_generate_LLM.prompt,sha256=SGCh-Np4a9A2eljMYanX1EzyNTBZEWA93eRNyglpfUE,5425
137
+ pdd/prompts/agentic_bug_step8_verify_LLM.prompt,sha256=iV5q88rdQhMeqI2H6mM6I9ye5a-aCCH8j3xYdoBadDM,2852
138
+ pdd/prompts/agentic_bug_step9_e2e_test_LLM.prompt,sha256=zcZTESxyOFg_Ze7ulSf3tIyuUocMAvNwljheslMkEnA,10507
139
+ pdd/prompts/agentic_change_step10_identify_issues_LLM.prompt,sha256=pzl3-TUy4jC2CaQj9ks-We9ULS09GmORHSrXENXq2dQ,4216
140
+ pdd/prompts/agentic_change_step11_fix_issues_LLM.prompt,sha256=ou6S1IO7dNZoeTtylpq7VJ5P5_ce7kmtuWR95puvBOI,3226
141
+ pdd/prompts/agentic_change_step12_create_pr_LLM.prompt,sha256=coqLstnZFspnZW0EYcTb8JbdzcjdYXtuI3eyJpf4fXU,3259
142
+ pdd/prompts/agentic_change_step1_duplicate_LLM.prompt,sha256=22ylrCC1EViSznnjTrRi7n0as-bFarguEPsgiE8K9ow,2305
143
+ pdd/prompts/agentic_change_step2_docs_LLM.prompt,sha256=fnWGYxz6seWzOtU3SIJsawf_iMP6TX0dkGu_G2vDC_A,3048
144
+ pdd/prompts/agentic_change_step3_research_LLM.prompt,sha256=MPH0Mt7V1Hmlaa1JU3CK3mCLQ-EmpuYgQJGEwv5mh_A,3771
145
+ pdd/prompts/agentic_change_step4_clarify_LLM.prompt,sha256=vQkwmGsWphnlPfKg0zYLmNXoyImIZ5LNp8v6OB7Vixg,5151
146
+ pdd/prompts/agentic_change_step5_docs_change_LLM.prompt,sha256=BgQA117k-ZFtrIC732aygFnIUt1QEQlTFzem91zbVW0,3058
147
+ pdd/prompts/agentic_change_step6_devunits_LLM.prompt,sha256=FL1ISdtxqd1G9_cb3UbIp7SwetKRkTQ6kaazMCatvNQ,3977
148
+ pdd/prompts/agentic_change_step7_architecture_LLM.prompt,sha256=UYEkz3bJi4c4suuLJeZYqvGpl24GT9G5Ovya4pc4KF4,5461
149
+ pdd/prompts/agentic_change_step8_analyze_LLM.prompt,sha256=bQJlGpg6cNIxtQduJX9imKvZQQTgbQoet7kKkN7hGis,4202
150
+ pdd/prompts/agentic_change_step9_implement_LLM.prompt,sha256=x3qWu_BJiXwF-8-766HfVfFxG8NcAxvKPmNnuP97D_g,5688
151
+ pdd/prompts/agentic_crash_explore_LLM.prompt,sha256=nlNO-LSHIbECO82j25CR8xe8IKKMFeidOkpRvW8Vn8w,1993
152
+ pdd/prompts/agentic_e2e_fix_step1_unit_tests_LLM.prompt,sha256=mREKobyUbVggw1pmG7e1JAr9f4tdkYLsLpXlXqTdHzQ,2936
153
+ pdd/prompts/agentic_e2e_fix_step2_e2e_tests_LLM.prompt,sha256=8qacgiw-ZJPQLQR_gNHERKOiY7zuDM3MzbySP9_VU58,2390
154
+ pdd/prompts/agentic_e2e_fix_step3_root_cause_LLM.prompt,sha256=6177oE0EgkBh28rzIdKwsBgnyC-Vzn6kaTIlvuCiWO0,2506
155
+ pdd/prompts/agentic_e2e_fix_step4_fix_e2e_tests_LLM.prompt,sha256=2a8cmGDvEIwkqfWLmZGgXT1NfhxdpNJDkFHx_v75NUE,2480
156
+ pdd/prompts/agentic_e2e_fix_step5_identify_devunits_LLM.prompt,sha256=2v-wRFS5DojAvSXYoKPeSPQcUxmUOiHOcObp0sHVwV4,2479
157
+ pdd/prompts/agentic_e2e_fix_step6_create_unit_tests_LLM.prompt,sha256=KNdgB0SuCxpbvYA5vy7TMKHXf6Ykc1fhNm-7UxP2eok,2614
158
+ pdd/prompts/agentic_e2e_fix_step7_verify_tests_LLM.prompt,sha256=QxtlJFEU_8YQGOWy_yBqObcGAI7ld4fHFGXqqw2uIoo,2823
159
+ pdd/prompts/agentic_e2e_fix_step8_run_pdd_fix_LLM.prompt,sha256=619s76FUJ9yaNFm6Zhv-8jCvrGka-IADUo0ICJIBhMg,3147
160
+ pdd/prompts/agentic_e2e_fix_step9_verify_all_LLM.prompt,sha256=wxNbDrxQILxK9PiuiktcKJEo0Ix-IKbC4AsU166YjpI,3147
161
+ pdd/prompts/agentic_fix_explore_LLM.prompt,sha256=2K43Bg4JTCFwXuhqFZqR9hRkfPegtjAWsLON414uLUM,1901
162
+ pdd/prompts/agentic_fix_harvest_only_LLM.prompt,sha256=9dCB-Kqy221s47XRpCwIO_EzVHwWKSBYyFgwVfQb4ZQ,2316
163
+ pdd/prompts/agentic_fix_primary_LLM.prompt,sha256=wZpUrVUw8TxDr6hhLgCRqx7LLO_kBGIxUKiPVMXBSDg,3309
164
+ pdd/prompts/agentic_update_LLM.prompt,sha256=pUe3h7WLZXGpuTNof8dHfZhq3vTO6rmZq2Z_yLpPXG4,2735
165
+ pdd/prompts/agentic_verify_explore_LLM.prompt,sha256=wC9TqpsAP0rNnyz_CczPFmmT4P_iGgEsqg_fUqyNEFw,1953
166
+ pdd/prompts/auto_include_LLM.prompt,sha256=ds9ntQBDaMttPSb0Hb_YrEJDgx7CFU1yvo3J4ry0xcM,15956
167
+ pdd/prompts/bug_to_unit_test_LLM.prompt,sha256=KdMkvRVnjVSf0NTYIaDXIMT93xPttXEwkMpjWx5leLs,1588
168
+ pdd/prompts/change_LLM.prompt,sha256=5rgWIL16p3VRURd2_lNtcbu_MVRqPhI8gFIBt1gkzDQ,2164
169
+ pdd/prompts/code_patcher_LLM.prompt,sha256=yeV4lsRuPQzNdKRV_LQUOmmWh2yhu8YgKXUWo4bge4I,2392
170
+ pdd/prompts/conflict_LLM.prompt,sha256=46DB_qOCtsfVsj6y8E8grI0izxAk_-ixoENUUHQAkHc,1593
171
+ pdd/prompts/continue_generation_LLM.prompt,sha256=Jsd3eeu23heqw2frfOLzZ5c9dn0QZrfWGratfyWV-ac,111
172
+ pdd/prompts/detect_change_LLM.prompt,sha256=-q8VqXAv6ufEE193DNbTcgpbxiKISR5-5j3M0TTqa8s,4522
173
+ pdd/prompts/diff_analyzer_LLM.prompt,sha256=2lZI4g4DO9NwMPnxVJW717dGG5LQuBXqgeIjYfplEdU,2901
174
+ pdd/prompts/example_generator_LLM.prompt,sha256=aF1ZDTKcvYaAYQFZFy7OVh6w45cgw5Oo17WTQf37hXE,2466
175
+ pdd/prompts/extract_auto_include_LLM.prompt,sha256=BamIIt8qrML2ZtNe3D4K30iMobJ4URtkyomHCDaf0iw,313
176
+ pdd/prompts/extract_code_LLM.prompt,sha256=7Tb5lGETfgGDgb0hFNn5-10K3Mlx2FKVg0lIqJe1RDI,2960
177
+ pdd/prompts/extract_conflict_LLM.prompt,sha256=V_xXdU7V4IZK9SVFxJtXKRn_wFkP3zp4FJrxeNM9XYc,1023
178
+ pdd/prompts/extract_detect_change_LLM.prompt,sha256=2HXSb9bGjHZsKrUGvfBdBAAcGBCrQ2AxC8vUJRAfB1U,1003
179
+ pdd/prompts/extract_program_code_fix_LLM.prompt,sha256=z8RsuRfPVaxMrAeKzzEQgBt07DysIR2DDaxmgfFT8sk,1953
180
+ pdd/prompts/extract_prompt_change_LLM.prompt,sha256=1e3AxcVpZ85t7pVvXqCpBUJzGI995MIimXicClagSvw,366
181
+ pdd/prompts/extract_prompt_split_LLM.prompt,sha256=rhStDroVxDYRcCjYq7XCCub8B-KmfCFj5_7PxhgMmz0,1097
182
+ pdd/prompts/extract_prompt_update_LLM.prompt,sha256=htttAp-QC6YycnfhFVsLhTM0uvhyEz9TEoGdFyZS8Yw,910
183
+ pdd/prompts/extract_promptline_LLM.prompt,sha256=mPeTjVaYJtgz2ygO0TVeO3vgmoBvWOWFSrwd1wKXJ74,831
184
+ pdd/prompts/extract_unit_code_fix_LLM.prompt,sha256=c4l6twMLC2YqDDvOj_DcaKmJQF8kIupeqvkueK_OQng,14301
185
+ pdd/prompts/extract_xml_LLM.prompt,sha256=eRcHaL-khShpb7C1_b7wmBJHfo2Kh1Wvjo_aOcWZovU,561
186
+ pdd/prompts/find_verification_errors_LLM.prompt,sha256=TAvwpsj8RYv6pmmxJK330rGxCS1TPmhztGxyPUtxT5I,3419
187
+ pdd/prompts/fix_code_module_errors_LLM.prompt,sha256=VSO0q3KtPbSWZkiJnmpgviUtSu73jpd2u3DWRVp-VbA,3794
188
+ pdd/prompts/fix_errors_from_unit_tests_LLM.prompt,sha256=3XGMGkBh5jUSXyuafpUsHGE_ynIfCUErAJ3HIkClxlY,5861
189
+ pdd/prompts/fix_verification_errors_LLM.prompt,sha256=AO1yhxNfM7s-93ZjufGrJUcRvSl04CmZl_WEbnTUFbY,4997
190
+ pdd/prompts/generate_test_LLM.prompt,sha256=GE_MNQKyZx4R9AWNIU9TOa2ayFINif7S8N4FHRt4bQ0,4612
191
+ pdd/prompts/generate_test_from_example_LLM.prompt,sha256=XdMK2KgWRHNm-ph3CxtqeUNz0geCOMt87Qgc6P5dWj4,3678
192
+ pdd/prompts/increase_tests_LLM.prompt,sha256=XvzvwTyAaxbJIWwUk0iby2CoTfRCVRWbjT3D3G29OYQ,914
193
+ pdd/prompts/insert_includes_LLM.prompt,sha256=g-p2gXKENsqvfK5Q9FYbqFsIJ5CP7rbxmd4rROA-W80,1453
194
+ pdd/prompts/prompt_code_diff_LLM.prompt,sha256=_yulkWstjkBUhBjPpoXcXeWXJfobJfsR_fRrGCbHNFM,5831
195
+ pdd/prompts/prompt_diff_LLM.prompt,sha256=qYI96mZI_8fqf7Iuw_iOxi9HF7XekM7UsV2cUDqttws,2979
196
+ pdd/prompts/split_LLM.prompt,sha256=cMVyazsue6eerOPYeueqpSNRiITy1ht0HgGytPFiQIk,6244
197
+ pdd/prompts/summarize_file_LLM.prompt,sha256=qb9K61XMVFy7hgGITglI37Xg7yLPAGQBm0rUBEqRnEc,387
198
+ pdd/prompts/sync_analysis_LLM.prompt,sha256=tU_0MlvmS5OT2zMCaldkaL-kX2x6pzZSa3uuKHLwUg0,3925
199
+ pdd/prompts/trace_LLM.prompt,sha256=0fHSXQbUAqQ7ABRcyYxesA1SVPbDQWCDwcW4VLPuTBA,1233
200
+ pdd/prompts/trim_results_LLM.prompt,sha256=w4aL0S7v7fPSi3L9XeQR3mUOgNv3hpTDqi4rOtu7L7I,4033
201
+ pdd/prompts/trim_results_start_LLM.prompt,sha256=OKz8fAf1cYWKWgslFOHEkUpfaUDARh3DD9L7ud9FOVE,2177
202
+ pdd/prompts/unfinished_prompt_LLM.prompt,sha256=vud_G9PlVv9Ig64uBC-hPEVFRk5lwpc8pW6tOIxJM4I,5082
203
+ pdd/prompts/update_prompt_LLM.prompt,sha256=LKLwcTh-fqUMTl2Jn5kmmFqf1y90g7e9uvZLrF77_-M,3332
204
+ pdd/prompts/xml_convertor_LLM.prompt,sha256=YGRGXJeg6EhM9690f-SKqQrKqSJjLFD51UrPOlO0Frg,2786
205
+ pdd/server/__init__.py,sha256=joPBmcoXZsiThXNOCh4zNHqS-JP0Ay7gmiBu06_HRLs,1035
206
+ pdd/server/app.py,sha256=HrBs8L3mg1aO39xl0YZRMnHMUU3SwowuEhN5saxPilU,12111
207
+ pdd/server/click_executor.py,sha256=uOHhINBQ8FRfLDl5yUOQsHQxowrzkb_TC8BSdw8R7do,19753
208
+ pdd/server/executor.py,sha256=JJUE_JoAYJBi0vhGr2ZSJbBR9FURXe4K9iYySjp7mak,10563
209
+ pdd/server/jobs.py,sha256=oLI1luuuR2AFRzsn8b77xGX2ykohHcFbzkY0P9dhBTg,24580
210
+ pdd/server/models.py,sha256=oXsvCQM7L-cGP0hKLvtZGE98svuoIu4lYFqTu-WQWUE,10530
211
+ pdd/server/security.py,sha256=XmT4qnRtlkL0KMWTZuzxx0PQ_XdgasYLXYGH2oc3NY4,8746
212
+ pdd/server/terminal_spawner.py,sha256=ULn9ylYlFIGgpcXfqdauhL3mYGLf-mvLBirbD_tbnDo,7875
213
+ pdd/server/token_counter.py,sha256=cpNX84Ne2hFAqQImvft5mi_6RkBbj7zyqjb4seB0tPk,5628
214
+ pdd/server/routes/__init__.py,sha256=fotK-A6Vk4h5PAKg_QPdi33Jo39KxizNG9MrgErJNz0,754
215
+ pdd/server/routes/architecture.py,sha256=XvgUugOgjJ5C6p8ab_Q1oNhMGyE7rXwTRMDhAsJGJgU,14928
216
+ pdd/server/routes/auth.py,sha256=Yp6Tb2_S2WtVZpzbMb_LnL-T2_CMhZR3AHxGzlal_8c,11886
217
+ pdd/server/routes/commands.py,sha256=PEQtPoAF74ByYNmPwujyXjhJN8b5YEjnvb2XYqZDYqM,31608
218
+ pdd/server/routes/config.py,sha256=7-gPMIpqKs22ogcoj3RtOfCUfaWXxEw1hZX_e3Dlh9k,1043
219
+ pdd/server/routes/files.py,sha256=qqtoy7Zcy3ixZM9y5T1N6R9i7wxxz-YAzLzwVOyKlCI,21214
220
+ pdd/server/routes/prompts.py,sha256=3GpJIBjfWcCFSu_MpUQqYYYDnYjhNKbBgQKdcvhUJRo,57743
221
+ pdd/server/routes/websocket.py,sha256=lh-65f9ZRLS-QQS-ZTIMi_s72mK_9Ntu6vTfix2hA5o,16185
222
+ pdd/templates/architecture/architecture_json.prompt,sha256=femVCFSpf51Qj1TsLD-rwF6CcoUz5Iclaxo9p-CpUSI,10912
223
+ pdd/templates/generic/generate_prompt.prompt,sha256=0qLK-L4kHmd3TKTQT0o9NOwc8DbdFpijTO9dJqPfwOU,10708
224
+ pdd_cli-0.0.121.dist-info/licenses/LICENSE,sha256=kvTJnnxPVTYlGKSY4ZN1kzdmJ0lxRdNWxgupaB27zsU,1066
225
+ pdd_cli-0.0.121.dist-info/METADATA,sha256=n1DCMHQBpJz5_CmrrljkE1u1_V63ZBE1AF22slKfchk,13051
226
+ pdd_cli-0.0.121.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
227
+ pdd_cli-0.0.121.dist-info/entry_points.txt,sha256=Kr8HtNVb8uHZtQJNH4DnF8j7WNgWQbb7_Pw5hECSR-I,36
228
+ pdd_cli-0.0.121.dist-info/top_level.txt,sha256=xjnhIACeMcMeDfVNREgQZl4EbTni2T11QkL5r7E-sbE,4
229
+ pdd_cli-0.0.121.dist-info/RECORD,,