Skip to content

Modules: manifest "protected" (always-on) flag - #307

Merged
WebTigers merged 1 commit into
mainfrom
feat/protected-module-flag
Sep 23, 2026
Merged

WebTigers merged 1 commit into
mainfrom
feat/protected-module-flag

Conversation

@WebTigers

Copy link
Copy Markdown
Owner

A module can declare "protected": true in its module.json to be installable/updatable but never deactivatable in the Module manager — beyond the hardcoded core set (default/system/access). For an install that must not run without a module, e.g. TigerPanel inside a hosted account (TIGER-204).

  • Tiger_Module_Discovery surfaces the manifest protected flag.
  • System_Service_Modules::_toggle refuses to deactivate a protected module.
  • The Modules screen row flag is now hardcoded-set OR manifest-flag (set on $m so it wins the + union — fixes the system-row regression that appeared once Discovery emitted protected).
  • DiscoveryTest: protected:true passes through, absent → false.

Module + System suites green (234).

🤖 Generated with Claude Code

https://claude.ai/code/session_01ASauLLscjqdsNqBNsx2Typ

Beyond the hardcoded core protected set (default/system/access), a module can
declare "protected": true in its module.json to be non-deactivatable — for an
install that must not run without it (e.g. TigerPanel inside a hosted account).

- Tiger_Module_Discovery surfaces `protected` from the manifest.
- System_Service_Modules::_toggle refuses to deactivate a protected module.
- ModulesController row flag = the hardcoded set OR the manifest flag (set on
  $m so it wins the union; fixes the system-row regression that surfaced when
  Discovery began emitting `protected`).
- DiscoveryTest: protected:true passes through, absent -> false.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01ASauLLscjqdsNqBNsx2Typ
@WebTigers
WebTigers merged commit da69bd8 into main Sep 23, 2026
14 checks passed
@WebTigers
WebTigers deleted the feat/protected-module-flag branch September 23, 2026 17:56
@WebTigers WebTigers mentioned this pull request Sep 23, 2026
WebTigers added a commit that referenced this pull request Sep 23, 2026
Bump Tiger_Version to 1.15.0; move the protected-flag note from [Unreleased]
to [1.15.0]. Content on main (#307). Enables TigerPanel's always-on requirement.


Claude-Session: https://claude.ai/code/session_01ASauLLscjqdsNqBNsx2Typ

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant