Conversation
…ncies. - Added scripts for checking records load and resolver fallback scenarios.
- Updated all plugins to use the new `addListener` and `addCommand` methods for better consistency and maintainability. - Removed unnecessary listener and command removal in `onUnload` methods, as the framework now handles this automatically. - Enhanced the `removeListener` method in the server class to handle wrapper listeners. - Added `unregister` and `unregisterColor` methods to the settings manager for better settings management. - Updated package.json to include new dependencies and scripts for Bun. - Introduced a new test file for HTTP request handling with keep-alive support.
- plugin loader will use PLUGINS="" for inclusive plugin loading, EXCLUDED_PLUGINS is removed. - if no plugins are defined, everything will be loaded. - changed manialink template loader to use relative paths for plugin path, if you define path-like string for the template, it'll try to load from work directory. - changed plugins to use new relative paths for widgets.
… tidy dependencies from plugin classes, as they're not anymore used for anything
add jukebox history and votes limits
…headers/scripts in Manialink
…ite determination logic
…on of player progress
…g in SecRecordsWidget
fix modesettings window
fix: error handling of dedimania
don't throw error on dedimania warning.
fix margins on records widgets.
…d Manialink classes
…ling, and improve performance - Replaced the instantiation of Deserializer with a reusable instance in GbxClient. - Optimized buffer handling by tracking offsets and compacting the buffer after processing messages. - Updated method response and callback processing to utilize the reusable deserializer. - Changed logging mechanism in log.ts to initialize on module load and cache ANSI level and formatter. - Updated DebugTool settings to default to false instead of relying on environment variables. - Removed unused widget.xml.twig file from DebugTool plugin. - Improved performance in RecordsWidget by awaiting displayManialink calls and ensuring records are converted properly. - Enhanced SettingsManager to safely call callbacks with optional chaining. - Added disposeScript and reverseArray functions in forge.ts for better resource management. - Updated Manialink class to build script blocks more efficiently and handle cleanup properly. - Improved Widget class to ensure open actions are removed before setting new ones. - Enhanced Window class to log errors during cleanup without interrupting the process. - Optimized UiManager to reuse regex patterns and cache global action IDs for efficiency.
…er in Dedimania plugin
special thanks for burgers for initial work and sending me patch
- MiniControl overview and Kacky plugin suite docs - Key file reference: api.ts, redis bridge, web client, admin commands - Data flow diagram: MiniControl ↔ Redis Streams ↔ KackyGG API - Plugin conventions and related repository links Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…epos - AGENTS.md: reasoning topology (shared across all Kacky repos) - .claude/rules/: project-conventions, testing, cross-repo guidance - .claude/agents/: code-reviewer (Opus), implementer (GPT 5.5), test-writer (GPT 5.5) - CLAUDE.md: updated with rules reference and model split docs Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Patch-level bumps (no breaking changes) addressing the runtime-relevant advisories; cleared 6 of 22 vulnerabilities (22 -> 16). - sequelize 6.37.7 -> 6.37.8: fixes the direct HIGH SQL-injection advisory via JSON columns (the most important runtime fix) and the bundled uuid. - ajv 8.17.1 -> 8.20.0: ReDoS hardening (within 8.x). - twing 7.2.2 -> 7.3.1: latest patch. - npm audit fix (non-breaking) for remaining safe transitive bumps. Knowingly left as residual (not worth the risk on this core fork): - locutus (critical/high via twing): twing pins locutus 2.x; locutus 3.x reorganized into an exports map that breaks twing's bare-directory imports (locutus/php/strings, locutus/php/math -> ERR_MODULE_NOT_FOUND), so a forced override breaks template rendering. Low real exposure (dev-authored templates, Twig-escaped data). Track upstream twing for a locutus 3 move. - sqlite3 -> node-gyp/tar/cacache chain (high): build-time only, not loaded at runtime; sqlite3 6 is a breaking major. Deferred. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
MINIcontrol Changelog - Dev Branch
154 commits - 284 files changed
🎉 Major Features
New Plugin System Architecture
manifest.jsonfile with version constraints and dependency specificationstmc.getPlugin<PluginId>(id)instead of dynamic object accessPLUGINS="kacky/*")tmc.installPlugin(),tmc.removePlugin(), andtmc.listPlugins()New UI System - Forge/JSX
EmotesWidget.tsx,LabelWidget.tsxdemonstrating the new systemDatabase Migrations Directory
core/migrations/→ New location:core/plugins/*/migrations/anduserdata/plugins/*/migrationstsx --env-file=.env migrate-to-012.tsto update your databasePlugin Structure Changes
@core/pluginswith new lifecycle methodsaddListener(),addCommand(),addSetting(),addColor()removeListenercalls)📚 Documentation
🔧 Notable Improvements
Admin Plugin
ModeSettingsWindowwith entry fields and apply/cancel buttonsDatabase Plugin
models/subdirectoryDATABASEenv not set)Performance & Stability
Developer Experience
npm run start:deno|npm run start:bun🐛 Bug Fixes
📝 Environment Variables
PLUGINSvariable for plugin whitelisting (replaces theEXCLUDED_PLUGINS)XMLRPC_LIMIT_SCRIPT_CALLBACKSoptionFor full details, see the comparison at: main...dev