ara-cli 0.1.9.68__py3-none-any.whl → 0.1.9.70__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.
Potentially problematic release.
This version of ara-cli might be problematic. Click here for more details.
- ara_cli/ara_command_action.py +6 -2
- ara_cli/ara_config.py +21 -7
- ara_cli/artefact_autofix.py +278 -23
- ara_cli/artefact_fuzzy_search.py +9 -4
- ara_cli/artefact_models/feature_artefact_model.py +72 -18
- ara_cli/artefact_reader.py +4 -3
- ara_cli/artefact_scan.py +27 -2
- ara_cli/file_classifier.py +2 -2
- ara_cli/prompt_handler.py +18 -19
- ara_cli/version.py +1 -1
- {ara_cli-0.1.9.68.dist-info → ara_cli-0.1.9.70.dist-info}/METADATA +1 -1
- {ara_cli-0.1.9.68.dist-info → ara_cli-0.1.9.70.dist-info}/RECORD +18 -18
- tests/{test_ara_autofix.py → test_artefact_autofix.py} +163 -29
- tests/test_artefact_scan.py +50 -17
- tests/test_file_classifier.py +1 -1
- {ara_cli-0.1.9.68.dist-info → ara_cli-0.1.9.70.dist-info}/WHEEL +0 -0
- {ara_cli-0.1.9.68.dist-info → ara_cli-0.1.9.70.dist-info}/entry_points.txt +0 -0
- {ara_cli-0.1.9.68.dist-info → ara_cli-0.1.9.70.dist-info}/top_level.txt +0 -0
ara_cli/artefact_scan.py
CHANGED
|
@@ -2,13 +2,21 @@ from textwrap import indent
|
|
|
2
2
|
import os
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
def check_file(file_path, artefact_class):
|
|
5
|
+
def check_file(file_path, artefact_class, classified_artefact_info=None):
|
|
6
6
|
from pydantic import ValidationError
|
|
7
|
+
from ara_cli.artefact_fuzzy_search import extract_artefact_names_of_classifier
|
|
8
|
+
from ara_cli.file_classifier import FileClassifier
|
|
9
|
+
|
|
7
10
|
try:
|
|
8
11
|
with open(file_path, "r", encoding="utf-8") as f:
|
|
9
12
|
content = f.read()
|
|
10
13
|
except OSError as e:
|
|
11
14
|
return False, f"File error: {e}"
|
|
15
|
+
|
|
16
|
+
if not classified_artefact_info:
|
|
17
|
+
file_classifier = FileClassifier(os)
|
|
18
|
+
classified_artefact_info = file_classifier.classify_files()
|
|
19
|
+
|
|
12
20
|
try:
|
|
13
21
|
artefact_instance = artefact_class.deserialize(content)
|
|
14
22
|
|
|
@@ -19,6 +27,23 @@ def check_file(file_path, artefact_class):
|
|
|
19
27
|
reason = (f"Filename-Title Mismatch: The file name '{file_name_without_ext}' "
|
|
20
28
|
f"does not match the artefact title '{artefact_instance.title}'.")
|
|
21
29
|
return False, reason
|
|
30
|
+
|
|
31
|
+
# Check contribution reference validity
|
|
32
|
+
contribution = artefact_instance.contribution
|
|
33
|
+
if contribution and contribution.artefact_name and contribution.classifier:
|
|
34
|
+
|
|
35
|
+
# Find all artefact names of the referenced classifier
|
|
36
|
+
all_artefact_names = extract_artefact_names_of_classifier(
|
|
37
|
+
classified_files=classified_artefact_info,
|
|
38
|
+
classifier=contribution.classifier
|
|
39
|
+
)
|
|
40
|
+
|
|
41
|
+
# Check if the referenced artefact exists
|
|
42
|
+
if contribution.artefact_name not in all_artefact_names:
|
|
43
|
+
reason = (f"Invalid Contribution Reference: The contribution references "
|
|
44
|
+
f"'{contribution.classifier}' artefact '{contribution.artefact_name}' "
|
|
45
|
+
f"which does not exist.")
|
|
46
|
+
return False, reason
|
|
22
47
|
|
|
23
48
|
return True, None
|
|
24
49
|
except (ValidationError, ValueError, AssertionError) as e:
|
|
@@ -37,7 +62,7 @@ def find_invalid_files(classified_artefact_info, classifier):
|
|
|
37
62
|
continue
|
|
38
63
|
if ".data" in artefact_info["file_path"]:
|
|
39
64
|
continue
|
|
40
|
-
is_valid, reason = check_file(artefact_info["file_path"], artefact_class)
|
|
65
|
+
is_valid, reason = check_file(artefact_info["file_path"], artefact_class, classified_artefact_info)
|
|
41
66
|
if not is_valid:
|
|
42
67
|
invalid_files.append((artefact_info["file_path"], reason))
|
|
43
68
|
return invalid_files
|
ara_cli/file_classifier.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from ara_cli.classifier import Classifier
|
|
2
2
|
from ara_cli.artefact_models.artefact_model import Artefact
|
|
3
|
-
from ara_cli.artefact_fuzzy_search import
|
|
3
|
+
from ara_cli.artefact_fuzzy_search import find_closest_name_matches
|
|
4
4
|
from functools import lru_cache
|
|
5
5
|
from typing import Optional
|
|
6
6
|
import textwrap
|
|
@@ -17,7 +17,7 @@ class FileClassifier:
|
|
|
17
17
|
info["title"] for info in classified_artefacts.get(classifier, [])]
|
|
18
18
|
if name in all_artefact_names:
|
|
19
19
|
return name
|
|
20
|
-
return
|
|
20
|
+
return find_closest_name_matches(name, all_artefact_names)
|
|
21
21
|
|
|
22
22
|
@lru_cache(maxsize=None)
|
|
23
23
|
def read_file_content(self, file_path):
|
ara_cli/prompt_handler.py
CHANGED
|
@@ -3,7 +3,7 @@ import litellm
|
|
|
3
3
|
from ara_cli.classifier import Classifier
|
|
4
4
|
from ara_cli.artefact_creator import ArtefactCreator
|
|
5
5
|
from ara_cli.template_manager import TemplatePathManager
|
|
6
|
-
from ara_cli.ara_config import ConfigManager
|
|
6
|
+
from ara_cli.ara_config import ConfigManager, LLMConfigItem
|
|
7
7
|
from ara_cli.file_lister import generate_markdown_listing
|
|
8
8
|
from os.path import exists, join
|
|
9
9
|
import os
|
|
@@ -20,15 +20,15 @@ class LLMSingleton:
|
|
|
20
20
|
|
|
21
21
|
def __init__(self, model_id):
|
|
22
22
|
config = ConfigManager().get_config()
|
|
23
|
-
|
|
24
|
-
selected_config = llm_config[str(model_id)]
|
|
23
|
+
selected_config = config.llm_config.get(str(model_id))
|
|
25
24
|
|
|
26
25
|
if not selected_config:
|
|
27
26
|
raise ValueError(f"No configuration found for the model: {model_id}")
|
|
28
27
|
|
|
29
28
|
LLMSingleton._model = model_id
|
|
30
|
-
|
|
31
|
-
|
|
29
|
+
|
|
30
|
+
# Typesafe for None values inside the config.
|
|
31
|
+
self.config_parameters = selected_config.model_dump(exclude_none=True)
|
|
32
32
|
|
|
33
33
|
LLMSingleton._instance = self
|
|
34
34
|
|
|
@@ -74,15 +74,14 @@ def read_string_from_file(path):
|
|
|
74
74
|
def send_prompt(prompt):
|
|
75
75
|
chat = LLMSingleton.get_instance()
|
|
76
76
|
|
|
77
|
-
# remove provider from config parameters
|
|
78
77
|
config_parameters = chat.config_parameters.copy()
|
|
79
|
-
|
|
78
|
+
if "provider" in config_parameters:
|
|
79
|
+
del config_parameters["provider"]
|
|
80
80
|
|
|
81
81
|
completion = litellm.completion(
|
|
82
82
|
**config_parameters,
|
|
83
83
|
messages=prompt,
|
|
84
|
-
stream=True
|
|
85
|
-
max_tokens=32768
|
|
84
|
+
stream=True
|
|
86
85
|
)
|
|
87
86
|
for chunk in completion:
|
|
88
87
|
yield chunk
|
|
@@ -95,7 +94,7 @@ def append_headings(classifier, param, heading_name):
|
|
|
95
94
|
|
|
96
95
|
# Check if the file exists, and if not, create an empty file
|
|
97
96
|
if not os.path.exists(artefact_data_path):
|
|
98
|
-
with open(artefact_data_path, 'w') as file:
|
|
97
|
+
with open(artefact_data_path, 'w', encoding='utf-8') as file:
|
|
99
98
|
file.write("")
|
|
100
99
|
|
|
101
100
|
content = read_string_from_file(artefact_data_path)
|
|
@@ -127,7 +126,7 @@ def prompt_data_directory_creation(classifier, parameter):
|
|
|
127
126
|
|
|
128
127
|
|
|
129
128
|
def get_file_content(path):
|
|
130
|
-
with open(path, 'r') as file:
|
|
129
|
+
with open(path, 'r', encoding='utf-8') as file:
|
|
131
130
|
return file.read()
|
|
132
131
|
|
|
133
132
|
|
|
@@ -161,7 +160,7 @@ def load_selected_prompt_templates(classifier, parameter):
|
|
|
161
160
|
print("WARNING: config.prompt_templates.md does not exist.")
|
|
162
161
|
return
|
|
163
162
|
|
|
164
|
-
with open(config_file_path, 'r') as config_file:
|
|
163
|
+
with open(config_file_path, 'r', encoding='utf-8') as config_file:
|
|
165
164
|
content = config_file.read()
|
|
166
165
|
|
|
167
166
|
global_base_template_path = TemplatePathManager.get_template_base_path()
|
|
@@ -253,7 +252,7 @@ def extract_and_load_markdown_files(md_prompt_file_path):
|
|
|
253
252
|
"""
|
|
254
253
|
header_stack = []
|
|
255
254
|
path_accumulator = []
|
|
256
|
-
with open(md_prompt_file_path, 'r') as file:
|
|
255
|
+
with open(md_prompt_file_path, 'r', encoding='utf-8') as file:
|
|
257
256
|
for line in file:
|
|
258
257
|
if line.strip().startswith('#'):
|
|
259
258
|
level = line.count('#')
|
|
@@ -322,7 +321,7 @@ def get_partial_file_content(file_name, line_ranges):
|
|
|
322
321
|
lines_to_read.extend(range(start, end + 1))
|
|
323
322
|
|
|
324
323
|
partial_content = []
|
|
325
|
-
with open(file_name, 'r') as file:
|
|
324
|
+
with open(file_name, 'r', encoding='utf-8') as file:
|
|
326
325
|
for i, line in enumerate(file, 1):
|
|
327
326
|
if i in lines_to_read:
|
|
328
327
|
partial_content.append(line)
|
|
@@ -372,7 +371,7 @@ def create_and_send_custom_prompt(classifier, parameter):
|
|
|
372
371
|
extensions = [".rules.md", ".prompt_givens.md", ".intention.md", ".commands.md"]
|
|
373
372
|
combined_content_markdown, image_data_list = collect_file_content_by_extension(prompt_data_path, extensions)
|
|
374
373
|
|
|
375
|
-
with open(prompt_file_path_markdown, 'w') as file:
|
|
374
|
+
with open(prompt_file_path_markdown, 'w', encoding='utf-8') as file:
|
|
376
375
|
file.write(combined_content_markdown)
|
|
377
376
|
|
|
378
377
|
prompt = read_string_from_file(prompt_file_path_markdown)
|
|
@@ -390,7 +389,7 @@ def create_and_send_custom_prompt(classifier, parameter):
|
|
|
390
389
|
append_headings(classifier, parameter, "result")
|
|
391
390
|
|
|
392
391
|
artefact_data_path = f"ara/{sub_directory}/{parameter}.data/{classifier}.prompt_log.md"
|
|
393
|
-
with open(artefact_data_path, 'a') as file:
|
|
392
|
+
with open(artefact_data_path, 'a', encoding='utf-8') as file:
|
|
394
393
|
for chunk in send_prompt(message_list):
|
|
395
394
|
chunk_content = chunk.choices[0].delta.content
|
|
396
395
|
if not chunk_content:
|
|
@@ -424,7 +423,7 @@ def generate_config_prompt_givens_file(prompt_data_path, config_prompt_givens_na
|
|
|
424
423
|
print(f"artefact {artefact_to_mark} marked in related config.prompt_givens.md per default")
|
|
425
424
|
|
|
426
425
|
# Read the generated file content
|
|
427
|
-
with open(config_prompt_givens_path, 'r') as file:
|
|
426
|
+
with open(config_prompt_givens_path, 'r', encoding='utf-8') as file:
|
|
428
427
|
markdown_listing = file.readlines()
|
|
429
428
|
|
|
430
429
|
updated_listing = []
|
|
@@ -435,5 +434,5 @@ def generate_config_prompt_givens_file(prompt_data_path, config_prompt_givens_na
|
|
|
435
434
|
updated_listing.append(line)
|
|
436
435
|
|
|
437
436
|
# Write the updated listing back to the file
|
|
438
|
-
with open(config_prompt_givens_path, 'w') as file:
|
|
439
|
-
file.write("".join(updated_listing))
|
|
437
|
+
with open(config_prompt_givens_path, 'w', encoding='utf-8') as file:
|
|
438
|
+
file.write("".join(updated_listing))
|
ara_cli/version.py
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
# version.py
|
|
2
|
-
__version__ = "0.1.9.
|
|
2
|
+
__version__ = "0.1.9.70" # fith parameter like .0 for local install test purposes only. official numbers should be 4 digit numbers
|
|
@@ -1,37 +1,37 @@
|
|
|
1
1
|
ara_cli/__init__.py,sha256=0zl7IegxTid26EBGLav_fXZ4CCIV3H5TfAoFQiOHjvg,148
|
|
2
2
|
ara_cli/__main__.py,sha256=Z6XYWRLceIoZPvfC-X9EXouSZdtFOOe84kKVWJGA4r4,1861
|
|
3
|
-
ara_cli/ara_command_action.py,sha256=
|
|
3
|
+
ara_cli/ara_command_action.py,sha256=aq074NT63xsuyIJgGnM0htp7kpyolaLwtauXjQEPljA,21852
|
|
4
4
|
ara_cli/ara_command_parser.py,sha256=v8LUdkBSI2771gI53PdrxtD8YVjhk-7E8vgTEsTGnRM,17952
|
|
5
|
-
ara_cli/ara_config.py,sha256=
|
|
6
|
-
ara_cli/artefact_autofix.py,sha256
|
|
5
|
+
ara_cli/ara_config.py,sha256=EBVxVXJauWNmLVSDeTdNvncO0z1avR3hN9mkJhPmaU0,4183
|
|
6
|
+
ara_cli/artefact_autofix.py,sha256=F4Vp-SI6YI0rKeVswOlg23OemH7w4CEJ9-ChcqIpn4U,14866
|
|
7
7
|
ara_cli/artefact_creator.py,sha256=tUNCNvfFYMheyF_viyrQhm2-43AkbHFoQaHui9ntvws,6002
|
|
8
8
|
ara_cli/artefact_deleter.py,sha256=Co4wwCH3yW8H9NrOq7_2p5571EeHr0TsfE-H8KqoOfY,1900
|
|
9
|
-
ara_cli/artefact_fuzzy_search.py,sha256=
|
|
9
|
+
ara_cli/artefact_fuzzy_search.py,sha256=iBlDqjZf-_D3VUjFf7ZwkiQbpQDcwRndIU7aG_sRTgE,2668
|
|
10
10
|
ara_cli/artefact_link_updater.py,sha256=itMS_Z64jE8bBly9WA01z8PqkBeNW6ntTO7ryMeCTRg,3703
|
|
11
11
|
ara_cli/artefact_lister.py,sha256=jhk4n4eqp7hDIq07q43QzS7-36BM3OfZ4EABxCeOGcw,4764
|
|
12
|
-
ara_cli/artefact_reader.py,sha256=
|
|
12
|
+
ara_cli/artefact_reader.py,sha256=zVR3DZ4z6vjKPQnFZVbPS75MkluaoLkz0lWmg_hXxTY,8136
|
|
13
13
|
ara_cli/artefact_renamer.py,sha256=loIn1DF9kVnjhH7wP1v5qUvt3s0uKeWXuQPrHXenQGE,4025
|
|
14
|
-
ara_cli/artefact_scan.py,sha256=
|
|
14
|
+
ara_cli/artefact_scan.py,sha256=ZB5mZkFto3K5xg_nZsQekWz5Ly7X0WyHnBsvPL3sC6I,3599
|
|
15
15
|
ara_cli/chat.py,sha256=7xTtPEDk052_wmIzoti7GavEJ1vpRxe5c084WQ1C7dg,28617
|
|
16
16
|
ara_cli/classifier.py,sha256=zWskj7rBYdqYBGjksBm46iTgVU5IIf2PZsJr4qeiwVU,1878
|
|
17
17
|
ara_cli/codefusionretriever.py,sha256=fCHgXdIBRzkVAnapX-KI2NQ44XbrrF4tEQmn5J6clUI,1980
|
|
18
18
|
ara_cli/codehierachieretriever.py,sha256=Xd3EgEWWhkSf1TmTWtf8X5_YvyE_4B66nRrqarwSiTU,1182
|
|
19
19
|
ara_cli/commandline_completer.py,sha256=b00Dqb5n7SecpxYIDLxAfYhp8X6e3c8a5qYz6ko0i3E,1192
|
|
20
20
|
ara_cli/directory_navigator.py,sha256=6QbSAjJrJ5a6Lutol9J4HFgVDMiAQ672ny9TATrh04U,3318
|
|
21
|
-
ara_cli/file_classifier.py,sha256=
|
|
21
|
+
ara_cli/file_classifier.py,sha256=26MPVCaZlQkRDa62FoQ6ZqawOiaNgspUvcFOF93bHzo,3971
|
|
22
22
|
ara_cli/file_lister.py,sha256=VFpUmHU1d6sQvJWSeuFqkZZ0Ci3ZYCUtAUfvgWypaYU,2314
|
|
23
23
|
ara_cli/filename_validator.py,sha256=Aw9PL8d5-Ymhp3EY6lDrUBk3cudaNqo1Uw5RzPpI1jA,118
|
|
24
24
|
ara_cli/list_filter.py,sha256=Not17hIngI37gZsLtIKxopB-BmyWoOGlBzSqBwh-Zpc,5273
|
|
25
25
|
ara_cli/output_suppressor.py,sha256=ZByUwLH2DxOb-eJ31KQbtIziBKdykoyxvwxZ0tSammA,371
|
|
26
26
|
ara_cli/prompt_chat.py,sha256=kd_OINDQFit6jN04bb7mzgY259JBbRaTaNp9F-webkc,1346
|
|
27
27
|
ara_cli/prompt_extractor.py,sha256=a8LwPj6U8sG_v3SqDXQyPvDZQds4kHnYSO8eGissYJA,7503
|
|
28
|
-
ara_cli/prompt_handler.py,sha256=
|
|
28
|
+
ara_cli/prompt_handler.py,sha256=ukYWR_AMDd8nfGkeUKyYQ8PO_-PfO8x9tV1kNcNWOT4,17672
|
|
29
29
|
ara_cli/prompt_rag.py,sha256=vmlt4-rSboWibwgO_KUF79TK99YXT5KXjmbD9FeWdZY,7449
|
|
30
30
|
ara_cli/run_file_lister.py,sha256=XbrrDTJXp1LFGx9Lv91SNsEHZPP-PyEMBF_P4btjbDA,2360
|
|
31
31
|
ara_cli/tag_extractor.py,sha256=4krQyvmLR2ffhe7N7lWC7QjaxXcb90HaQdmjnBiD8ak,2523
|
|
32
32
|
ara_cli/template_manager.py,sha256=YXPj2jGNDb-diIHFEK_vGJ-ZucodnXSGAPofKTnOofI,6633
|
|
33
33
|
ara_cli/update_config_prompt.py,sha256=PZgNIN3dTw6p80GyX8Sp5apkAhSoykwnkEbHo3IOkUo,4571
|
|
34
|
-
ara_cli/version.py,sha256=
|
|
34
|
+
ara_cli/version.py,sha256=_1Hbcx99RFW-ZzwbZEWia-OGS77hOyexYcSKcpQKm_Y,146
|
|
35
35
|
ara_cli/artefact_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
36
36
|
ara_cli/artefact_models/artefact_load.py,sha256=dNcwZDW2Dk0bts9YnPZ0ESmWD2NbsLIvl4Z-qQeGmTQ,401
|
|
37
37
|
ara_cli/artefact_models/artefact_mapping.py,sha256=8aD0spBjkJ8toMAmFawc6UTUxB6-tEEViZXv2I-r88Q,1874
|
|
@@ -41,7 +41,7 @@ ara_cli/artefact_models/businessgoal_artefact_model.py,sha256=jqYFMXjWle0YW9RvcF
|
|
|
41
41
|
ara_cli/artefact_models/capability_artefact_model.py,sha256=SZqHx4O2mj4urn77Stnj4_Jxtlq3-LgBBU9SMkByppI,3079
|
|
42
42
|
ara_cli/artefact_models/epic_artefact_model.py,sha256=IadQWs6SWNcLgwvtOQWmYDyV9xLr3WwAsx-YMFan5fA,5765
|
|
43
43
|
ara_cli/artefact_models/example_artefact_model.py,sha256=UXrKbaPotg1jwcrVSdCeo-XH4tTD_-U1e3giaBn5_xg,1384
|
|
44
|
-
ara_cli/artefact_models/feature_artefact_model.py,sha256=
|
|
44
|
+
ara_cli/artefact_models/feature_artefact_model.py,sha256=JvgBKsiI1Y5Cs_0Ygn6lttJIjCpEC9XyZieDExUnsvg,18386
|
|
45
45
|
ara_cli/artefact_models/issue_artefact_model.py,sha256=v6CpKnkqiUh6Wch2kkEmyyW49c8ysdy1qz8l1Ft9uJA,2552
|
|
46
46
|
ara_cli/artefact_models/keyfeature_artefact_model.py,sha256=a3MyAiePN9n_GTN6QkTvamdsaorwVUff6w-9CdRZSlo,4243
|
|
47
47
|
ara_cli/artefact_models/serialize_helper.py,sha256=0XCruO70-fyfLfTn7pnt8NrSQe79eYNUAjuQaV8K6_8,586
|
|
@@ -132,27 +132,27 @@ ara_cli/templates/specification_breakdown_files/template.step.md,sha256=nzDRl9Xo
|
|
|
132
132
|
ara_cli/templates/specification_breakdown_files/template.technology.exploration.md,sha256=zQyiJcmbUfXdte-5uZwZUpT6ey0zwfZ00P4VwI97jQk,2274
|
|
133
133
|
ara_cli/templates/specification_breakdown_files/template.technology.md,sha256=bySiksz-8xtq0Nnj4svqe2MgUftWrVkbK9AcrDUE3KY,952
|
|
134
134
|
tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
135
|
-
tests/test_ara_autofix.py,sha256=EFVzhVTNPDRVxpoK0CY6OAM88EjZTRXh-uxFGS1AVWk,10695
|
|
136
135
|
tests/test_ara_command_action.py,sha256=Y5MrG6VjXgebliKfdFaCaS8i3GoZCGSLpj3AWCbL5Lk,25695
|
|
137
136
|
tests/test_ara_config.py,sha256=1LWby_iSestTIIqK-1clggL8kmbGGbtlYfsxAHaMMF8,2232
|
|
137
|
+
tests/test_artefact_autofix.py,sha256=0Y6z5EXTEDUbZb-xxWNhaVUKnhxVVS3w2YZWTvyvoZs,12103
|
|
138
138
|
tests/test_artefact_fuzzy_search.py,sha256=5Sh3_l9QK8-WHn6JpGPU1b6h4QEnl2JoMq1Tdp2cj1U,1261
|
|
139
139
|
tests/test_artefact_link_updater.py,sha256=gN5KFF1uY7OoBh8Mr5jWpqXp02YCU5OSIpSU76Rm4Gs,2137
|
|
140
140
|
tests/test_artefact_lister.py,sha256=VCEOCgDgnAOeUUgIoGAbWgz60hf9UT-tdHg18LGfB34,22656
|
|
141
141
|
tests/test_artefact_reader.py,sha256=660K-d8ed-j8hulsUB_7baPD2-hhbg9TffUR5yVc4Uo,927
|
|
142
142
|
tests/test_artefact_renamer.py,sha256=N9JnnKBEJChTYEdltHoiDnn5UCNQUPj9H9YqOvLzbH0,3458
|
|
143
|
-
tests/test_artefact_scan.py,sha256=
|
|
143
|
+
tests/test_artefact_scan.py,sha256=R-L3JDWV1xH9fneGJoyDEjy2lvKpJLBck5ISTF2MmNs,7476
|
|
144
144
|
tests/test_chat.py,sha256=-00mni6Kik_RO8BGUpWqaL4S0wt2MbUBi5jD06dSHJM,47538
|
|
145
145
|
tests/test_classifier.py,sha256=grYGPksydNdPsaEBQxYHZTuTdcJWz7VQtikCKA6BNaQ,1920
|
|
146
146
|
tests/test_directory_navigator.py,sha256=7G0MVrBbtBvbrFUpL0zb_9EkEWi1dulWuHsrQxMJxDY,140
|
|
147
|
-
tests/test_file_classifier.py,sha256=
|
|
147
|
+
tests/test_file_classifier.py,sha256=kLWPiePu3F5mkVuI_lK_2QlLh2kXD_Mt2K8KZZ1fAnA,10940
|
|
148
148
|
tests/test_file_creator.py,sha256=D3G7MbgE0m8JmZihxnTryxLco6iZdbV--2CGc0L20FM,2109
|
|
149
149
|
tests/test_file_lister.py,sha256=f6B_vIv-wAulKH2ZGgNg4SG79XqGGbfwoIvZlbEnYyM,4306
|
|
150
150
|
tests/test_list_filter.py,sha256=gSRKirTtFuhRS3QlFHqWl89WvCvAdVEnFsCWTYmgB2o,7928
|
|
151
151
|
tests/test_tag_extractor.py,sha256=nSiAYlTKZ7TLAOtcJpwK5zTWHhFYU0tI5xKnivLc1dU,2712
|
|
152
152
|
tests/test_template_manager.py,sha256=q-LMHRG4rHkD6ON6YW4cpZxUx9hul6Or8wVVRC2kb-8,4099
|
|
153
153
|
tests/test_update_config_prompt.py,sha256=vSsLvc18HZdVjVM93qXWVbJt752xTLL6VGjSVCrPufk,6729
|
|
154
|
-
ara_cli-0.1.9.
|
|
155
|
-
ara_cli-0.1.9.
|
|
156
|
-
ara_cli-0.1.9.
|
|
157
|
-
ara_cli-0.1.9.
|
|
158
|
-
ara_cli-0.1.9.
|
|
154
|
+
ara_cli-0.1.9.70.dist-info/METADATA,sha256=im6yqXsHO5Nxn5Jhckz1n16ZUWxDqGiQcDsYLi3xJoA,415
|
|
155
|
+
ara_cli-0.1.9.70.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
156
|
+
ara_cli-0.1.9.70.dist-info/entry_points.txt,sha256=v4h7MzysTgSIDYfEo3oj4Kz_8lzsRa3hq-KJHEcLVX8,45
|
|
157
|
+
ara_cli-0.1.9.70.dist-info/top_level.txt,sha256=WM4cLHT5DYUaWzLtRj-gu3yVNFpGQ6lLRI3FMmC-38I,14
|
|
158
|
+
ara_cli-0.1.9.70.dist-info/RECORD,,
|