feat: Add guild charters and task boards for various components
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
- Introduced guild charters for Scanner Deno, PHP, Ruby, Native, WebService, Java, Surface.Env, Surface.FS, Surface.Secrets, Surface.Validation, UI, Zastava Observer, Zastava Webhook, Zastava Core, and Plugin Platform. - Each charter outlines the mission, scope, required reading, and working agreements for the respective guilds. - Created task boards for Surface.Env, Surface.FS, Surface.Secrets, Surface.Validation, and Zastava components to track progress and dependencies. - Ensured all documents emphasize determinism, offline readiness, security, and integration with shared Surface libraries.
This commit is contained in:
34
docs/dev/plugins/README.md
Normal file
34
docs/dev/plugins/README.md
Normal file
@@ -0,0 +1,34 @@
|
||||
# Plugin Development Guide
|
||||
|
||||
StellaOps services expose restart-time plug-in hooks so operators can extend functionality (connectors, analyzers, notification channels). This guide covers common patterns when implementing plug-ins against `StellaOps.Plugin`.
|
||||
|
||||
## 1. Concepts
|
||||
|
||||
- **Manifest** – describes the plug-in assembly, supported capabilities, and minimum host version.
|
||||
- **Registration** – plug-ins export DI registration classes discovered by `StellaOps.Plugin` at host startup.
|
||||
- **Isolation** – plug-ins load from a dedicated directory with ordered manifests; hosts enforce allow-lists and capability checks.
|
||||
|
||||
## 2. Authoring Steps
|
||||
|
||||
1. Reference `StellaOps.Plugin` and implement `IPluginRegistration`.
|
||||
2. Provide a manifest (`manifest.json`) describing assembly name, version, and capabilities.
|
||||
3. Add unit tests covering registration and integration (use `StellaOps.Plugin.Tests` helpers).
|
||||
4. Package plug-in binaries under `plugins/<host>/` with checksum manifest for offline kits.
|
||||
|
||||
## 3. Security & Determinism
|
||||
|
||||
- Avoid global state or non-deterministic behaviour; plug-ins must be restart-safe.
|
||||
- Do not perform network access unless explicitly allowed by host configuration.
|
||||
- Use dependency injection to receive configuration and shared services.
|
||||
|
||||
## 4. Resources
|
||||
|
||||
- `src/__Libraries/StellaOps.Plugin`
|
||||
- `docs/modules/platform/architecture-overview.md`
|
||||
- Host-specific docs (e.g., `docs/modules/scanner/architecture.md`, `docs/modules/notify/architecture.md`)
|
||||
|
||||
## 5. Testing & Deployment
|
||||
|
||||
- Run host integration tests to ensure plug-in loads correctly.
|
||||
- Provide sample configuration snippets for Helm/Compose/Offline kits.
|
||||
- Document plug-in versioning and compatibility requirements.
|
||||
Reference in New Issue
Block a user