Skip to content

fix(proxy): align update check status field - #1312

Merged
murdore merged 1 commit into
releasefrom
fix/proxy-status-check-field
Aug 12, 2026
Merged

murdore merged 1 commit into
releasefrom
fix/proxy-status-check-field

Conversation

@murdore

@murdore murdore commented Aug 11, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • rename the status-only lastUpdateCheckAt field to lastCheckAt
  • align CLI JSON terminology with persisted updater state and existing status API terminology
  • preserve the text output and all updater/proxy behavior

Verification

  • pnpm exec prettier --check src/cli/commands/proxy.ts
  • pnpm exec eslint src/cli/commands/proxy.ts (0 errors; existing file-length warnings only)
  • pnpm exec tsc --noEmit --project tsconfig.cli.json
  • read-only local-source proxy status invocation
  • git diff --check

Summary by CodeRabbit

  • Bug Fixes
    • Updated the proxy status output to use the correct latest check timestamp label.

Copilot AI lite review requested due to automatic review settings August 11, 2026 04:48
@github-actions

github-actions Bot commented Aug 11, 2026 •

Copy link
Copy Markdown
Contributor

✅ Single Commit Policy - COMPLIANT

Status: Policy requirements met • 1 commit • Valid format • Ready for merge

📊 View validation details

📝 Commit Details

  • Hash: 3e6aeab75cbab416c49c1340e412e1d04dfb7a59
  • Message: fix(proxy): align update check status field
  • Author: Sachin Sharma

✅ Validation Results

  • Single commit requirement met
  • No merge commits in branch
  • Semantic commit message format verified
  • Ready for squash merge to release branch

🤖 Automated validation by NeuroLink Single Commit Enforcement

@coderabbitai

coderabbitai Bot commented Aug 11, 2026 •

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: fce801fb-5a84-4665-89bc-4e583de9414a

📥 Commits

Reviewing files that changed from the base of the PR and between 9096b8f and e4b95ab.

📒 Files selected for processing (1)
  • src/cli/commands/proxy.ts

📝 Walkthrough

Walkthrough

The proxy status timestamp field was renamed from lastUpdateCheckAt to lastCheckAt. The status text output now reads the renamed field.

Changes

Proxy status reporting

Layer / File(s) Summary
Rename proxy status timestamp field
src/cli/commands/proxy.ts
The status object and status display now use lastCheckAt for the latest check time.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Possibly related PRs

  • juspay/neurolink#1264: Both changes update proxy status and update-check reporting in src/cli/commands/proxy.ts.
  • juspay/neurolink#1311: This PR renames the same proxy status timestamp field from lastUpdateCheckAt to lastCheckAt.

Suggested reviewers: pdogra1299

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly identifies the proxy status field alignment, which matches the main change in the pull request.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/proxy-status-check-field

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

🤖 AI Review & Build Compliance ✅

Status: AI analysis complete • Build rules validated • Ready for review

📊 View detailed analysis results

🛡️ Analysis Complete

  • ✅ Security scan (vulnerabilities, API keys)
  • ✅ TypeScript safety & code quality
  • ✅ Error handling & best practices
  • ✅ Build rule enforcement validated
  • ✅ Commit format & compliance checks

📋 Ready for Merge When

  • All CI checks passing
  • Manual review approved
  • Any AI-flagged issues resolved

🤖 AI analysis complete - check individual code comments for specific feedback

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adjusts the neurolink proxy status command’s JSON schema to align the “update check” timestamp field name with the persisted UpdateState (lastCheckAt) and the proxy /status API’s terminology, while keeping the human-readable text output the same.

Changes:

  • Renames the JSON status field from lastUpdateCheckAt to lastCheckAt.
  • Updates the text-rendering path to read the renamed field when printing “Last update check”.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread src/cli/commands/proxy.ts
Comment on lines 3817 to 3820
latestVersion: updateState?.lastCheckVersion || null,
lastDetectedVersion: updateState?.lastCheckVersion || null,
lastUpdateCheckAt: updateState?.lastCheckAt ?? null,
lastCheckAt: updateState?.lastCheckAt ?? null,
installedVersion:

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is actually a MINOR suggestion rather than a blocking issue. While the JSON field name does change, this aligns the implementation with:

  1. The canonical field name in UpdateState type (updateState.lastCheckAt)
  2. The source data structure (the actual update check timestamp is stored as lastCheckAt, not lastUpdateCheckAt)

The rename makes the JSON output consistent with what's actually persisted and queried from the database. For backward compatibility concerns, we could consider:

  • Adding both fields temporarily (but this adds unnecessary complexity)
  • Documenting this as a schema evolution in release notes

Since this is a CLI command that's part of the maintenance workflow (not a user-facing API), the impact is minimal. Users who parse the JSON can update their scripts - this is standard practice for any service updating its output format.

@murdore
murdore force-pushed the fix/proxy-status-check-field branch from e4b95ab to 3e6aeab Compare August 12, 2026 02:14
@murdore
murdore merged commit 1679891 into release Aug 12, 2026
12 of 13 checks passed
@murdore
murdore deleted the fix/proxy-status-check-field branch August 12, 2026 02:14
@github-actions

Copy link
Copy Markdown
Contributor

🤖 AI Review & Build Compliance ✅

Status: AI analysis complete • Build rules validated • Ready for review

📊 View detailed analysis results

🛡️ Analysis Complete

  • ✅ Security scan (vulnerabilities, API keys)
  • ✅ TypeScript safety & code quality
  • ✅ Error handling & best practices
  • ✅ Build rule enforcement validated
  • ✅ Commit format & compliance checks

📋 Ready for Merge When

  • All CI checks passing
  • Manual review approved
  • Any AI-flagged issues resolved

🤖 AI analysis complete - check individual code comments for specific feedback

@Tara-ag

Tara-ag commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Review Summary

Decision: APPROVED ✅

This PR is a simple, low-risk refactoring that improves code consistency without any functional impact.

Findings (1 total)

Severity Category Issue Location
💬 SUGGESTION Code Quality Property naming inconsistency resolved src/cli/commands/proxy.ts:3816

Details: The PR renames lastUpdateCheckAt to lastCheckAt, aligning the implementation with the canonical field name updateState.lastCheckAt used throughout the data structure. This change improves consistency by using the same field name as the source data. No functional impact.

Impact Analysis

  • Files Changed: 1 file (src/cli/commands/proxy.ts)
  • Lines Changed: 6 lines (3 additions, 3 deletions)
  • Breaking Changes: None
  • API Impact: None - this is an internal property rename only
  • Test Impact: No tests were found that specifically test the proxyStatusCommand, so no test updates required

Review Scope

This was a single-file review focusing on:

  • Code correctness and consistency
  • Alignment with type definitions
  • Potential breaking changes
  • Test coverage

Conclusion

The change is safe to merge. It's a straightforward property rename that makes the implementation consistent with its data source (updateState.lastCheckAt). No behavioral changes, no API breaking changes, and no downstream impact expected.


Reviewed following NeuroLink project standards, including CLAUDE.md Critical Rules for backward compatibility and type safety.

Comment thread src/cli/commands/proxy.ts
@@ -3816,7 +3816,7 @@ export const proxyStatusCommand: CommandModule<object, ProxyStatusArgs> = {
updaterRunning: false,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💬 SUGGESTION: Property naming inconsistency resolved - The PR renames lastUpdateCheckAt to lastCheckAt, aligning the implementation with the canonical field name updateState.lastCheckAt used throughout the data structure. This change improves consistency by using the same field name as the source data. No functional impact.

@github-actions

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 10.11.2 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants