appydave-tools 0.84.0 → 0.86.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +15 -0
- data/CLAUDE.md +1 -1
- data/CONTEXT.md +133 -23
- data/bin/configuration.rb +20 -0
- data/bin/query_apps.rb +74 -0
- data/config/examples/locations.example.json +48 -0
- data/config/examples/settings.example.json +9 -0
- data/config/random-queries.yml +24 -45
- data/context.globs.json +24 -0
- data/docs/guides/tools/dam/dam-usage.md +261 -471
- data/docs/planning/multi-user-support.md +108 -0
- data/docs/planning/query-apps-design.md +344 -0
- data/docs/planning/query-skills-plan.md +354 -0
- data/docs/specs/jump-add-display-fix.md +249 -0
- data/exe/query_apps +7 -0
- data/lib/appydave/tools/app_context/app_finder.rb +176 -0
- data/lib/appydave/tools/app_context/globs_loader.rb +116 -0
- data/lib/appydave/tools/app_context/options.rb +28 -0
- data/lib/appydave/tools/bank_reconciliation/_doc.md +36 -0
- data/lib/appydave/tools/bank_reconciliation/clean/clean_transactions.rb +159 -0
- data/lib/appydave/tools/bank_reconciliation/clean/mapper.rb +133 -0
- data/lib/appydave/tools/bank_reconciliation/clean/read_transactions.rb +258 -0
- data/lib/appydave/tools/bank_reconciliation/models/transaction.rb +158 -0
- data/lib/appydave/tools/brain_context/options.rb +19 -2
- data/lib/appydave/tools/configuration/example_installer.rb +72 -0
- data/lib/appydave/tools/configuration/models/bank_reconciliation_config.rb +152 -0
- data/lib/appydave/tools/configuration/models/settings_config.rb +12 -0
- data/lib/appydave/tools/jump/formatters/table_formatter.rb +16 -5
- data/lib/appydave/tools/version.rb +1 -1
- data/lib/appydave/tools/zsh_history/config.rb +2 -2
- data/lib/appydave/tools/zsh_history/filter.rb +10 -4
- data/lib/appydave/tools.rb +12 -0
- data/package.json +1 -1
- metadata +36 -2
|
@@ -24,11 +24,12 @@ module Appydave
|
|
|
24
24
|
#
|
|
25
25
|
# @return [String] Formatted table
|
|
26
26
|
def format
|
|
27
|
-
return format_error
|
|
28
|
-
return format_info
|
|
29
|
-
return format_summary
|
|
30
|
-
return format_groups
|
|
31
|
-
return
|
|
27
|
+
return format_error unless success?
|
|
28
|
+
return format_info if info_result?
|
|
29
|
+
return format_summary if summary_result?
|
|
30
|
+
return format_groups unless groups.empty?
|
|
31
|
+
return format_mutation if mutation_result?
|
|
32
|
+
return format_empty if results.empty?
|
|
32
33
|
return format_definition_report if definition_report?
|
|
33
34
|
return format_count_report if count_report?
|
|
34
35
|
return format_category_report if category_report?
|
|
@@ -45,6 +46,16 @@ module Appydave
|
|
|
45
46
|
lines.join("\n")
|
|
46
47
|
end
|
|
47
48
|
|
|
49
|
+
def mutation_result?
|
|
50
|
+
data.key?(:message) && (data.key?(:location) || data[:message].to_s.match?(/removed|updated|added/i))
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
def format_mutation
|
|
54
|
+
lines = [colorize(data[:message], :green)]
|
|
55
|
+
lines << colorize(data[:warning], :yellow) if data[:warning]
|
|
56
|
+
lines.join("\n")
|
|
57
|
+
end
|
|
58
|
+
|
|
48
59
|
def format_empty
|
|
49
60
|
message = case data[:report]
|
|
50
61
|
when 'brands'
|
|
@@ -108,8 +108,8 @@ module Appydave
|
|
|
108
108
|
^Finished in \\d
|
|
109
109
|
^\\d+ examples, \\d+ failures
|
|
110
110
|
|
|
111
|
-
# Process listing output
|
|
112
|
-
|
|
111
|
+
# Process listing output (current user)
|
|
112
|
+
^#{ENV.fetch('USER', ENV.fetch('USERNAME', ''))}\\s+\\d+
|
|
113
113
|
PATTERNS
|
|
114
114
|
|
|
115
115
|
# Create crash-recovery profile
|
|
@@ -34,8 +34,7 @@ module Appydave
|
|
|
34
34
|
'^head ',
|
|
35
35
|
'^tail ',
|
|
36
36
|
'^echo \\$',
|
|
37
|
-
'^\\[\\d+\\]',
|
|
38
|
-
'^davidcruwys\\s+\\d+', # Process listing output
|
|
37
|
+
'^\\[\\d+\\]', # Output like [1234]
|
|
39
38
|
'^zsh: command not found',
|
|
40
39
|
'^X Process completed',
|
|
41
40
|
'^Coverage report',
|
|
@@ -138,9 +137,16 @@ module Appydave
|
|
|
138
137
|
end
|
|
139
138
|
|
|
140
139
|
def load_exclude_patterns
|
|
141
|
-
# Try loading from config, fall back to defaults
|
|
140
|
+
# Try loading from config, fall back to defaults (with dynamic user pattern appended)
|
|
142
141
|
config_patterns = config.exclude_patterns
|
|
143
|
-
config_patterns ||
|
|
142
|
+
config_patterns || default_exclude_patterns_with_user
|
|
143
|
+
end
|
|
144
|
+
|
|
145
|
+
def default_exclude_patterns_with_user
|
|
146
|
+
username = ENV.fetch('USER', ENV.fetch('USERNAME', ''))
|
|
147
|
+
return DEFAULT_EXCLUDE_PATTERNS if username.empty?
|
|
148
|
+
|
|
149
|
+
DEFAULT_EXCLUDE_PATTERNS + ["^#{username}\\s+\\d+"]
|
|
144
150
|
end
|
|
145
151
|
|
|
146
152
|
def load_include_patterns
|
data/lib/appydave/tools.rb
CHANGED
|
@@ -41,6 +41,10 @@ require 'appydave/tools/brain_context/options'
|
|
|
41
41
|
require 'appydave/tools/brain_context/brain_finder'
|
|
42
42
|
require 'appydave/tools/brain_context/omi_finder'
|
|
43
43
|
|
|
44
|
+
require 'appydave/tools/app_context/options'
|
|
45
|
+
require 'appydave/tools/app_context/globs_loader'
|
|
46
|
+
require 'appydave/tools/app_context/app_finder'
|
|
47
|
+
|
|
44
48
|
require 'appydave/tools/random_context/query_entry'
|
|
45
49
|
require 'appydave/tools/random_context/randomizer'
|
|
46
50
|
|
|
@@ -52,6 +56,13 @@ require 'appydave/tools/configuration/models/settings_config'
|
|
|
52
56
|
require 'appydave/tools/configuration/models/brands_config'
|
|
53
57
|
require 'appydave/tools/configuration/models/channels_config'
|
|
54
58
|
require 'appydave/tools/configuration/models/youtube_automation_config'
|
|
59
|
+
require 'appydave/tools/configuration/models/bank_reconciliation_config'
|
|
60
|
+
require 'appydave/tools/configuration/example_installer'
|
|
61
|
+
|
|
62
|
+
require 'appydave/tools/bank_reconciliation/models/transaction'
|
|
63
|
+
require 'appydave/tools/bank_reconciliation/clean/read_transactions'
|
|
64
|
+
require 'appydave/tools/bank_reconciliation/clean/mapper'
|
|
65
|
+
require 'appydave/tools/bank_reconciliation/clean/clean_transactions'
|
|
55
66
|
require 'appydave/tools/name_manager/project_name'
|
|
56
67
|
|
|
57
68
|
require 'appydave/tools/prompt_tools/prompt_completion'
|
|
@@ -127,6 +138,7 @@ Appydave::Tools::Configuration::Config.set_default do |config|
|
|
|
127
138
|
config.register(:brands, Appydave::Tools::Configuration::Models::BrandsConfig)
|
|
128
139
|
config.register(:channels, Appydave::Tools::Configuration::Models::ChannelsConfig)
|
|
129
140
|
config.register(:youtube_automation, Appydave::Tools::Configuration::Models::YoutubeAutomationConfig)
|
|
141
|
+
config.register(:bank_reconciliation, Appydave::Tools::Configuration::Models::BankReconciliationConfig)
|
|
130
142
|
end
|
|
131
143
|
|
|
132
144
|
module Appydave
|
data/package.json
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: appydave-tools
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.86.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- David Cruwys
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-
|
|
11
|
+
date: 2026-06-09 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activemodel
|
|
@@ -136,6 +136,20 @@ dependencies:
|
|
|
136
136
|
- - "~>"
|
|
137
137
|
- !ruby/object:Gem::Version
|
|
138
138
|
version: '0'
|
|
139
|
+
- !ruby/object:Gem::Dependency
|
|
140
|
+
name: multi_json
|
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
|
142
|
+
requirements:
|
|
143
|
+
- - "~>"
|
|
144
|
+
- !ruby/object:Gem::Version
|
|
145
|
+
version: '1.15'
|
|
146
|
+
type: :runtime
|
|
147
|
+
prerelease: false
|
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
149
|
+
requirements:
|
|
150
|
+
- - "~>"
|
|
151
|
+
- !ruby/object:Gem::Version
|
|
152
|
+
version: '1.15'
|
|
139
153
|
- !ruby/object:Gem::Dependency
|
|
140
154
|
name: pstore
|
|
141
155
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -190,6 +204,7 @@ executables:
|
|
|
190
204
|
- jump
|
|
191
205
|
- llm_context
|
|
192
206
|
- prompt_tools
|
|
207
|
+
- query_apps
|
|
193
208
|
- query_brain
|
|
194
209
|
- query_omi
|
|
195
210
|
- subtitle_processor
|
|
@@ -231,6 +246,7 @@ files:
|
|
|
231
246
|
- bin/llm_context.rb
|
|
232
247
|
- bin/move_images.rb
|
|
233
248
|
- bin/prompt_tools.rb
|
|
249
|
+
- bin/query_apps.rb
|
|
234
250
|
- bin/query_brain.rb
|
|
235
251
|
- bin/query_omi.rb
|
|
236
252
|
- bin/random_context.rb
|
|
@@ -242,7 +258,10 @@ files:
|
|
|
242
258
|
- bin/youtube_automation.rb
|
|
243
259
|
- bin/youtube_manager.rb
|
|
244
260
|
- bin/zsh_history.rb
|
|
261
|
+
- config/examples/locations.example.json
|
|
262
|
+
- config/examples/settings.example.json
|
|
245
263
|
- config/random-queries.yml
|
|
264
|
+
- context.globs.json
|
|
246
265
|
- docs/README.md
|
|
247
266
|
- docs/ai-instructions/behavioral-regression-audit.md
|
|
248
267
|
- docs/ai-instructions/code-quality-retrospective.md
|
|
@@ -329,8 +348,11 @@ files:
|
|
|
329
348
|
- docs/planning/micro-cleanup/AGENTS.md
|
|
330
349
|
- docs/planning/micro-cleanup/IMPLEMENTATION_PLAN.md
|
|
331
350
|
- docs/planning/micro-cleanup/assessment.md
|
|
351
|
+
- docs/planning/multi-user-support.md
|
|
352
|
+
- docs/planning/query-apps-design.md
|
|
332
353
|
- docs/planning/query-location-feature/IMPLEMENTATION_PLAN.md
|
|
333
354
|
- docs/planning/query-location-feature/system-context-gap-analysis.md
|
|
355
|
+
- docs/planning/query-skills-plan.md
|
|
334
356
|
- docs/planning/s3-operations-split/AGENTS.md
|
|
335
357
|
- docs/planning/s3-operations-split/IMPLEMENTATION_PLAN.md
|
|
336
358
|
- docs/planning/test-coverage-gaps/AGENTS.md
|
|
@@ -338,6 +360,7 @@ files:
|
|
|
338
360
|
- docs/planning/test-coverage-gaps/assessment.md
|
|
339
361
|
- docs/specs/fr-002-gpt-context-help-system.md
|
|
340
362
|
- docs/specs/fr-003-jump-location-tool.md
|
|
363
|
+
- docs/specs/jump-add-display-fix.md
|
|
341
364
|
- docs/specs/zsh-history-tool.md
|
|
342
365
|
- docs/templates/.env.example
|
|
343
366
|
- docs/templates/channels.example.json
|
|
@@ -348,6 +371,7 @@ files:
|
|
|
348
371
|
- exe/jump
|
|
349
372
|
- exe/llm_context
|
|
350
373
|
- exe/prompt_tools
|
|
374
|
+
- exe/query_apps
|
|
351
375
|
- exe/query_brain
|
|
352
376
|
- exe/query_omi
|
|
353
377
|
- exe/subtitle_processor
|
|
@@ -356,6 +380,14 @@ files:
|
|
|
356
380
|
- exe/zsh_history
|
|
357
381
|
- images.log
|
|
358
382
|
- lib/appydave/tools.rb
|
|
383
|
+
- lib/appydave/tools/app_context/app_finder.rb
|
|
384
|
+
- lib/appydave/tools/app_context/globs_loader.rb
|
|
385
|
+
- lib/appydave/tools/app_context/options.rb
|
|
386
|
+
- lib/appydave/tools/bank_reconciliation/_doc.md
|
|
387
|
+
- lib/appydave/tools/bank_reconciliation/clean/clean_transactions.rb
|
|
388
|
+
- lib/appydave/tools/bank_reconciliation/clean/mapper.rb
|
|
389
|
+
- lib/appydave/tools/bank_reconciliation/clean/read_transactions.rb
|
|
390
|
+
- lib/appydave/tools/bank_reconciliation/models/transaction.rb
|
|
359
391
|
- lib/appydave/tools/brain_context/brain_finder.rb
|
|
360
392
|
- lib/appydave/tools/brain_context/omi_finder.rb
|
|
361
393
|
- lib/appydave/tools/brain_context/options.rb
|
|
@@ -367,6 +399,8 @@ files:
|
|
|
367
399
|
- lib/appydave/tools/configuration/_doc.md
|
|
368
400
|
- lib/appydave/tools/configuration/config.rb
|
|
369
401
|
- lib/appydave/tools/configuration/configurable.rb
|
|
402
|
+
- lib/appydave/tools/configuration/example_installer.rb
|
|
403
|
+
- lib/appydave/tools/configuration/models/bank_reconciliation_config.rb
|
|
370
404
|
- lib/appydave/tools/configuration/models/brands_config.rb
|
|
371
405
|
- lib/appydave/tools/configuration/models/channels_config.rb
|
|
372
406
|
- lib/appydave/tools/configuration/models/config_base.rb
|