2
0
Commit Graph

20579 Commits

Author SHA1 Message Date
f42c6c39f9 feat(ai-service): complete ai production readiness tasks
All checks were successful
Build and Release / Create Release (push) Has been skipped
Build and Release / Unit Tests (push) Successful in 6m49s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 7m6s
Build and Release / Lint (push) Successful in 7m15s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, darwin, macos) (push) Has been skipped
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Has been skipped
Build and Release / Build Binaries (arm64, darwin, macos) (push) Has been skipped
Build and Release / Build Binary (linux/arm64) (push) Has been skipped
Implement critical production readiness features for AI integration: per-request provider config, admin dashboard, workflow inspection, and plugin framework foundation.

Per-Request Provider Config:
- Add ProviderConfig struct to all AI request types
- Update queue to resolve provider/model/API key from cascade (repo > org > system)
- Pass resolved config to AI sidecar on every request
- Fixes multi-tenant issue where all orgs shared sidecar's hardcoded config

Admin AI Dashboard:
- Add /admin/ai page with sidecar health status
- Display global operation stats (total, 24h, success/fail/escalated counts)
- Show operations by tier, top 5 repos, token usage
- Recent operations table with repo, operation, status, duration
- Add GetGlobalOperationStats model method

Workflow Inspection:
- Add InspectWorkflow client method and types
- Implement workflow-inspect queue handler
- Add notifier trigger on workflow file push
- Analyzes YAML for syntax errors, security issues, best practices
- Returns structured issues with line numbers and suggested fixes

Plugin Framework (Phase 5 Foundation):
- Add external plugin config loading from app.ini
- Define ExternalPlugin interface and manager
- Add plugin.proto contract (Initialize, Shutdown, HealthCheck, OnEvent, HandleHTTP)
- Implement health monitoring with auto-restart for managed plugins
- Add event routing to subscribed plugins
- HTTP proxy support for plugin-served routes

This completes Tasks 1-4 from the production readiness plan and establishes the foundation for managed plugin lifecycle.
2026-02-13 01:16:58 -05:00
813e3bcbb4 docs(nuget): expand ai features documentation
Some checks failed
Build and Release / Create Release (push) Successful in 1s
Build and Release / Unit Tests (push) Successful in 6m48s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 6m59s
Build and Release / Lint (push) Successful in 7m18s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m17s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 6m14s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 5m41s
Build and Release / Build Binary (linux/arm64) (push) Failing after 6m9s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Failing after 8h4m30s
Significantly expand the AI features section of the README with comprehensive configuration and usage documentation.

New content includes:
- Detailed explanation of Tier 1 (light operations) vs Tier 2 (agent mode)
- Complete app.ini configuration reference with all AI settings
- Step-by-step setup guide (system → org → repo → runner)
- Configuration cascade explanation (repo > org > system)
- Built-in safety features (bot user, loop prevention, rate limits, escalation)
- Automatic operation triggers table
- Manual API trigger examples
- Operation history and audit log access
- Escalation workflow documentation
- V2 API configuration section

This provides users with everything needed to deploy and configure the AI features, from initial setup through advanced agent mode configuration.
v3.3.0
2026-02-12 09:38:12 -05:00
14338d8fd4 refactor(ai): consolidate ai operation types and reduce duplication
All checks were successful
Build and Release / Create Release (push) Has been skipped
Build and Release / Unit Tests (push) Successful in 7m11s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 7m21s
Build and Release / Lint (push) Successful in 7m32s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, darwin, macos) (push) Has been skipped
Build and Release / Build Binaries (arm64, darwin, macos) (push) Has been skipped
Build and Release / Build Binary (linux/arm64) (push) Has been skipped
Refactor AI service layer to reduce code duplication and improve consistency.

Changes:
- Rename AIOperationRequest to OperationRequest for consistency
- Extract shared logic for issue-targeted operations (respond, triage) into triggerIssueAIOp helper
- Standardize field alignment in struct definitions
- Remove redundant error handling patterns

This reduces the API operations file by ~40 lines while maintaining identical functionality.
2026-02-12 00:55:52 -05:00
c9f6c4e7d2 feat(ui): add ai settings web interface for repos and orgs
Add comprehensive web UI for configuring AI features at repository and organization levels, completing the activation workflow for AI operations.

Repository AI Settings (repo/settings/ai):
- Enable/disable AI unit for the repository
- Toggle Tier 1 operations (auto-respond, auto-review, auto-triage, workflow inspection)
- Configure Tier 2 agent mode with trigger labels and runtime limits
- Set escalation rules (label, team assignment)
- Override provider/model preferences
- Add custom instructions for different operation types

Organization AI Settings (org/settings/ai):
- Configure org-level AI provider and model
- Set encrypted API key (with masked display)
- Define rate limits (max operations per hour)
- Whitelist allowed operations
- Enable/disable agent mode for org repositories

Both interfaces include proper permission checks, form validation, and cascade resolution display (showing inherited vs. overridden values). Adds navigation entries to settings sidebars and full i18n support.
2026-02-12 00:48:18 -05:00
eb1a5d497e feat(api): add ai operations and settings api endpoints
Add comprehensive API v2 endpoints for managing AI operations and repository-level AI settings.

AI Operations endpoints:
- GET /repos/{owner}/{repo}/ai/operations - List AI operation logs
- GET /repos/{owner}/{repo}/ai/operations/{id} - Get specific operation details
- POST /repos/{owner}/{repo}/ai/operations/trigger - Manually trigger AI operations
- GET /repos/{owner}/{repo}/ai/stats - Get AI usage statistics

AI Settings endpoints:
- GET /repos/{owner}/{repo}/ai/settings - Get repository AI configuration
- PATCH /repos/{owner}/{repo}/ai/settings - Update AI settings (admin only)

Settings include Tier 1 operations (auto-respond, auto-review), Tier 2 agent mode, escalation rules, provider/model preferences, and custom instructions. All endpoints validate AI unit enablement and permissions.
2026-02-12 00:03:04 -05:00
8ad6664b92 feat(ai): add ai service layer with agent and queue system
Implement core AI service infrastructure including agent operations, escalation handling, and asynchronous queue processing.

New services:
- Agent service: Handles Tier 2 AI operations with action runner integration
- Queue service: Asynchronous processing of AI operations with retry logic
- Escalation service: Routes complex issues to staff with configurable rules
- Notifier service: Sends notifications for AI operation results

Additional changes:
- Add GitCaddy AI system user (ID: -3) for bot operations
- Add AIConfig to repository units
- Add AI-specific error codes (rate limiting, service errors, etc.)
- Extend AI client with GenerateIssueResponse method
- Add AISettingsV2 struct for repository-level AI configuration

The queue system enables non-blocking AI operations with proper error handling and rate limiting.
2026-02-12 00:02:49 -05:00
26793bf898 feat(ai): add ai operation logging and org settings models
Add database models and infrastructure for AI operation tracking and organization-level AI configuration.

OperationLog model tracks all AI operations for auditing, including:
- Operation type, tier, and trigger event
- Token usage (input/output)
- Status tracking (pending, success, failed, escalated)
- Performance metrics (duration)
- Rate limiting support via CountRecentOperations

OrgAISettings model stores per-organization AI configuration:
- Provider and model selection
- Encrypted API key storage
- Rate limits (max operations per hour)
- Allowed operations whitelist
- Agent mode permissions

Also adds AI unit type to repository units for enabling/disabling AI features per repo.
2026-02-11 23:46:57 -05:00
7102167351 feat(repo): add public app integration toggle for repositories
All checks were successful
Build and Release / Create Release (push) Successful in 1s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 7m21s
Build and Release / Unit Tests (push) Successful in 7m26s
Build and Release / Lint (push) Successful in 7m47s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m12s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h5m1s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 6m1s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m14s
Build and Release / Build Binary (linux/arm64) (push) Successful in 9m17s
Add repository setting to control anonymous access to app integration endpoints (issue submission, update checks). When enabled (default), the desktop app can access these endpoints without authentication. When disabled, vault token authentication is required.

This provides granular control over app integration access, allowing repository owners to enforce full authentication on sensitive repositories while maintaining ease of use for public/limited repos.

Changes include:
- New PublicAppIntegration boolean field on Repository model
- Database migration v365 to add the field (defaults to true)
- Repository settings UI to toggle the feature
- Updated checkVaultTokenForRepo to respect the setting
- Security enhancement: IssueStatusJSONEndpoint now only returns app-submitted issues to anonymous users
v3.2.15
2026-02-11 20:32:23 -05:00
dcceabc713 feat(admin): add bulk delete for packages
All checks were successful
Build and Release / Unit Tests (push) Successful in 3m32s
Build and Release / Create Release (push) Successful in 0s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m50s
Build and Release / Lint (push) Successful in 4m55s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m5s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 5m32s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h4m55s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 5m23s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m23s
Adds bulk delete functionality to admin packages page, allowing deletion of multiple packages and all their versions at once. Includes confirmation dialog, success/warning flash messages showing count of deleted packages and versions, and proper error handling. Adds new locale strings for delete action, confirmation prompt, and result messages.
v3.2.14
2026-02-09 00:22:35 -05:00
9bdd35284f chore(deps): bump gitcaddy-vault from v1.0.59 to v1.0.60
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m13s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m5s
Build and Release / Lint (push) Successful in 5m16s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m55s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m6s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 5m36s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m28s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 5m48s
v3.2.13
2026-02-08 11:17:56 -05:00
33858109d5 chore(deps): bump gitcaddy-vault to v1.0.59
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m17s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m53s
Build and Release / Lint (push) Successful in 5m14s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m53s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m24s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 5m24s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 5m45s
Build and Release / Build Binary (linux/arm64) (push) Successful in 7m53s
v3.2.12
2026-02-08 10:44:00 -05:00
b2adcdf969 feat(packages): add bulk visibility management for packages
Some checks failed
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m12s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m8s
Build and Release / Lint (push) Successful in 5m19s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m11s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 5m38s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h5m9s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m29s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Failing after 10m38s
Add ability to bulk set packages as private or public in both admin and repository package views. Includes new bulk action buttons, visibility grouping in repository view, and corresponding backend handlers for processing visibility changes. Admin can manage all packages while repository owners can manage their own packages.
v3.2.11
2026-02-07 15:02:16 -05:00
fb2d53ba7a refactor(ui): replace link-action with async methods for job reruns
All checks were successful
Build and Release / Create Release (push) Has been skipped
Build and Release / Unit Tests (push) Successful in 3m23s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m19s
Build and Release / Lint (push) Successful in 5m22s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, darwin, macos) (push) Has been skipped
Build and Release / Build Binaries (arm64, darwin, macos) (push) Has been skipped
Build and Release / Build Binary (linux/arm64) (push) Has been skipped
Replace link-action class with proper async methods (rerunJob and rerunAll) for handling job and workflow reruns in RepoActionView. This provides better control over the rerun flow and ensures proper page reload after the POST request completes.
2026-02-07 14:22:29 -05:00
ae9cb010ab chore(deps): bump gitcaddy-vault from v1.0.57 to v1.0.58
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m24s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m58s
Build and Release / Lint (push) Successful in 5m11s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m59s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h4m22s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 5m44s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 5m14s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m14s
v3.2.10
2026-02-07 02:17:39 -05:00
d42b629458 Update go.mod
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 3m36s
Build and Release / Lint (push) Successful in 3m50s
Build and Release / Unit Tests (push) Successful in 4m11s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m1s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m39s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 5m57s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 5m25s
Build and Release / Build Binary (linux/arm64) (push) Successful in 7m56s
v3.2.9
2026-02-06 22:24:59 -05:00
68d4264f9e Update go.mod
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m20s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m49s
Build and Release / Lint (push) Successful in 4m56s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m56s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h4m43s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 5m46s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 5m32s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m17s
v3.2.8
2026-02-06 21:51:21 -05:00
fb8124d8f1 chore(deps): bump gitcaddy-vault from v1.0.54 to v1.0.55
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m7s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m30s
Build and Release / Lint (push) Successful in 5m35s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m52s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m39s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 5m29s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 5m10s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m2s
v3.2.7
2026-02-06 19:22:18 -05:00
a10dbda7ac feat(blog): add view count tracking to blog posts
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m22s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m10s
Build and Release / Lint (push) Successful in 4m54s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m0s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m43s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 6m39s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m46s
Build and Release / Build Binary (linux/arm64) (push) Successful in 9m6s
Adds view_count field to blog_post table with database migration. Implements atomic increment on post views in both standalone and repo blog routes. Displays view count with eye icon in post templates.
v3.2.6
2026-02-04 17:11:52 -05:00
f6e54207dc chore(deps): bump gitcaddy-vault from v1.0.52 to v1.0.54
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m11s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m11s
Build and Release / Lint (push) Successful in 5m18s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m51s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h5m36s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m2s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m20s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m12s
v3.2.5
2026-02-04 14:10:50 -05:00
5c9385f4a2 feat(vault): add user-facing warnings for key configuration issues
Adds dedicated error page and warnings for vault encryption key problems including missing configuration, fallback key usage, and decryption failures. Displays context-specific messages to help users understand and fix key configuration issues. Includes detection of crypto errors in vault operations and graceful error handling throughout the UI.
2026-02-04 13:54:54 -05:00
53d4c529a7 perf(blog): limit tag scan to 500 most recent posts
Improve GetExploreTopTags performance by limiting the tag aggregation scan to the 500 most recent published posts instead of scanning all posts. This reduces database load while still providing relevant trending tags.
2026-02-03 17:13:49 -05:00
e19874f4b3 fix(blog): improve blog metadata display formatting
Simplify blog header to show owner/repo format without redundant "Blog" label. Add fallback to CreatedUnix when PublishedUnix is not available for featured posts.
2026-02-03 15:21:39 -05:00
33898561db feat(blog): add subscription-only blog post detection and UI updates
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m20s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m54s
Build and Release / Lint (push) Successful in 5m7s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m1s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h4m41s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 8m37s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 8m40s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m53s
Add HasSubscriptionOnlyBlogPosts function to check if a repository has premium blog content. Update subscribe page to display different messaging when paid blogs are available. Redesign featured blog section with centered layout, larger images, and improved hover effects.
v3.2.4
2026-02-03 10:26:28 -05:00
f40550d79b feat(subscriptions): add subscription plan UI and localization
Some checks failed
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m23s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m18s
Build and Release / Lint (push) Successful in 5m29s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m3s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m55s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m17s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m57s
Build and Release / Build Binary (linux/arm64) (push) Failing after 2m42s
Adds locale strings for subscription plan types (monthly/yearly/lifetime), pricing display, payment buttons, and success/empty states. Updates subscribe page title to include repository name for better context.
v3.2.3
2026-02-03 10:01:53 -05:00
0f9728006a feat(ci): add blog search/filtering and package privacy
Some checks failed
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m22s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m21s
Build and Release / Lint (push) Successful in 5m38s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m59s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h5m19s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m10s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Has been cancelled
Build and Release / Build Binary (linux/arm64) (push) Has been cancelled
Adds keyword search and tag filtering to repository blog list with GetRepoTopTags for popular tags display. Implements user-level package privacy setting (KeepPackagesPrivate) to hide packages from profile page. Updates blog UI with search box, tag cloud, and clear filters button. Adds subscription CTA buttons and active subscription indicators.
v3.2.2
2026-02-03 09:47:08 -05:00
42e18e0fe1 style(wishlist): fix linter warnings and formatting
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m17s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m49s
Build and Release / Lint (push) Successful in 4m57s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m0s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m54s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m7s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m59s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m35s
Adds revive:disable-line comments for exported types without doc comments. Fixes column alignment in migration struct. Adds explanatory nolint comments for intentional nil returns. Sorts imports alphabetically.
v3.2.01
2026-02-02 16:01:58 -05:00
36f5d77c9f feat(wishlist): add wishlist feature for feature requests
Some checks failed
Build and Release / Lint (push) Failing after 5m36s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, darwin, macos) (push) Has been skipped
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Has been skipped
Build and Release / Build Binaries (arm64, darwin, macos) (push) Has been skipped
Build and Release / Build Binary (linux/arm64) (push) Has been skipped
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 2m37s
Build and Release / Create Release (push) Has been skipped
Build and Release / Unit Tests (push) Successful in 3m39s
Implements comprehensive wishlist/feature request system for repositories. Includes categories with colors, voting system, importance ratings (1-5 stars), status tracking (open/planned/in-progress/completed/declined), threaded comments with reactions, and release linking. Adds v2 API endpoints for CRUD operations. Includes repository settings toggle, header tab, and full UI templates for list/view/create. Supports vote counts, importance averages, and comment reactions.
2026-02-02 15:15:56 -05:00
2ba1596b02 feat(blog): add subscription-only content gating
Adds SubscriptionOnly flag to blog posts to restrict full content access to active subscribers. Shows teaser/preview for non-subscribers with subscribe CTA. Integrates with repository subscription system when monetization is enabled. Updates v2 API structs and editor UI with subscription toggle. Admins and repo writers bypass the gate.
2026-02-02 13:22:01 -05:00
6bc3693cef feat(blog): add series support and v2 API endpoints
Adds blog series field to group related posts together. Implements v2 API endpoints for listing, creating, updating, and deleting blog posts with proper error codes. Adds series filtering to explore page and sitemap support with pagination. Includes BlogPostV2 structs with author/repo references, HTML URLs, and content rendering. Updates editor UI with series input field.
2026-02-02 13:04:30 -05:00
e55529992c fix(blog): improve comments and attachment access control
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m15s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m35s
Build and Release / Lint (push) Successful in 5m42s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m8s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h5m5s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 6m58s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m42s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m10s
Shows existing comments as read-only when commenting is disabled on a post. Fixes attachment access control for blog featured images by checking repo-level read permissions when attachment isn't linked to issue/release. Updates README with detailed SMTP configuration examples and provider table. Fixes explore page navigation when blogs are in top nav.
v3.1.98
2026-02-02 10:12:39 -05:00
e89647bfab feat(secrets): show org secrets in repo settings as read-only
Some checks failed
Build and Release / Create Release (push) Successful in 0s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 2m44s
Build and Release / Unit Tests (push) Successful in 5m1s
Build and Release / Lint (push) Successful in 5m8s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m12s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h5m40s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m6s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m21s
Build and Release / Build Binary (linux/arm64) (push) Failing after 12m35s
Displays organization-level secrets in repository settings as read-only when the repo belongs to an organization. Helps users understand which secrets are inherited from the org scope without allowing modification. Adds separate section with org icon and read-only badge.
v3.1.97
2026-02-02 09:25:13 -05:00
90f5fee237 feat(blog): add comment reactions and improve UI
Some checks failed
Build and Release / Create Release (push) Successful in 1s
Build and Release / Unit Tests (push) Successful in 3m9s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m19s
Build and Release / Lint (push) Successful in 5m27s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m1s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m37s
Build and Release / Build Binary (linux/arm64) (push) Has been cancelled
Build and Release / Build Binaries (amd64, darwin, macos) (push) Has been cancelled
Build and Release / Build Binaries (arm64, darwin, macos) (push) Has been cancelled
Implements thumbs up/down reactions for blog comments with toggle functionality. Adds batch loading of reaction counts and user reactions for performance. Updates standalone view and repo blog view to display comment reactions. Improves explore blogs UI with better card layout and navigation. Includes guest IP tracking for anonymous reactions.
v3.1.96
2026-02-02 09:12:19 -05:00
ddf87daa42 feat(blog): add standalone blog view and top nav option
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m20s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m41s
Build and Release / Lint (push) Successful in 4m56s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m49s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m28s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 6m39s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 8m53s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m25s
Adds standalone blog post view at /blog/:id with full content rendering, comments, reactions, and OpenGraph metadata. Implements optional "Blogs" link in site header navigation (configurable in admin settings). Enforces repository access permissions on standalone view. Loads repo owners for avatar fallback on explore page. Includes SEO-friendly URLs and social media sharing support.
v3.1.95
2026-02-02 00:19:17 -05:00
c274086c46 feat(blog): add filtering, sorting, and tags to explore page
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m20s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m23s
Build and Release / Lint (push) Successful in 5m40s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m59s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h4m50s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m58s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 8m36s
Build and Release / Build Binary (linux/arm64) (push) Successful in 10m51s
Implements search by keyword (title/subtitle), tag filtering, and sort by newest/popular on explore blogs page. Adds GetExploreTopTags to show popular tags with usage counts. Enforces repository access permissions using AccessibleRepositoryCondition. Fixes secret lookup to skip scope conditions when querying by ID. Updates UI with tag cloud, search box, and sort dropdown.
v3.1.94
2026-02-01 23:21:05 -05:00
9e6d1d63de feat(blog): add comments, reactions, and guest verification
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m10s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m5s
Build and Release / Lint (push) Successful in 5m20s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m54s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m29s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 8m14s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 8m19s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m27s
Implements threaded comment system with support for authenticated users and verified guests. Adds email verification flow for guest commenters with token-based sessions and 6-digit codes. Includes reaction system (like/love/laugh/etc) for posts and comments. Adds comment count to blog posts, user profile blog tab, and email notifications for comment verification. Implements nested reply support with parent-child relationships.
v3.1.93
2026-02-01 22:22:18 -05:00
7b34e295eb feat(secrets): add secret promotion between scopes
Adds ability to promote secrets from repository to organization scope, or from repository/organization to global scope. Includes conflict detection to prevent duplicate names at target scope, permission checks (org owner for repo→org, system admin for →global), and UI buttons with confirmation dialogs. Implements MoveSecret model method and PerformSecretsPromote handler.
2026-02-01 21:39:45 -05:00
8182b1be81 feat(blog): add featured image upload and Unsplash integration
Some checks failed
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m11s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m15s
Build and Release / Lint (push) Successful in 5m22s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m6s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m17s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 6m39s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 8m4s
Build and Release / Build Binary (linux/arm64) (push) Failing after 13m57s
Adds direct file upload for blog featured images with attachment handling. Implements Unsplash API integration for searching and selecting stock photos as featured images. Updates editor UI with image upload button, Unsplash search modal, tag management, and preview mode. Adds drag-and-drop and paste support for inline images in the editor.
v3.1.92
2026-02-01 20:24:43 -05:00
779cb18857 fix(blog): improve blog tab visibility and add help text
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m26s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m22s
Build and Release / Lint (push) Successful in 5m32s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m50s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m49s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 6m15s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 8m6s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m7s
Changes blog tab visibility check from generic IsWriter to specific CanWrite permission for code unit. Adds help text to blog and subscription settings explaining behavior and access requirements.
v3.1.91
2026-02-01 18:33:10 -05:00
e13cfc6c27 style(config): fix indentation alignment for EnableBlogs field
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m23s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m3s
Build and Release / Lint (push) Successful in 5m15s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m58s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h5m25s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m21s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 8m30s
Build and Release / Build Binary (linux/arm64) (push) Successful in 9m6s
v3.1.90
2026-02-01 17:08:18 -05:00
f933dfc2f3 feat(blog): add repository blog functionality
Some checks failed
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m24s
Build and Release / Lint (push) Failing after 5m11s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Has been skipped
Build and Release / Build Binaries (amd64, darwin, macos) (push) Has been skipped
Build and Release / Build Binaries (arm64, darwin, macos) (push) Has been skipped
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m18s
Build and Release / Build Binary (linux/arm64) (push) Has been skipped
Adds comprehensive blog post system for repositories with draft/public/published status, featured images, tags, and subscriptions. Includes database models, migrations, CRUD operations, email notifications, explore page, and full UI templates for creating, editing, and viewing blog posts.
v3.1.89
2026-02-01 16:59:04 -05:00
5b4873a9ac fix(ui): enforce Explore button visibility via route guard
All checks were successful
Build and Release / Lint (push) Successful in 5m5s
Build and Release / Create Release (push) Successful in 0s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m4s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 3m43s
Build and Release / Unit Tests (push) Successful in 4m13s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m57s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 8m14s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 8m20s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m56s
- Add exploreAnonymousGuard middleware to redirect anonymous users when Explore is hidden
- Move enforcement from template to route level for better security
- Prevent direct URL access to /explore routes when feature is disabled
- Keep Explore button visible in navbar but make routes inaccessible

This prevents users from bypassing the UI restriction by directly accessing /explore URLs.
v3.1.88
2026-02-01 12:52:14 -05:00
0259eed592 feat(ui): add option to hide Explore button from navbar
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Lint (push) Successful in 4m36s
Build and Release / Unit Tests (push) Successful in 3m8s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 3m33s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m22s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h5m35s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m58s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 11m51s
Build and Release / Build Binary (linux/arm64) (push) Successful in 9m34s
- Add theme.hide_explore_button configuration option
- Add admin UI toggle in Site Administration > Configuration > Theme
- Conditionally hide Explore button from header navigation when enabled
- Separate from hide_explore_users (which only hides the Users tab)
- Useful for private instances that don't want to expose the Explore feature
v3.1.87
2026-02-01 10:59:43 -05:00
0b9eb5065a feat(ci): add workflow validation and monetization docs
All checks were successful
Build and Release / Lint (push) Successful in 5m7s
Build and Release / Create Release (push) Successful in 0s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 2m50s
Build and Release / Unit Tests (push) Successful in 4m7s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m38s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h4m48s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 8m41s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 9m29s
Build and Release / Build Binary (linux/arm64) (push) Successful in 9m13s
- Add validate_workflow MCP tool for YAML syntax and structural validation
- Integrate nektos/act parser for workflow validation
- Update list_workflows to include validation status for each workflow
- Add comprehensive monetization/subscriptions documentation
- Document Stripe and PayPal integration setup
- Document webhook endpoints and subscription workflow

Validation checks YAML syntax, event triggers, and job structure. Returns detailed errors and warnings.
v3.1.86
2026-02-01 06:47:22 -05:00
d1f20f6b46 feat(ci): add repository subscription monetization system
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Unit Tests (push) Successful in 3m10s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m13s
Build and Release / Lint (push) Successful in 5m25s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m13s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h5m42s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m30s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m55s
Build and Release / Build Binary (linux/arm64) (push) Successful in 7m36s
Implement complete subscription monetization system for repositories with Stripe and PayPal integration. Includes:
- Database models and migrations for monetization settings, subscription products, and user subscriptions
- Payment provider abstraction layer with Stripe and PayPal implementations
- Admin UI for configuring payment providers and viewing subscriptions
- Repository settings UI for managing subscription products and tiers
- Subscription checkout flow and webhook handlers for payment events
- Access control to gate repository code behind active subscriptions
v3.1.85
2026-01-31 13:37:07 -05:00
7ca828cb94 fix(mediakit): escape Unsplash search query and show empty state
- URL encode search query to prevent API errors with special characters
- Display "No photos found" message when search returns empty results
2026-01-31 11:32:51 -05:00
e4aea692a5 fix(socialcard): reposition unsplash attribution with shadow
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 2m42s
Build and Release / Lint (push) Successful in 5m33s
Build and Release / Unit Tests (push) Successful in 5m53s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m0s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h4m35s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 7m18s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m31s
Build and Release / Build Binary (linux/arm64) (push) Successful in 7m59s
Moves Unsplash photo attribution from centered below repo name to lower-left corner of the image area. Adds text shadow for better readability over photos.
v3.1.84
2026-01-31 10:03:53 -05:00
ca9de21f84 style(repo): improve cross-promote tile layout and spacing 2026-01-31 09:53:17 -05:00
85b2b8239d refactor(templates): redesign page templates with neon brutalist theme
All checks were successful
Build and Release / Create Release (push) Successful in 1s
Build and Release / Unit Tests (push) Successful in 3m9s
Build and Release / Lint (push) Successful in 5m14s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 4m25s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m13s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m46s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 6m12s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 7m22s
Build and Release / Build Binary (linux/arm64) (push) Successful in 7m25s
Overhauls marketing and documentation page templates with a new neon brutalist design system. Updates typography to Syne/Space Mono, adds grid backgrounds, glitch effects, scroll reveal animations, and neon glow styling. Affects bold-marketing, minimalist-docs, open-source-hero, saas-conversion, and repo sidebar templates.
v3.1.83
2026-01-31 09:39:57 -05:00
644b9c2c3d feat(repo): replace text input with dropdown for cross-promote
All checks were successful
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 5m13s
Build and Release / Create Release (push) Successful in 0s
Build and Release / Lint (push) Successful in 5m21s
Build and Release / Unit Tests (push) Successful in 5m31s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 3m0s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 9h4m50s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 6m1s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 6m49s
Build and Release / Build Binary (linux/arm64) (push) Successful in 7m53s
Changes the cross-promotion UI from manual owner/name text input to a searchable dropdown grouped by owner. Improves UX by showing available repositories and preventing invalid entries. Refactors validation logic to use repo ID instead of parsing owner/name strings.
v3.1.82
2026-01-31 09:04:23 -05:00
b1b308d766 feat(repo): add cross-promotion feature for repositories
All checks were successful
Build and Release / Create Release (push) Successful in 0s
Build and Release / Integration Tests (PostgreSQL) (push) Successful in 2m44s
Build and Release / Lint (push) Successful in 5m27s
Build and Release / Unit Tests (push) Successful in 5m39s
Build and Release / Build Binaries (amd64, linux, linux-latest) (push) Successful in 2m58s
Build and Release / Build Binaries (amd64, windows, windows-latest) (push) Successful in 8h4m56s
Build and Release / Build Binaries (amd64, darwin, macos) (push) Successful in 6m27s
Build and Release / Build Binaries (arm64, darwin, macos) (push) Successful in 8m19s
Build and Release / Build Binary (linux/arm64) (push) Successful in 8m25s
Add ability for repository owners to cross-promote up to 6 related repositories in the sidebar. Create repo_cross_promote table with migration v344 to store source-target relationships with display order. Add settings UI for managing promoted repos with drag-and-drop reordering. Display promoted repos in home sidebar with repository cards. Include locale strings and routing for cross-promotion management.
v3.1.81
2026-01-31 08:36:23 -05:00