-
Notifications
You must be signed in to change notification settings - Fork 33
fix: auto-re-read stale files in agent loop instead of failing (#450) #456
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
anandgupta42
wants to merge
11
commits into
main
Choose a base branch
from
fix/ai-450-edit-stale-file-retry
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+268
−2
Open
Changes from 6 commits
Commits
Show all changes
11 commits
Select commit
Hold shift + click to select a range
453e332
skill(data-viz): add lazy init, data-code separation, color contrast,…
anandgupta42 e664d78
fix: new user detection race condition + telemetry gaps
anandgupta42 80b5734
fix: address code review feedback on new user detection and telemetry
anandgupta42 3879ef8
Merge branch 'main' into fix/new-user-detection
anandgupta42 2e784dd
fix: address CodeRabbit review — Nivo description + marker guard
anandgupta42 946ec9f
fix: [AI-450] auto-refresh stale files in `edit` and `write` tools in…
anandgupta42 6688a43
Revert "fix: [AI-450] auto-refresh stale files in `edit` and `write` …
anandgupta42 78d2d71
fix: [AI-450] auto-re-read stale files in agent loop so model sees cu…
anandgupta42 d4aa51d
Merge branch 'main' into fix/ai-450-edit-stale-file-retry
anandgupta42 b567494
fix: [AI-450] address code review — typed `StaleFileError`, bounded r…
anandgupta42 f2d5e8d
test: [AI-450] add tests for stale file recovery + append failure con…
anandgupta42 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -36,6 +36,7 @@ We collect the following categories of events: | |
| | `skill_used` | A skill is loaded (skill name and source — `builtin`, `global`, or `project` — no skill content) | | ||
| | `sql_execute_failure` | A SQL execution fails (warehouse type, query type, error message, PII-masked SQL — no raw values) | | ||
| | `core_failure` | An internal tool error occurs (tool name, category, error class, truncated error message, PII-safe input signature, and optionally masked arguments — no raw values or credentials) | | ||
| | `first_launch` | Fired once on first CLI run after installation. Contains version and is_upgrade flag. No PII. | | ||
|
|
||
| Each event includes a timestamp, anonymous session ID, CLI version, and an anonymous machine ID (a random UUID stored in `~/.altimate/machine-id`, generated once and never tied to any personal information). | ||
|
|
||
|
|
@@ -88,6 +89,19 @@ We take your privacy seriously. Altimate Code telemetry **never** collects: | |
|
|
||
| Error messages are truncated to 500 characters and scrubbed of file paths before sending. | ||
|
|
||
| ### New User Identification | ||
|
|
||
| Altimate Code uses two types of anonymous identifiers for analytics, depending on whether you are logged in: | ||
|
|
||
| - **Anonymous users (not logged in):** A random UUID is generated using `crypto.randomUUID()` on first run and stored at `~/.altimate/machine-id`. This ID is not tied to your hardware, operating system, or identity — it is purely random and serves only to distinguish one machine from another in aggregate analytics. | ||
| - **Logged-in users (OAuth):** Your email address is SHA-256 hashed before sending. The raw email is never transmitted. | ||
|
|
||
| Both identifiers are only sent when telemetry is enabled. Disable telemetry entirely with `ALTIMATE_TELEMETRY_DISABLED=true` or the config option above. | ||
|
|
||
| ### Data Retention | ||
|
|
||
| Telemetry data is sent to Azure Application Insights and retained according to [Microsoft's data retention policies](https://learn.microsoft.com/en-us/azure/azure-monitor/logs/data-retention-configure). We do not maintain a separate data store. To request deletion of your telemetry data, contact [email protected]. | ||
|
|
||
| ## Network | ||
|
|
||
| Telemetry data is sent to Azure Application Insights: | ||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix misleading comment: "useMemo" is React terminology, not SolidJS.
The comment references "useMemo" which is a React hook. SolidJS uses
createMemo. The approach works correctly (component functions run once in SolidJS), but the comment could confuse maintainers.📝 Suggested fix
📝 Committable suggestion
🤖 Prompt for AI Agents