10 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	Changelog
2025-11-03 - 1.8.0 - feat(context)
Wire OpenAI provider through task context factory and add git-diff support to iterative context builder
- Pass AiDoc.openaiInstance through TaskContextFactory into IterativeContextBuilder to reuse the same OpenAI provider and avoid reinitialization.
 - IterativeContextBuilder now accepts an optional OpenAiProvider and an additionalContext string; when provided, git diffs (or other extra context) are prepended to the AI context and token counts are updated.
 - createContextForCommit now forwards the git diff into the iterative builder so commit-specific context includes the diff.
 - Updated aidocs_classes (commit, description, readme) to supply the existing openaiInstance when creating the TaskContextFactory.
 
2025-11-03 - 1.7.0 - feat(IterativeContextBuilder)
Add iterative AI-driven context builder and integrate into task factory; add tests and iterative configuration
- Introduce IterativeContextBuilder: iterative, token-aware context construction that asks the AI which files to load and evaluates context sufficiency.
 - Switch TaskContextFactory to use IterativeContextBuilder for readme, description and commit tasks (replaces earlier EnhancedContext flow for these tasks).
 - Add iterative configuration options (maxIterations, firstPassFileLimit, subsequentPassFileLimit, temperature, model) in types and ConfigManager and merge support for user config.
 - Update CLI (tokens and aidoc flows) to use the iterative context factory and improve task handling and messaging.
 - Add test coverage: test/test.iterativecontextbuilder.node.ts to validate initialization, iterative builds, token budget respect and multiple task types.
 - Enhance ContextCache, LazyFileLoader, ContextAnalyzer and ContextTrimmer to support the iterative pipeline and smarter prioritization/prompts.
 
2025-11-03 - 1.6.1 - fix(context)
Improve context building, caching and test robustness
- EnhancedContext: refactored smart context building to use the analyzer and TaskContextFactory by default; taskType now defaults to 'description' and task-specific modes are applied.
 - ConfigManager: simplified analyzer configuration (removed enabled flag) and fixed getAnalyzerConfig fallback shape.
 - ContextCache: more robust mtime handling and persistence; tests updated to use real file mtimes so cache validation works reliably.
 - LazyFileLoader: adjusted token estimation tolerance and improved metadata caching behavior.
 - ContextAnalyzer & trimming pipeline: improved prioritization and trimming integration to better enforce token budgets.
 - Tests: relaxed strict timing/boolean checks and made assertions more tolerant (toEqual vs toBe) to reduce false negatives.
 
2025-11-02 - 1.6.0 - feat(context)
Introduce smart context system: analyzer, lazy loader, cache and README/docs improvements
- Add ContextAnalyzer for dependency-based file scoring and prioritization (PageRank-like centrality, relevance, efficiency, recency)
 - Add LazyFileLoader to scan metadata and load files in parallel with lightweight token estimates
 - Add ContextCache for persistent file content/token caching with TTL and max-size eviction
 - Enhance ContextTrimmer with tier-based trimming and configurable light/aggressive levels
 - Integrate new components into EnhancedContext and TaskContextFactory to build task-aware, token-optimized contexts
 - Extend ConfigManager and types to support cache, analyzer, prioritization weights and tier configs (npmextra.json driven)
 - Add comprehensive unit tests for ContextAnalyzer, ContextCache and LazyFileLoader
 - Update README with Smart Context Building docs, examples, configuration options and CI workflow snippet
 
2025-09-07 - 1.5.2 - fix(package)
Bump dependencies, refine test script and imports, and overhaul README and docs
- Bumped multiple dependencies and devDependencies (including @git.zone/tspublish, @git.zone/tsbuild, @git.zone/tstest, @push.rocks/npmextra, @push.rocks/qenv, @push.rocks/smartfile, @push.rocks/smartlog, @push.rocks/smartshell, gpt-tokenizer, typedoc, etc.).
 - Updated test script to run tstest with verbose, logfile and increased timeout; adjusted testCli script invocation.
 - Fixed test import in test/test.aidoc.nonci.ts to use @git.zone/tstest tapbundle.
 - Large README rewrite: reorganized and expanded content, added quick start, CLI commands, examples, configuration, troubleshooting and usage sections.
 - Minor clarification added to commit prompt in ts/aidocs_classes/commit.ts (text cleanup and guidance).
 
2025-08-16 - 1.5.1 - fix(aidoc)
Bump dependencies, add pnpm workspace config, and add AiDoc.stop()
- Bumped multiple dependencies and devDependencies in package.json (notable upgrades: @git.zone/tsbuild, @git.zone/tspublish, @push.rocks/npmextra, @push.rocks/qenv, @push.rocks/smartai, @push.rocks/smartfile, @push.rocks/smartgit, @push.rocks/smartlog, @push.rocks/smartpath, @push.rocks/smartshell, typedoc, typescript).
 - Added pnpm-workspace.yaml with onlyBuiltDependencies (esbuild, mongodb-memory-server, puppeteer, sharp).
 - Added AiDoc.stop() to properly stop the OpenAI provider (resource/client shutdown).
 - Updated packageManager field in package.json to a newer pnpm version/hash.
 
2025-05-14 - 1.5.0 - feat(docs)
Update project metadata and documentation to reflect comprehensive AI-enhanced features and improved installation and usage instructions
- Revised descriptions in package.json and npmextra.json to emphasize comprehensive documentation capabilities
 - Expanded README with detailed installation options and extended usage examples for both CLI and API-like integrations
 - Added new dependency (gpt-tokenizer) to support token counting for AI context building
 - Adjusted keywords to better reflect project functionalities such as commit message automation and context trimming
 
2025-05-13 - 1.4.5 - fix(dependencies)
Upgrade various dependency versions and update package manager configuration
- Bump @git.zone/tsbuild from ^2.1.80 to ^2.3.2
 - Upgrade @push.rocks/tapbundle from ^5.0.23 to ^6.0.3
 - Update @types/node from ^22.8.1 to ^22.15.17
 - Bump @push.rocks/smartai from ^0.4.2 to ^0.5.4
 - Upgrade @push.rocks/smartlog from ^3.0.7 to ^3.0.9
 - Update typedoc from ^0.27.9 to ^0.28.4
 - Bump typescript from ^5.5.2 to ^5.8.3
 - Add packageManager field with pnpm@10.10.0 specification
 
2025-02-25 - 1.4.4 - fix(dependencies)
Update dependencies to latest versions
- Updated '@push.rocks/smartai' from '^0.0.17' to '^0.4.2'
 - Updated 'typedoc' from '^0.26.1' to '^0.27.9'
 
2025-01-14 - 1.4.3 - fix(aidocs_classes)
Improve readme generation instructions to ensure correct markdown formatting.
- Added guidance to avoid using backticks at the beginning and end of readme generation to prevent markdown issues.
 - Clarified that the output is directly written to readme.md and backticks should only be used for code blocks.
 
2024-10-28 - 1.4.2 - fix(cli)
Ensure async completion for aidoc readme and description generation
- Added await statements for asynchronous methods buildReadme and buildDescription in the aidoc command.
 
2024-10-28 - 1.4.1 - fix(readme)
Correct async call to getModuleSubDirs in readme generation.
- Fixed an issue with asynchronous handling in readme generation for submodules.
 - Ensured that getModuleSubDirs function is called with await to handle promises properly.
 
2024-10-28 - 1.4.0 - feat(aidocs)
Added support for building readmes for sub-modules in aidocs
- Updated the 
Readmeclass to handle monorepo projects by generating readmes for sub-modules. - Integrated 
tspublishto identify sub-modules for readme generation. 
2024-06-24 - 1.3.12 - fix(aidocs)
Fix changelog generation by handling leading newlines
- Fixed handling of leading newlines in the changelog to ensure proper formatting.
 
2024-06-23 - 1.3.11 - fix(core)
Fixed new changelog formatting issue to retain consistent spacing.
- Adjusted the new changelog generation to ensure consistent spacing for improved readability.
 
2024-06-23 - 1.3.10 - fix(aidocs_classes)
Fix changelog format to remove extra newline
- Updated 
ts/aidocs_classes/commit.tsto fix the changelog format. 
2024-06-23 - 1.3.9 - fix(aidoc)
Fix changelog generation by properly stripping markdown code fences
- Corrected the changelog generation code to ensure markdown code fences are properly stripped.
 
2024-06-23 - 1.3.8 - fix(changelog)
Fix changelog generation by properly stripping markdown code fences
- Corrected the changelog generation code to ensure markdown code fences are properly stripped.
 
2024-06-23 - 1.3.7 - fix(aidoc)
Update to include package-lock.json in uncommitted changes check
- Modified the getUncommittedDiff method call in commit.ts to include package-lock.json along with pnpm-lock.yaml
 
2024-06-23 - 1.3.6 - fix(commit)
Fixed issue with retrieving uncommitted diffs in git repository
- Revised logic to correctly handle uncommitted changes by using an array for 
getUncommittedDiffmethod - Ensured proper handling and representation of uncommitted changes in the output
 
2024-06-23 - 1.3.5 - fix(aidocs_classes)
Refactor and enhance changelog formatting
- Updated the 
commit.tsfile to improve the changelog formatting and ensure consistency. - Enhanced the changelog instructions to include summarizing messages for omitted commits.
 - Removed unnecessary console logging in 
projectcontext.ts. 
## 2024-06-23 - 1.3.3 - fix(aidocs_classes)
Fix changelog formatting issue in commit class
## 2024-06-23 - 1.3.2 - fix(aidocs_classes)
Fix minor bugs and update dependencies in aidocs_classes
## 2024-06-23 - 1.3.1 - fix(aidocs_classes)
Fix typo in INextCommitObject interface and update date format in changelog generation.
## 2024-06-23 - 1.3.0 - fix(aidocs_classes)
Fix typo in INextCommitObject interface
## 2024-06-23 - 1.2.4 - feat(core)
Added smarttime dependency and improved changelog generation
## 2024-06-23 - 1.2.3 - fix(logging)
Refactor logger initialization to use commitinfo data
## 2024-06-23 - 1.2.2 - fix(aidocs)
Fix bug in AiDoc class causing undefined token handling
## 2024-06-23 - 1.2.0 - fix(core)
Fixed usage of plugins in project context and readme generation
## 2024-06-23 - 1.1.42 - feat(aidocs_classes)
Enhance changelog generation by supporting complete generation in the absence of previous changelog files
## 2024-06-23 - 1.1.41 - fix(aidocs_classes)
Improve commit message generation by handling empty diffs and updating changelog instructions