- Updated artifacthub-repo.yml owner and email
- Updated all artifacthub-pkg.yml files (current and historical versions)
- Updated package.json author
- Updated README.md badge URLs
- Updated all version-specific metadata files
Part of organization migration from cpfarhood to privilegedescalation.
This is a proper version bump from v0.2.3 to v0.2.4 after discovering that
v0.2.3 was already published on Artifact Hub with a different tarball checksum.
Replace all Material-UI icon imports with Iconify equivalents to fix plugin loading.
Headlamp provides @iconify/react as a global, not @mui/icons-material.
Icon mappings:
- ErrorOutline → mdi:alert-circle-outline
- ContentCopy → mdi:content-copy
- Visibility → mdi:eye
- VisibilityOff → mdi:eye-off
- CheckCircle → mdi:check-circle
- Error → mdi:alert-circle
- Warning → mdi:alert
- Add → mdi:plus
- Delete → mdi:delete
Also fixed test-setup.ts lint errors (unused parameters).
Tarball checksum: SHA256:49062f6e9f68de49b83d53176d0bc09ce632d3df11e3397459342f51f6282131
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
Updated all GitHub URLs from cpfarhood to privilegedescalation organization:
- Repository URLs in package.json and Artifact Hub metadata
- Documentation links and references
- Git remote updated
No functional changes - this is purely an organizational migration.
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
Material-UI icons were not provided as globals by Headlamp, causing
'undefined is not an object (evaluating Ct.createSvgIcon)' errors.
Headlamp provides @iconify/react as a global, so all icon imports have
been replaced with Iconify equivalents:
- ErrorOutline → mdi:alert-circle-outline
- ContentCopy → mdi:content-copy
- Visibility → mdi:eye
- VisibilityOff → mdi:eye-off
- CheckCircle → mdi:check-circle
- Error → mdi:alert-circle
- Warning → mdi:alert
- Add → mdi:plus
- Delete → mdi:delete
Changes:
- Replaced all @mui/icons-material imports with @iconify/react Icon component
- Updated 4 component files (ErrorBoundary, DecryptDialog, EncryptDialog, ControllerStatus)
- Bumped version to 0.2.3
- Bundle size reduced: 358.18 kB (98.04 kB gzipped)
- Checksum: SHA256:03787323abc9430a63433838253b2dd8296d237000acdfe4ce2507678b63125f
This should fix the plugin loading issue and make the sidebar entry appear.
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
The plugin was built with @kinvolk/headlamp-plugin@^0.13.1, but the Headlamp server
is running with SDK version 0.13.0-alpha.11. This version mismatch caused React
context to be undefined, resulting in 'TypeError: undefined is not an object
(evaluating O2.createContext)' in the browser console.
Changes:
- Downgraded @kinvolk/headlamp-plugin from ^0.13.1 to ^0.13.0
- Removed 'main' field from package.json (carried over from v0.2.1)
- Bumped version to 0.2.2
- Created Artifact Hub metadata for 0.2.2
- Updated checksum: SHA256:3dd94e4da82a729c09eb73dcb548f89da00425169f21ff38bfb202caa442c95a
Fixes browser console error preventing plugin from loading.
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
The 'main' field pointing to 'dist/main.js' was preventing Headlamp from properly loading the plugin. Headlamp expects main.js in the root directory of the plugin.
Changes:
- Removed 'main' field from package.json
- Bumped version to 0.2.1
- Created Artifact Hub metadata for 0.2.1
- Updated checksum: SHA256:bf0c1211b51df29d378ec9dabd2599cbff6f32fdc98bcae9807fe2ff5cf87a8a
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
Update version metadata to 0.2.0 in preparation for Artifact Hub release.
Changes:
- package.json: 0.1.0 → 0.2.0
- artifacthub-pkg.yml: version and appVersion 0.1.0 → 0.2.0
- Enhanced description to highlight WCAG 2.1 AA accessibility
This version includes:
- Phase 1: Type-safe error handling (Result types, branded types, validators, retry logic)
- Phase 2: UX improvements (cert expiry warnings, health checks, RBAC, API version detection)
- Phase 3: Performance optimizations (React.memo, debouncing, lazy loading)
- Phase 4.1: Unit tests (36/39 passing - types, retry, validators)
Artifact Hub will pick up this version on next scan.
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)
Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
Features:
- Complete SealedSecret CRD integration with Headlamp
- Client-side encryption using controller's public key
- Support for all three scoping modes (strict, namespace-wide, cluster-wide)
- List and detail views for SealedSecrets
- Encryption dialog for creating new SealedSecrets
- Decryption support with RBAC awareness
- Sealing keys management
- Settings page for controller configuration
- Integration with Secret detail view
Technical:
- Full TypeScript with strict mode
- ~1,345 lines of code
- Build size: 339.42 kB (93.21 kB gzipped)
- Compatible with Headlamp v0.13.0+
- Apache 2.0 license
Security:
- All encryption performed client-side
- RSA-OAEP + AES-256-GCM (kubeseal-compatible)
- Auto-hide decrypted values after 30 seconds
Closes: Initial implementation