Introduces a TraceError class for enhanced stack tracing and logging, and adds a __export__ utility to wrap functions with error handling and naming. Also adds a console.trace method and updates bootstrap.js to use the new main function structure.
The UseObject function now accepts an optional fallback callback, which is invoked if the main callback throws an error. This improves error handling and allows custom recovery logic.
Corrects type checking for callback and position parameters in app.js and pipe-ipc.js, ensuring proper function behavior. Also updates the version string in pipe-ipc.js to 0.1.26.
Enhanced UseObject to accept a custom dispose function, improving resource management flexibility. Updated pipe-ipc.js to utilize this feature, preventing unintended disposal in repositionObject and ensuring correct stream handling. Bumped module version to 0.1.25.
Expanded the 'availableModels' array for the 'friendiai' engine profile to include several new LLM models, increasing the range of supported models for inference.
Introduces support for the FriendIAI (LGAI-EXAONE) LLM engine, including its API endpoint, model configuration, request formatting, and response handling. Updates the version to 0.1.12 to reflect the new integration.
Modularized the deployment of base files, optional data files, and entrypoint in HandleTargetFilePath. Improved error handling and validation for file paths and extensions. Replaced the previous CopyDirectoryRecursive implementation with a new version supporting required/optional directories and simplified file copying logic.
Truncate the email body to a maximum of 2000 characters when adding it to the prompt context to reduce token usage and avoid sending overly large or sensitive content.
Updated the 'outlook_open_outlook_with_chatgpt' test to search emails by sender or recipient, collect email data, and generate a prompt for AI-based reply suggestions using OpenAI via the language-inference-engine. Improved logging, increased result count, and added full body previews for context.
Enhanced Outlook-related test implementations to include a body preview (first 160 characters) when listing or searching mails. Updated log messages for clarity and consistency.
Reworked Outlook.ItemsFiltered to support generic item sources and improved forEach logic. Enhanced code comments for clarity, added getClass to MailItem, and clarified filter implementations for Jet and DASL. This improves maintainability and interoperability of Outlook item filtering and searching.
Updated search methods to use appropriate Jet or DASL filters for sender and recipient queries, improving reliability and compatibility. Sender email equality now uses DASL display-from matching, and legacy filter names are preserved for compatibility.
Updated Outlook search methods to use DASL filters for recipient searches and introduced a new ItemsMerged class to combine results from multiple Restrict calls. Cleaned up comments and improved clarity in filter functions, ensuring sender and recipient searches are handled separately and merged in JavaScript.
Separated Jet and DASL filter logic in Outlook.Search.filters to avoid mixing filter syntaxes. Added DASL-specific escaping and recipient filter functions, and provided clear helpers for sender and recipient filters in both Jet and DASL. This improves clarity and prevents errors when constructing Outlook search queries.
Added 'var Office = require("lib/msoffice");' at the start of each Outlook-related test function in testloader.js to ensure the Office module is available within each function's scope.
Replaced usage of the old Outlook API with the new Office.Outlook API throughout test implementations. Updated object instantiations, method calls, and type checks to use the Office.Outlook namespace for improved clarity and maintainability.
Introduced new Outlook-related test implementations in testloader.js, including session opening, inbox listing, mail body reading, sender/recipient search, draft creation, and an end-to-end automation test. Updated corresponding test IDs in data/test-msoffice.json to match the new function names for consistency.
Added multiple test cases for Microsoft Outlook including session management, mail reading, searching, and draft creation. Updated existing test descriptions from Korean to English for consistency and clarity.
Introduces multiple search helper methods to the Outlook class, including sender/recipient/subject filters and date-based queries. Adds detailed logging for MAPI session management and folder selection. Implements ItemsFiltered for predicate-based filtering and refactors folder path resolution for improved robustness.
Introduces Outlook integration in msoffice.js, including folder navigation, item access, and mail operations. Updates filetypes.json to include Outlook-related file extensions and types for improved compatibility.
Wrapped the main evaluation logic in Program.cs with a try-catch block to provide clearer error messages on failure. Updated Tls12OfflineInspector to use Path.Combine for system DLL path construction, improving cross-platform compatibility and code clarity.
Introduces the Catswords.TlsReport project, a .NET Framework 4.7.2 console application for offline inspection of Windows TLS 1.2 readiness. Includes project files, configuration, and a comprehensive Tls12OfflineInspector utility that checks OS, registry, and crypto policy for TLS 1.2 support. Updates the solution file to include the new project.
Replaced the Catswords.Phantomizer.dll.gz resource with a new version. This may include bug fixes, new features, or other improvements in the Phantomizer component.
Replaces the existing Catswords.Phantomizer.dll.gz in the launcher resources with a new version. This may include bug fixes, new features, or other improvements in the updated binary.
Eliminated an unnecessary check for HttpStatusCode.NotFound in AssemblyLoader.cs, as EnsureSuccessStatusCode already throws for non-success responses. Updated Catswords.Phantomizer.dll.gz to reflect the latest changes.
Changed AddIntegrityHash to log a warning and return when given a null or whitespace hash, instead of throwing an exception. This prevents unnecessary exceptions and improves robustness.