Skip to content

ci: bump actions/checkout from 4 to 6#9

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/github_actions/actions/checkout-6
Closed

ci: bump actions/checkout from 4 to 6#9
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/github_actions/actions/checkout-6

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot Bot commented on behalf of github Jan 11, 2026

Bumps actions/checkout from 4 to 6.

Release notes

Sourced from actions/checkout's releases.

v6.0.0

What's Changed

Full Changelog: actions/checkout@v5.0.0...v6.0.0

v6-beta

What's Changed

Updated persist-credentials to store the credentials under $RUNNER_TEMP instead of directly in the local git config.

This requires a minimum Actions Runner version of v2.329.0 to access the persisted credentials for Docker container action scenarios.

v5.0.1

What's Changed

Full Changelog: actions/checkout@v5...v5.0.1

v5.0.0

What's Changed

⚠️ Minimum Compatible Runner Version

v2.327.1
Release Notes

Make sure your runner is updated to this version or newer to use this release.

Full Changelog: actions/checkout@v4...v5.0.0

v4.3.1

What's Changed

Full Changelog: actions/checkout@v4...v4.3.1

v4.3.0

What's Changed

... (truncated)

Changelog

Sourced from actions/checkout's changelog.

Changelog

v6.0.2

v6.0.1

v6.0.0

v5.0.1

v5.0.0

v4.3.1

v4.3.0

v4.2.2

v4.2.1

v4.2.0

v4.1.7

v4.1.6

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Jan 11, 2026
@dependabot dependabot Bot requested a review from eyelock as a code owner January 11, 2026 21:49
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code labels Jan 11, 2026
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot force-pushed the dependabot/github_actions/actions/checkout-6 branch from a26f1b8 to e3db576 Compare January 11, 2026 21:51
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot Bot commented on behalf of github Jan 11, 2026

Dependabot tried to update this pull request, but something went wrong. We're looking into it, but in the meantime you can retry the update by commenting @dependabot recreate.

@eyelock eyelock closed this in 4411814 Jan 11, 2026
@dependabot @github
Copy link
Copy Markdown
Contributor Author

dependabot Bot commented on behalf of github Jan 11, 2026

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot dependabot Bot deleted the dependabot/github_actions/actions/checkout-6 branch January 11, 2026 22:21
eyelock pushed a commit that referenced this pull request Jan 15, 2026
- Define context-specific patterns for CLI, MCP, ViewModels, and file ops
- Document when to use try?, throw, or return isError
- Add typed error definition examples
- List errors that should never be silently ignored
- Update refactoring checklist with error handling items

Addresses Issue #9 from forensic code review.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
eyelock added a commit that referenced this pull request Jan 15, 2026
* refactor(shared): Extract shared models and generic installer (#phase1)

- Create TermQShared target with Sendable domain models (Tag, Column, Card, Board)
- Add shared OutputTypes (TerminalOutput, ColumnOutput, PendingOutput, ErrorOutput)
- Add shared BoardLoader for consistent board loading/writing across CLI and MCP
- Extract generic ComponentInstaller protocol to eliminate CLI/MCP installer duplication
- Migrate termq-cli to use TermQShared (remove ~200 lines of duplicate models)
- Migrate MCPServerLib to use TermQShared with type aliases for compatibility
- Add TermQSharedTests for shared model coverage

Net reduction: ~1000 lines of duplicated code

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor(viewmodel): Extract TabManager and BoardPersistence (#phase2)

Split BoardViewModel from 768 to 441 lines by extracting:

- TabManager: Session tab state, navigation, attention indicators, transient cards
- BoardPersistence: Save/load operations, file monitoring for external changes
- FileMonitor: Helper class for dispatch source-based file monitoring

BoardViewModel now coordinates these managers while maintaining backwards
compatible API through proxy properties and methods.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor: Extract TerminalThemeManager from TerminalSessionManager

Phase 3 of tech debt cleanup - split the TerminalSessionManager god object
by extracting theme management into a dedicated TerminalThemeManager class.

Changes:
- Create TerminalThemeManager for theme state and application logic
- TerminalSessionManager now delegates theme operations to themeManager
- Proxy properties maintain API compatibility (themeId, currentTheme)
- Theme callback mechanism for applying changes to all sessions

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* test: Add resource and prompt handler tests, coverage target

Improve test coverage from 66% to 78%:
- Add testResource* tests for all MCP resource handlers (terminals, columns, pending, context)
- Add testPrompt* tests for all MCP prompt handlers (session_start, workflow_guide, terminal_summary)
- Add test.coverage Makefile target for easy coverage reporting

Coverage improvements:
- ResourceHandlers.swift: 0% → 95%
- PromptHandlers.swift: 0% → 94%

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* docs: Add code style guide from tech debt cleanup

Create .claude/commands/code-style.md capturing patterns learned:
- Swift 6 Sendable conformance patterns
- Actor-isolated class with dispatch source helpers
- God object decomposition strategy
- Init order with callback configure() pattern
- Generic type extraction for code deduplication
- Observable vs Sendable model separation
- MCP testing patterns with type extraction helpers
- Refactoring checklist for future upgrades

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor: Extract reusable components from large view files

- Extract MCPStatusView from ContentView (23 lines)
- Extract SafePasteAnalyzer from TerminalHostView (63 lines)
- Extract LLMVendor enum from CardEditorView (54 lines)

Addresses Issue #6 from forensic code review.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor: Add Constants file to consolidate magic values

- Create Constants.swift with Shell, Terminal, Columns, ColorPalette,
  LLMTokens, and Activity configuration constants
- Update TerminalSessionManager to use Terminal and Activity constants
- Update ColumnEditorView to use ColorPalette constants
- Update ContentView to use Columns.fallbackName constant

Addresses Issue #7 from forensic code review.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* docs: Add error handling guidelines to code style guide

- Define context-specific patterns for CLI, MCP, ViewModels, and file ops
- Document when to use try?, throw, or return isError
- Add typed error definition examples
- List errors that should never be silently ignored
- Update refactoring checklist with error handling items

Addresses Issue #9 from forensic code review.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor(mcp): Add type-safe JSON Schema builder DSL

- Create SchemaBuilder enum with type-safe property definitions
- Add convenience methods: string(), bool(), int() for common types
- Refactor SchemaDefinitions to use builder pattern
- Replace verbose nested dictionary literals with clean DSL syntax

Example:
  inputSchema: S.objectSchema([
      S.string("identifier", "Terminal name or UUID", required: true),
      S.string("column", "Target column name", required: true),
  ])

Addresses forensic review Issue #10.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* refactor(mcp): Add centralized input validation layer

- Create InputValidator enum with type-safe parameter extraction
- Add validation methods: requireString, requireNonEmptyString, requireUUID
- Add optional extractors: optionalString, optionalBool, optionalUUID, optionalPath
- Define ValidationError enum with descriptive error messages
- Refactor all MCP tool handlers to use centralized validation
- Consistent error handling: return isError:true instead of throwing

Benefits:
- Type-safe parameter extraction reduces runtime errors
- Consistent error messages improve LLM experience
- Path validation with tilde expansion
- UUID format validation with clear error messages

Addresses forensic review Issue #11.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* docs: Add memory management patterns to code style guide

Audit findings:
- No actual memory leaks found in codebase
- All closures properly use [weak self] where needed
- Event monitors have cleanup in onDisappear
- Timers and dispatch sources cleaned up in deinit
- Callback-based coordination avoids retain cycles

Documentation added:
- Closure capture rules for classes vs structs
- Event monitor cleanup pattern
- Timer/dispatch source cleanup
- Callback-based coordination guidance
- Checklist item for memory management

Addresses forensic review Issue #12.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* test: Improve test coverage for shared models and validation

- Add comprehensive InputValidator tests (93% line coverage)
- Add TermQError error description tests (100% coverage)
- Add ColumnOutput, PendingOutput, PendingSummary tests
- Add SetResponse and MoveResponse tests
- Fix test assertions for order-independent badge comparisons
- Fix path validation tests for trailing slash normalization

Total coverage improved from ~75% to ~80% lines.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* chore: Add missing build artifacts to gitignore

Add termqcli and TermQ_TermQ.bundle to gitignore - these are
generated during the build process and shouldn't be tracked.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* fix: Add @mainactor to showWarningDialog for Swift 6 concurrency

NSAlert requires main actor isolation in Xcode 16.4+ with stricter
Swift concurrency checking. Add @mainactor annotation to satisfy
the compiler's concurrency requirements.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

---------

Co-authored-by: David Collie <support@eyelock.net>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
eyelock pushed a commit that referenced this pull request Jan 18, 2026
Apply shared KeyValueEditor component to both Settings > Environment
and Terminal Details > Environment tabs for consistent UI and behavior.

Changes:
- Settings Environment tab: Replace inline form with KeyValueEditor
- Terminal Details Environment tab: Replace inline editor with KeyValueEditor
- Both tabs now use identical shared component with full-width inputs
- Consistent styling with Form .formStyle(.grouped)
- Proper state synchronization between KeyValueItem and EnvironmentVariable

Addresses feedback #4, #7, #8, #9, #11 from implementation plan

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
eyelock pushed a commit that referenced this pull request Jan 18, 2026
Apply shared KeyValueEditor component to both Settings > Environment
and Terminal Details > Environment tabs for consistent UI and behavior.

Changes:
- Settings Environment tab: Replace inline form with KeyValueEditor
- Terminal Details Environment tab: Replace inline editor with KeyValueEditor
- Both tabs now use identical shared component with full-width inputs
- Consistent styling with Form .formStyle(.grouped)
- Proper state synchronization between KeyValueItem and EnvironmentVariable

Addresses feedback #4, #7, #8, #9, #11 from implementation plan

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
eyelock pushed a commit that referenced this pull request Jan 18, 2026
Apply shared KeyValueEditor component to both Settings > Environment
and Terminal Details > Environment tabs for consistent UI and behavior.

Changes:
- Settings Environment tab: Replace inline form with KeyValueEditor
- Terminal Details Environment tab: Replace inline editor with KeyValueEditor
- Both tabs now use identical shared component with full-width inputs
- Consistent styling with Form .formStyle(.grouped)
- Proper state synchronization between KeyValueItem and EnvironmentVariable

Addresses feedback #4, #7, #8, #9, #11 from implementation plan

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
eyelock added a commit that referenced this pull request Jan 18, 2026
* feat: integrate KeyValueEditor in environment tabs

Apply shared KeyValueEditor component to both Settings > Environment
and Terminal Details > Environment tabs for consistent UI and behavior.

Changes:
- Settings Environment tab: Replace inline form with KeyValueEditor
- Terminal Details Environment tab: Replace inline editor with KeyValueEditor
- Both tabs now use identical shared component with full-width inputs
- Consistent styling with Form .formStyle(.grouped)
- Proper state synchronization between KeyValueItem and EnvironmentVariable

Addresses feedback #4, #7, #8, #9, #11 from implementation plan

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* feat: improve environment settings UI with component split and fixes

Split KeyValueEditor into focused components (KeyValueList + KeyValueAddForm)
for better UX with separate sections for viewing and adding items.

Changes:
- Split KeyValueEditor.swift into 3 components:
  * KeyValueList - display existing items with delete
  * KeyValueAddForm - add new items with validation
  * KeyValueEditor - legacy wrapper (deprecated)

- SettingsEnvironmentView improvements:
  * Use split components in separate sections
  * Add proper error handling with user-visible alerts
  * Fix encryption key status race condition
  * Remove nested Form wrapper

- CardEditorEnvironmentTab improvements:
  * Use split components in separate sections
  * Add secret visibility toggle for inherited globals
  * Add proper error handling with alerts
  * Store secret values in memory for display

- Add localized section headers:
  * "Global Environment Variables"
  * "Add Environment Variable" (Settings)
  * "Add Environment Variable" (Terminal Details)

Fixes:
- Secrets not being added (silent error swallowing with try?)
- Encryption key status not updating after operations
- Secret values not viewable in Terminal Details inherited list

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

---------

Co-authored-by: David Collie <support@eyelock.net>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
eyelock added a commit that referenced this pull request Jan 18, 2026
…d tags editor (#72)

* feat: integrate KeyValueEditor in environment tabs

Apply shared KeyValueEditor component to both Settings > Environment
and Terminal Details > Environment tabs for consistent UI and behavior.

Changes:
- Settings Environment tab: Replace inline form with KeyValueEditor
- Terminal Details Environment tab: Replace inline editor with KeyValueEditor
- Both tabs now use identical shared component with full-width inputs
- Consistent styling with Form .formStyle(.grouped)
- Proper state synchronization between KeyValueItem and EnvironmentVariable

Addresses feedback #4, #7, #8, #9, #11 from implementation plan

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* feat: improve environment settings UI with component split and fixes

Split KeyValueEditor into focused components (KeyValueList + KeyValueAddForm)
for better UX with separate sections for viewing and adding items.

Changes:
- Split KeyValueEditor.swift into 3 components:
  * KeyValueList - display existing items with delete
  * KeyValueAddForm - add new items with validation
  * KeyValueEditor - legacy wrapper (deprecated)

- SettingsEnvironmentView improvements:
  * Use split components in separate sections
  * Add proper error handling with user-visible alerts
  * Fix encryption key status race condition
  * Remove nested Form wrapper

- CardEditorEnvironmentTab improvements:
  * Use split components in separate sections
  * Add secret visibility toggle for inherited globals
  * Add proper error handling with alerts
  * Store secret values in memory for display

- Add localized section headers:
  * "Global Environment Variables"
  * "Add Environment Variable" (Settings)
  * "Add Environment Variable" (Terminal Details)

Fixes:
- Secrets not being added (silent error swallowing with try?)
- Encryption key status not updating after operations
- Secret values not viewable in Terminal Details inherited list

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* feat: complete Settings UI improvements with tab navigation and tags editor

This PR completes the Settings UI improvement series by:

1. Fix "Edit Global Settings" button to properly open Settings window
   - Replace problematic sheet/NSWindow approaches with SettingsLink
   - Add SettingsCoordinator for tab pre-selection
   - Settings now opens with Environment tab selected when accessed from Terminal Details

2. Replace custom tags editor with KeyValueEditor components
   - Use KeyValueList for displaying tags
   - Use KeyValueAddForm for adding new tags
   - Consistent UX with Environment variables editor
   - Remove obsolete state variables (newTagKey, newTagValue)

3. Complete localization for "Add Tag" string across all 40 languages

Technical changes:
- Created SettingsCoordinator singleton for Settings navigation coordination
- Updated SettingsView to observe coordinator and respond to tab requests
- Updated CardEditorEnvironmentTab to use SettingsLink with simultaneousGesture
- Updated CardEditorView metadata tab to use KeyValueEditor pattern
- Added sectionAddTag localization key in all 40 language files

All tests passing (521 tests, 0 failures)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

---------

Co-authored-by: David Collie <support@eyelock.net>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants