[EPIC][modules] Native module contract, families, registry, discovery, and lifecycle #196
Labels
No labels
bug
documentation
duplicate
enhancement
feature
good first issue
help wanted
invalid
question
refactor
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/hackmode#196
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Parent: #192
Mission
Define Hackmode's canonical native module model: descriptors, metadata, family taxonomy, registry/discovery, implementation binding, versioning, applicability and lifecycle.
The result should feel familiar to operators coming from Metasploit-style module catalogs while remaining native to Hackmode.
Core model
A module descriptor should carry typed metadata equivalent to:
Metadata is descriptive and does not itself grant authority.
Initial families
Support extensible families such as:
Do not encode family names as separate execution engines.
Registry + discovery
Provide typed APIs for:
Prefer declarative module definitions that can be loaded from Common Lisp systems/packages and composed through the flake without a second plugin database.
Instantiation
Selecting/using a module creates a run-local module instance/configuration. Global descriptor metadata remains immutable.
Instances should reference:
Hackpert / Prolog-RLM integration
Hackpert and Prolog-RLM may query catalog metadata and propose/select module IDs as typed candidates. They do not receive direct implementation closures or bypass Hackmode admission.
Module applicability should be projectable as symbolic facts/rules later without making the registry depend on Prolog.
Acceptance
Non-goals
First slice
Create a minimal descriptor + registry and three harmless synthetic module fixtures from different families. Prove search/info/instantiate behavior before wiring effectful execution.