@joshski/dust 0.1.101 → 0.1.102
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.
- package/dist/audits.js +33 -1
- package/dist/claude/spawn-claude-code.d.ts +12 -0
- package/dist/claude/types.d.ts +2 -0
- package/dist/dust.js +312 -77
- package/dist/env-config.d.ts +2 -0
- package/dist/filesystem-emulator.js +1 -1
- package/dist/logging/index.d.ts +10 -1
- package/dist/logging/match.d.ts +21 -1
- package/dist/logging.js +18 -3
- package/dist/proxy/claude-api-proxy.d.ts +34 -1
- package/dist/proxy/git-credential-proxy.d.ts +2 -0
- package/dist/proxy/helper-token.d.ts +73 -0
- package/package.json +1 -1
package/dist/audits.js
CHANGED
|
@@ -141,11 +141,12 @@ function checksAuditTemplate() {
|
|
|
141
141
|
- Created ideas for each missing check category
|
|
142
142
|
- For multi-ecosystem projects, created separate ideas per ecosystem
|
|
143
143
|
- Each idea includes suggested command and alternatives
|
|
144
|
+
- No changes to files outside \`.dust/\`
|
|
144
145
|
`;
|
|
145
146
|
}
|
|
146
147
|
|
|
147
148
|
// lib/audits/stock-audits.ts
|
|
148
|
-
var ideasHint = "Review existing ideas in `./.dust/ideas/` to understand what has been proposed or considered historically, then create new idea files in `./.dust/ideas/` for any issues you identify, avoiding duplication.";
|
|
149
|
+
var ideasHint = "Review existing ideas in `./.dust/ideas/` to understand what has been proposed or considered historically, then create new idea files in `./.dust/ideas/` for any issues you identify, avoiding duplication. Do not modify source code - create ideas instead.";
|
|
149
150
|
function dataAccessReview() {
|
|
150
151
|
return dedent`
|
|
151
152
|
# Data Access Review
|
|
@@ -196,6 +197,7 @@ function dataAccessReview() {
|
|
|
196
197
|
- Checked for sequential operations that could be batched
|
|
197
198
|
- Verified connection/resource cleanup is handled properly
|
|
198
199
|
- Proposed ideas for any data access improvements identified
|
|
200
|
+
- No changes to files outside \`.dust/\`
|
|
199
201
|
`;
|
|
200
202
|
}
|
|
201
203
|
function coverageExclusions() {
|
|
@@ -243,6 +245,7 @@ function coverageExclusions() {
|
|
|
243
245
|
- Labeled justification quality for visibility
|
|
244
246
|
- Identified exclusions that could be removed through decoupling
|
|
245
247
|
- Proposed ideas for refactoring where feasible
|
|
248
|
+
- No changes to files outside \`.dust/\`
|
|
246
249
|
`;
|
|
247
250
|
}
|
|
248
251
|
function componentReuse() {
|
|
@@ -273,6 +276,7 @@ function componentReuse() {
|
|
|
273
276
|
- Evaluated each case for whether extraction would be beneficial
|
|
274
277
|
- Considered whether similar code serves different purposes that may evolve independently
|
|
275
278
|
- Proposed ideas only for extractions where duplication is truly about the same concept
|
|
279
|
+
- No changes to files outside \`.dust/\`
|
|
276
280
|
`;
|
|
277
281
|
}
|
|
278
282
|
function agentDeveloperExperience() {
|
|
@@ -304,6 +308,7 @@ function agentDeveloperExperience() {
|
|
|
304
308
|
- Measured feedback loop speed (time from change to check result)
|
|
305
309
|
- Confirmed debugging tools and structured logging are in place
|
|
306
310
|
- Proposed ideas for any improvements identified
|
|
311
|
+
- No changes to files outside \`.dust/\`
|
|
307
312
|
`;
|
|
308
313
|
}
|
|
309
314
|
function agentInstructionQuality() {
|
|
@@ -468,6 +473,7 @@ function agentInstructionQuality() {
|
|
|
468
473
|
- Found instructions that could be replaced by linter rules
|
|
469
474
|
- Documented each issue with location, type, impact, and suggestion
|
|
470
475
|
- Created ideas for substantial instruction improvements
|
|
476
|
+
- No changes to files outside \`.dust/\`
|
|
471
477
|
`;
|
|
472
478
|
}
|
|
473
479
|
function deadCode() {
|
|
@@ -501,6 +507,7 @@ function deadCode() {
|
|
|
501
507
|
- Created list of code safe to remove
|
|
502
508
|
- Verified removal won't break dynamic imports or reflection
|
|
503
509
|
- Proposed ideas for any dead code worth removing
|
|
510
|
+
- No changes to files outside \`.dust/\`
|
|
504
511
|
`;
|
|
505
512
|
}
|
|
506
513
|
function documentationDrift() {
|
|
@@ -614,6 +621,7 @@ function documentationDrift() {
|
|
|
614
621
|
- Reviewed inline comments for outdated descriptions
|
|
615
622
|
- Documented each drift finding with location, claim, reality, and suggested fix
|
|
616
623
|
- Created ideas for any substantial documentation updates needed
|
|
624
|
+
- No changes to files outside \`.dust/\`
|
|
617
625
|
`;
|
|
618
626
|
}
|
|
619
627
|
function factsVerification() {
|
|
@@ -649,6 +657,7 @@ function factsVerification() {
|
|
|
649
657
|
- Listed missing facts that would help agents
|
|
650
658
|
- Updated or removed stale facts
|
|
651
659
|
- Proposed ideas for any facts improvements needed
|
|
660
|
+
- No changes to files outside \`.dust/\`
|
|
652
661
|
`;
|
|
653
662
|
}
|
|
654
663
|
function feedbackLoopSpeed() {
|
|
@@ -775,6 +784,7 @@ function feedbackLoopSpeed() {
|
|
|
775
784
|
- Flagged dominant checks (>30% of total time)
|
|
776
785
|
- Documented findings in summary table format
|
|
777
786
|
- Created ideas for any feedback loop speed improvements identified
|
|
787
|
+
- No changes to files outside \`.dust/\`
|
|
778
788
|
`;
|
|
779
789
|
}
|
|
780
790
|
function ideasFromPrinciples() {
|
|
@@ -808,6 +818,7 @@ function ideasFromPrinciples() {
|
|
|
808
818
|
- Analyzed codebase for alignment with each principle
|
|
809
819
|
- Listed gaps between current state and principle intent
|
|
810
820
|
- Proposed new ideas for unmet or underserved principles
|
|
821
|
+
- No changes to files outside \`.dust/\`
|
|
811
822
|
`;
|
|
812
823
|
}
|
|
813
824
|
function commitReview() {
|
|
@@ -860,6 +871,7 @@ function commitReview() {
|
|
|
860
871
|
- Noted areas where changes could be generalized
|
|
861
872
|
- Provided specific suggestions for each opportunity
|
|
862
873
|
- Created ideas for any substantial work identified
|
|
874
|
+
- No changes to files outside \`.dust/\`
|
|
863
875
|
`;
|
|
864
876
|
}
|
|
865
877
|
function securityReview() {
|
|
@@ -924,6 +936,7 @@ function securityReview() {
|
|
|
924
936
|
- Ran lightweight pattern scan for obvious issues (documented as supplementary)
|
|
925
937
|
- Created ideas for any missing security tooling categories
|
|
926
938
|
- Each idea specifies which tool to add and where to configure it
|
|
939
|
+
- No changes to files outside \`.dust/\`
|
|
927
940
|
`;
|
|
928
941
|
}
|
|
929
942
|
function staleIdeas() {
|
|
@@ -958,6 +971,7 @@ function staleIdeas() {
|
|
|
958
971
|
- Reviewed each stale idea for current relevance
|
|
959
972
|
- Promoted actionable ideas to tasks
|
|
960
973
|
- Deleted ideas that are no longer relevant
|
|
974
|
+
- No changes to files outside \`.dust/\`
|
|
961
975
|
`;
|
|
962
976
|
}
|
|
963
977
|
function errorHandling() {
|
|
@@ -1006,6 +1020,7 @@ function errorHandling() {
|
|
|
1006
1020
|
- Reviewed error messages for actionability
|
|
1007
1021
|
- Compared error handling consistency across similar operations
|
|
1008
1022
|
- Proposed ideas for any error handling improvements identified
|
|
1023
|
+
- No changes to files outside \`.dust/\`
|
|
1009
1024
|
`;
|
|
1010
1025
|
}
|
|
1011
1026
|
function globalState() {
|
|
@@ -1056,6 +1071,7 @@ function globalState() {
|
|
|
1056
1071
|
- Checked for scattered process.env access
|
|
1057
1072
|
- Documented impact of each global state instance on testing
|
|
1058
1073
|
- Proposed ideas for refactoring global state to explicit dependencies
|
|
1074
|
+
- No changes to files outside \`.dust/\`
|
|
1059
1075
|
`;
|
|
1060
1076
|
}
|
|
1061
1077
|
function repositoryContext() {
|
|
@@ -1105,6 +1121,7 @@ function repositoryContext() {
|
|
|
1105
1121
|
- Design philosophy or guiding approach is captured
|
|
1106
1122
|
- Document is concise enough to fit comfortably in an agent context window
|
|
1107
1123
|
- A new agent reading only this document could make sensible high-level suggestions
|
|
1124
|
+
- No changes to files outside \`.dust/\`
|
|
1108
1125
|
`;
|
|
1109
1126
|
}
|
|
1110
1127
|
function slowTests() {
|
|
@@ -1157,6 +1174,7 @@ function slowTests() {
|
|
|
1157
1174
|
- Reviewed beforeEach/beforeAll for optimization opportunities
|
|
1158
1175
|
- Checked test parallelization configuration
|
|
1159
1176
|
- Proposed ideas for optimizing the slowest tests
|
|
1177
|
+
- No changes to files outside \`.dust/\`
|
|
1160
1178
|
`;
|
|
1161
1179
|
}
|
|
1162
1180
|
function primitiveObsession() {
|
|
@@ -1225,6 +1243,7 @@ function primitiveObsession() {
|
|
|
1225
1243
|
- Preserved Functional Core, Imperative Shell boundaries in recommendations
|
|
1226
1244
|
- Avoided speculative introduction of entirely new types
|
|
1227
1245
|
- Proposed ideas for primitive obsession improvements identified
|
|
1246
|
+
- No changes to files outside \`.dust/\`
|
|
1228
1247
|
`;
|
|
1229
1248
|
}
|
|
1230
1249
|
function singleResponsibilityViolations() {
|
|
@@ -1283,6 +1302,7 @@ function singleResponsibilityViolations() {
|
|
|
1283
1302
|
- Preserved Functional Core, Imperative Shell boundaries in recommendations
|
|
1284
1303
|
- Kept recommendations high-confidence only with clear concern boundaries
|
|
1285
1304
|
- Proposed ideas for substantial responsibility-splitting work identified
|
|
1305
|
+
- No changes to files outside \`.dust/\`
|
|
1286
1306
|
`;
|
|
1287
1307
|
}
|
|
1288
1308
|
function ubiquitousLanguage() {
|
|
@@ -1347,6 +1367,7 @@ function ubiquitousLanguage() {
|
|
|
1347
1367
|
- Reviewed factory/constructor naming for \`build*\`, \`create*\`, \`make*\`, \`new*\` consistency
|
|
1348
1368
|
- Documented any terminology drift or inconsistencies found
|
|
1349
1369
|
- Proposed ideas for standardizing inconsistent terminology
|
|
1370
|
+
- No changes to files outside \`.dust/\`
|
|
1350
1371
|
`;
|
|
1351
1372
|
}
|
|
1352
1373
|
function designPatterns() {
|
|
@@ -1414,6 +1435,7 @@ function designPatterns() {
|
|
|
1414
1435
|
- Documented each finding with location, code smell, recommended pattern, trade-offs, and migration complexity
|
|
1415
1436
|
- Noted tech-stack considerations where Gang of Four patterns may or may not apply
|
|
1416
1437
|
- Proposed ideas for any design pattern improvements identified
|
|
1438
|
+
- No changes to files outside \`.dust/\`
|
|
1417
1439
|
`;
|
|
1418
1440
|
}
|
|
1419
1441
|
function testAssertions() {
|
|
@@ -1565,6 +1587,7 @@ function testAssertions() {
|
|
|
1565
1587
|
- Found tests covering multiple unrelated behaviors
|
|
1566
1588
|
- Documented each finding with location, pattern, impact, and suggestion
|
|
1567
1589
|
- Proposed ideas for any assertion quality improvements identified
|
|
1590
|
+
- No changes to files outside \`.dust/\`
|
|
1568
1591
|
`;
|
|
1569
1592
|
}
|
|
1570
1593
|
function algorithms() {
|
|
@@ -1618,6 +1641,7 @@ function algorithms() {
|
|
|
1618
1641
|
- Checked recursive graph/tree operations for cycle protection
|
|
1619
1642
|
- Documented each finding with function name, location, complexity, data structures, optimization, and acceptability assessment
|
|
1620
1643
|
- Proposed ideas for any algorithmic improvements identified
|
|
1644
|
+
- No changes to files outside \`.dust/\`
|
|
1621
1645
|
`;
|
|
1622
1646
|
}
|
|
1623
1647
|
function loggingAndTraceability() {
|
|
@@ -1670,6 +1694,7 @@ function loggingAndTraceability() {
|
|
|
1670
1694
|
- Assessed whether running the application produces understandable output
|
|
1671
1695
|
- Tested whether logs help diagnose common failure scenarios
|
|
1672
1696
|
- Proposed ideas for any logging improvements identified
|
|
1697
|
+
- No changes to files outside \`.dust/\`
|
|
1673
1698
|
`;
|
|
1674
1699
|
}
|
|
1675
1700
|
function testPyramid() {
|
|
@@ -1751,6 +1776,7 @@ function testPyramid() {
|
|
|
1751
1776
|
- Identified miscategorized tests (e.g., unit tests with I/O)
|
|
1752
1777
|
- Provided specific recommendations to improve pyramid shape
|
|
1753
1778
|
- Proposed ideas for any substantial test restructuring needed
|
|
1779
|
+
- No changes to files outside \`.dust/\`
|
|
1754
1780
|
`;
|
|
1755
1781
|
}
|
|
1756
1782
|
function idiomaticStyle() {
|
|
@@ -1812,6 +1838,7 @@ function idiomaticStyle() {
|
|
|
1812
1838
|
- Evaluated code style consistency with rest of codebase
|
|
1813
1839
|
- Identified anti-patterns or deprecated approaches
|
|
1814
1840
|
- Proposed ideas for any idiomaticity improvements identified
|
|
1841
|
+
- No changes to files outside \`.dust/\`
|
|
1815
1842
|
`;
|
|
1816
1843
|
}
|
|
1817
1844
|
function uxAudit() {
|
|
@@ -1876,6 +1903,7 @@ function uxAudit() {
|
|
|
1876
1903
|
- Documented findings with evidence and recommendations
|
|
1877
1904
|
- Included verification criteria for each issue
|
|
1878
1905
|
- Created ideas for any UX improvements needed
|
|
1906
|
+
- No changes to files outside \`.dust/\`
|
|
1879
1907
|
`;
|
|
1880
1908
|
}
|
|
1881
1909
|
function dependencyHealth() {
|
|
@@ -2018,6 +2046,7 @@ function dependencyHealth() {
|
|
|
2018
2046
|
- Searched for packages with known better-maintained alternatives
|
|
2019
2047
|
- Documented each concern with package name, version, type, and suggested action
|
|
2020
2048
|
- Created ideas for any dependency health improvements needed
|
|
2049
|
+
- No changes to files outside \`.dust/\`
|
|
2021
2050
|
`;
|
|
2022
2051
|
}
|
|
2023
2052
|
function ciDevelopmentParity() {
|
|
@@ -2175,6 +2204,7 @@ function ciDevelopmentParity() {
|
|
|
2175
2204
|
- Identified CI-only checks (in CI but not dust)
|
|
2176
2205
|
- Created idea files for each gap with suggested fix
|
|
2177
2206
|
- Each idea links to relevant principles
|
|
2207
|
+
- No changes to files outside \`.dust/\`
|
|
2178
2208
|
`;
|
|
2179
2209
|
}
|
|
2180
2210
|
function commitMessageQuality() {
|
|
@@ -2324,6 +2354,7 @@ function commitMessageQuality() {
|
|
|
2324
2354
|
- Identified commits missing links to issues/tasks
|
|
2325
2355
|
- Created idea files for patterns found
|
|
2326
2356
|
- Each idea includes concrete suggestions for improvement
|
|
2357
|
+
- No changes to files outside \`.dust/\`
|
|
2327
2358
|
`;
|
|
2328
2359
|
}
|
|
2329
2360
|
function suggestAudits() {
|
|
@@ -2413,6 +2444,7 @@ function suggestAudits() {
|
|
|
2413
2444
|
- Identified relevant audits based on change patterns
|
|
2414
2445
|
- Created task files for each suggested audit with rationale
|
|
2415
2446
|
- Each task explains why the audit is valuable given recent changes
|
|
2447
|
+
- No changes to files outside \`.dust/\`
|
|
2416
2448
|
`;
|
|
2417
2449
|
return content;
|
|
2418
2450
|
}
|
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
import type { CreateReadlineForEvents, SpawnForEvents } from '../process/spawn-contract';
|
|
2
2
|
import type { DockerSpawnConfig, RawEvent, SpawnOptions } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Generate Claude Code settings JSON with apiKeyHelper configured to fetch
|
|
5
|
+
* tokens from the given proxy URL.
|
|
6
|
+
*
|
|
7
|
+
* The helper command uses curl to fetch a short-TTL helper token from the
|
|
8
|
+
* host-side proxy's /token endpoint. This token is validated by the proxy
|
|
9
|
+
* when the container makes Claude API requests.
|
|
10
|
+
*
|
|
11
|
+
* @param proxyUrl - The Claude API proxy URL (e.g., http://host.docker.internal:3002)
|
|
12
|
+
* @returns Settings JSON string for Claude Code
|
|
13
|
+
*/
|
|
14
|
+
export declare function generateApiKeyHelperSettings(proxyUrl: string): string;
|
|
3
15
|
export interface EventSourceDependencies {
|
|
4
16
|
spawn: SpawnForEvents;
|
|
5
17
|
createInterface: CreateReadlineForEvents;
|
package/dist/claude/types.d.ts
CHANGED
|
@@ -58,6 +58,8 @@ export interface DockerSpawnConfig {
|
|
|
58
58
|
gitProxyUrl?: string;
|
|
59
59
|
/** Claude API proxy URL (e.g., http://host.docker.internal:3002) */
|
|
60
60
|
claudeApiProxyUrl?: string;
|
|
61
|
+
/** Path to settings file on host to mount into container (for apiKeyHelper) */
|
|
62
|
+
settingsFilePath?: string;
|
|
61
63
|
}
|
|
62
64
|
export interface SpawnOptions {
|
|
63
65
|
cwd?: string;
|