Skip to content

Conversation

@shadowfax92
Copy link
Contributor

  • feat: new extension installer + bundle support
  • feat: support bundle extension download in cli
  • chore: update release yaml to include new bundle_extensions module

@shadowfax92 shadowfax92 merged commit f81120f into main Jan 1, 2026
2 of 3 checks passed
@github-actions github-actions bot locked and limited conversation to collaborators Jan 1, 2026
Copy link

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

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

15 files reviewed, 3 comments

Edit Code Review Agent Settings | Greptile

Comment on lines +44 to +45
+ ManifestLocation::kExternalPref, // CRX location (bundled)
+ ManifestLocation::kExternalPrefDownload, // Download location (remote)
Copy link

Choose a reason for hiding this comment

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

logic: Using both kExternalPref and kExternalPrefDownload as constructor arguments appears incorrect for ExternalProviderImpl. The constructor typically takes creation_flags and install_flags, not two ManifestLocation values. Are you sure the ExternalProviderImpl constructor accepts two ManifestLocation parameters in this order?

Prompt To Fix With AI
This is a comment left during a code review.
Path: packages/browseros/chromium_patches/chrome/browser/extensions/external_provider_impl.cc
Line: 44:45

Comment:
**logic:** Using both kExternalPref and kExternalPrefDownload as constructor arguments appears incorrect for ExternalProviderImpl. The constructor typically takes creation_flags and install_flags, not two ManifestLocation values. Are you sure the ExternalProviderImpl constructor accepts two ManifestLocation parameters in this order?

How can I resolve this? If you propose a fix, please make it concise.

Comment on lines +133 to +135
+ for (const auto [id, _] : last_config_) {
+ extension_ids_.insert(id);
+ }
Copy link

Choose a reason for hiding this comment

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

logic: Extension IDs from remote config are added without validation - potential security risk

Prompt To Fix With AI
This is a comment left during a code review.
Path: packages/browseros/chromium_patches/chrome/browser/browseros/extensions/browseros_extension_maintainer.cc
Line: 133:135

Comment:
**logic:** Extension IDs from remote config are added without validation - potential security risk

How can I resolve this? If you propose a fix, please make it concise.

Comment on lines +144 to +145
+ base::FilePath crx_path =
+ bundled_path.Append(base::FilePath::FromUTF8Unsafe(*crx_file));
Copy link

Choose a reason for hiding this comment

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

logic: Using FromUTF8Unsafe with external input could allow directory traversal attacks. Consider validating that crx_file contains only a filename without path separators.

Prompt To Fix With AI
This is a comment left during a code review.
Path: packages/browseros/chromium_patches/chrome/browser/browseros/extensions/browseros_extension_installer.cc
Line: 144:145

Comment:
**logic:** Using `FromUTF8Unsafe` with external input could allow directory traversal attacks. Consider validating that `crx_file` contains only a filename without path separators.

How can I resolve this? If you propose a fix, please make it concise.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants