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.
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.
Add yellow "Limited" badge to repository listings across admin panel, organization home, pinned repos, and shared repo lists. Uses eye icon to distinguish limited repos from private (lock) and public repos.
System administrators can now view, edit, and delete any runner regardless of context (repo/org/user). Previously, admins were restricted by the same ownership rules as regular users. Also removes redundant deleted_unix filter in GetUnhealthyRunners query.
Adds a new page to view all waiting/blocked jobs for a specific runner label. This helps administrators identify which jobs are queued for particular runner labels and diagnose runner capacity issues.
Enables updating secret descriptions without changing the value by making the data field optional during updates. Displays global secrets as read-only in org/user/repo secret pages for visibility. Adds validation to require data only when creating new secrets. Updates locale strings for the new functionality.
Fixes layout issues with the license badge positioning across different repository list views. Ensures proper spacing between language and license info, adds muted styling to license badges, and prevents empty description rows from rendering. Also hides "repo updated" timestamp on explore page.
Repositions the license badge from the stats row to the description area, aligning it to the right. This improves visual hierarchy and makes better use of space in the repository list view.
Move the grouping toggle to the same line as the search bar for:
- /explore/organizations page
- Organization repositories page
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add CleanupRequestedAt field to runner model
- Add RunnerRequestCleanup handler to set cleanup timestamp
- Add force-cleanup route for POST requests
- Add orange Force Cleanup button next to Check Bandwidth
- Runner will check this timestamp and perform cleanup when set
🤖 Generated with Claude Code
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add GetCurrentTaskByRunnerID and GetCurrentTasksForRunners functions
- Update RunnersStatusJSON to include current task info for each runner
- Add Current Task column to runner list showing running job duration
- Add wait time display to queue depth (shows oldest waiting job age)
- Queue labels now show: label: N (Xh Ym) for jobs waiting time
- Auto-refreshing every 30 seconds via AJAX polling
🤖 Generated with Claude Code
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add GetQueueDepthByLabels function to query waiting jobs by labels
- Add QueueDepthJSON endpoint to return queue depth data
- Update runner_list.tmpl to show queue depth with visual indicators
- Show warnings for jobs waiting > 30 minutes (stuck jobs)
- Labels colored by severity: blue (normal), yellow (>5 waiting), red (stuck)
- Add queue_depth locale string
🤖 Generated with Claude Code
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add unhealthy status display on runners list page (yellow color when online but unhealthy)
- Add is_healthy field to RunnersStatusJSON API response
- Add CPUInfo struct to RunnerCapability for CPU load monitoring
- Add CPU tile to runner edit page showing load percentage and CPU count
- Add real-time JavaScript polling for CPU tile updates
- Add locale string for unhealthy status
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add repository display title field shown in header and explore listings
- Add license settings page with predefined license types
- Auto-create LICENSE.md when license type is selected
- Show license in repo sidebar with link to LICENSE.md
- Add API header link option in theme settings
- Default explore/organizations sort to alphabetical
- Show org DisplayName only in /explore/organizations
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add XcodeInfo struct for macOS runner capabilities (version, build, SDKs, simulators)
- Add BuildTools and PackageManagers fields to RunnerCapability struct
- Update runner_edit.tmpl to display:
- Xcode info with SDKs and Simulators for macOS runners
- Build Tools (gcc, g++, msbuild, etc.) for all platforms
- Package Managers (apt, brew, chocolatey, etc.) for all platforms
This aligns with act_runner capability detection which already reports these fields.
🤖 Generated with Claude Code
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add StringUtils.HasSuffix template function
- Update runner edit template to use SuggestedLabels from capabilities
- Auto-suggest -latest variants for OS-type labels (ios, macos, xcode, etc.)
- Falls back to OS-based suggestions if no SuggestedLabels available
🤖 Generated with Claude Code
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add RunnersStatusJSON endpoint for bulk runner status queries
- Update runner_list.tmpl with JavaScript polling every 30 seconds
- Auto-refresh status, version, and last online time
- Display relative time as plain text (e.g., 5 minutes ago)
🤖 Generated with Claude Code
- Add Type field (Global/Organization/Repository) to runner edit page
- Add Owner field showing actual owner name or System for global runners
- Update How to start link to point to GitCaddy act_runner docs
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add element IDs to status/disk/bandwidth tiles for targeted updates
- Add JavaScript polling every 10 seconds to update runner status
- Preserve SVG icons during AJAX updates by separating icon and text spans
- Add form ID to runner-form for Update Instructions button
- Show Connected when online, Last seen when offline
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add DistroInfo struct to parse Linux distribution from capabilities
- Add runner label management endpoints (add/remove/use-suggested)
- Update runner edit UI with:
- Clickable labels with X to remove
- Suggested labels with + to add individually
- Use All Suggested Labels button
- Buttons moved to full-width row below columns
- Suggested labels derived from OS and distro (linux, linux-latest, debian, debian-latest, etc)
🤖 Generated with Claude Code
- Add BandwidthTestRequestedAt field to ActionRunner model
- Update to actions-proto-go v0.5.7 with RequestBandwidthTest field
- Add RunnerRequestBandwidthTest handler and route
- Update FetchTask to check and return bandwidth test request flag
- Add Check Now button to runner capabilities panel
- Add locale strings for bandwidth test feature
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add BandwidthInfo struct for bandwidth test results
- Display download speed and latency in runner edit page
- Show when the bandwidth test was last performed
- Add locale string for bandwidth label
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Two-column layout: basic info left, capabilities right
- Task list remains full-width below
- Vertical layout for capabilities (better for future expansion)
- Shows Docker availability status
- Add DiskInfo struct to RunnerCapability for disk space data
- Add disk space progress bar with color coding (green/yellow/red)
- Add Int64ToFloat64 and DivideFloat64 template helper functions
- Add locale strings for disk space labels and warnings
- Show disk usage percentage, free space, and total space
- Display warning icons when disk usage is high (85%+) or critical (95%+)
Co-Authored-By: Claude <noreply@anthropic.com>
- Display capabilities on runner edit page (OS, Docker, shells, tools)
- Add locale translations for capability labels
- Parse and render CapabilitiesJSON from runner model
- Update actions-proto-go to v0.5.2
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
During https://github.com/go-gitea/gitea/issues/35790, it was noticed
that this PNG image had the wrong file extension. I also verified
`dingtalk.ico` and that one is actually an `.ico`.
1. make our "route group pattern match" also update chi's RoutePattern
2. fix incorrect "NotFound" call in conda package
3. make ".flex-item .flex-item-main" has a general gap, then no need to
use `tw` tricks
4. improve the "test webhook" UI
Adds the `flat-square` style to action badges. Styles can be selected by
adding `?style=<style>` to the badge endpoint. If no style query is
given, or if the query is invalid, the style defaults to `flat`.
---------
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>