[Arch] Remove supports for Background Commands

What is the problem that this fixes or functionality that this introduces? Does it fix any open issues?
Dependency: https://github.com/OpenDevin/OpenDevin/pull/2802
background_commands has been existing for a while, but as far as I know, they are not used that often - it is less intuitive for an agent (at least for CodeAct) to specifically use the background=True argument.
Furthermore, the background commands can be simulated without actually supporting it in the sandbox: you can just run python something.py > output.log &. This will run that command on the backend and you get its output log whenever needed (e.g., by cat output.log).
The main reason for removing the background command is that:

It is probably less frequently used by agents / users
It introduces some specific logic for handling things (e.g., adding a field in the State, to handle it) - More code means harder to maintain, especially when we grow the number of runtime/sandboxes. Plus, this thing is actually broken for some boxes (e.g., E2B box).
And it gets in the way of our planned architecture refractor: https://github.com/OpenDevin/OpenDevin/issues/2404. As discussed with @yufansong , it is pretty challenging to make the observation of background commands synced into the event stream - how long should the background commands' output be sent to the event stream to update the agent? If we only send over the update when the agent requests it, why can't we simulate the same functionality with python something.py > output.log & and get the output using just cat output.log? It will behave the same way to the agent and reduce our maintenance headache.

Give a brief summary of what the PR does, explaining any non-trivial design decisions
This PR removes all occurrences of background commands as long as their dependencies, related prompts, etc.
Other references

LGTM

Plus, this thing is actually broken for some boxes (e.g., E2B box).

Ah, I was wondering how the removal affects E2B. So we know it doesn't actually work now?

Furthermore, the background commands can be simulated without actually supporting it in the sandbox: you can just run python something.py > output.log &. This will run that command on the backend and you get its output log whenever needed (e.g., by cat output.log).

Afaik, we don't have integration tests capturing background commands, but I think there is a bit in DummyAgent: it tests that two background commands consecutively works (with no action in-between iirc). So that case is completely removed? We expect the agent to always ask, so always an agent action to do cat output.log, that is, there will always be an agent action followed by observing the output?

it is pretty challenging to make the observation of background commands synced into the event stream - how long should the background commands' output be sent to the event stream to update the agent? If we only send over the update when the agent requests it, why can't we simulate the same functionality with python something.py > output.log & and get the output using just cat output.log? It will behave the same way to the agent and reduce our maintenance headache.

Afaik the assumption of the current code is that they may be sent at regular intervals. That doesn't seem problematic from the perspective of the event stream updates, it will just notify when it has a new observation?
Regarding your second question though, it gets a bit more interesting IMHO. There is a difference between the two: whether we know or can identify easily in the backend what the agent is doing, and thus take some action on it to correct course or otherwise react to reduce its space of possibilities. The easiest example is the stuck functionality: in general, if we identify it's doing the same action over and over then we can act to stop it, at least. It matters for user experience, it really comes across as broken behavior when it keeps at it over and over uselessly. (of course, it would be even more interesting if we can make it correct course)
FWIW, when we first implemented the stuck functionality, we targeted only very specific patterns of behavior of the agent, e.g. when it gets errors, or continuous NullObservations, as opposed to the generic criterium "stop any 3 or 4 identical pairs". The reasons for that are in part simply that these patterns of behavior were so obvious with monologue agent, that we could target them specifically. It did work for a time, to my knowledge. Some of it even worked with CodeAct for a time or in part, until some feature (user messages come to mind) needed adaptation. But eventually, with CodeAct we have fallen back to a generic 'is this the exact same action, obs'.
A reason for that is that we have to, because the backend doesn't know enough about what is going on. Please see this example: ErrorObservation. This section of is-stuck code never worked for CodeAct. Because the backend doesn't know when it gets an error, it doesn't get notified via an ErrorObservation. That functionality exists for monologue-based agents, and it does more than just stuck (it also has some self-correct mechanism related to it), but for CodeAct we never get that information. (Though, when linting is enabled, it might be easy to get it)
I wonder if something similar may happen with KillAction, which this PR is removing. The KillAction is simpler, and it gives us the possibility to identify as such (as a kill this pid) in more cases than when there's a more generic CmdOutputObservation, because with the CmdOutputObservation, the LLM varies slightly those thoughts, so oops, they're not the same anymore.
On a side note, maybe the problem is that the check is for identity. I've been thinking that perhaps we should try to identify by high similarity, rather. Maybe we can try, but there's always a trade-off, we don't want it to capture too much either, legitimate cases where the LLM could get out on its own.
Anyway, these are just some thoughts. I don't think they should block this removal. I do think it's worth thinking about sending some more information to the backend about what the agent is doing, and it's not only for stopping bad things, I think it may be necessary to allow us to slightly steer an agent at times.

Thanks @enyst for your thoughtful comments!
Yeah i do think there are trade-off between more structured action, vs. pure command (e.g., cat output.log) which can be easy to support but very hard get structure information from for different purpose (e.g., stuck detection).
That said, I do think once we finish the refractor, we can add back these background commands if wanted. It is just that they will be implemented by something bash utility under the hood, similar to python something.py & and cat output.log. But we can then wrap the CmdRunAction/Observation around with some special action/observation (e.g., BackgroundCmdObservation) if we want that structure info.
For ErrorObservation, i do think it might be possible to get them from CodeAct, we can maybe turn a CmdRunObservation to ErrorObservation if the exit code of the command run is -1?

(after battling with integration tests for a day - finally merging it 😢 )


Azure Blob E2E test is unstable

There are intermittent test failures in Azure Blob e2e test
https://github.com/kedacore/keda/runs/1090182094

Seems like this helped:
https://github.com/kedacore/keda/pull/1485

Seems like this helped:
https://github.com/kedacore/keda/pull/1485

Reopening since this test keeps falining.

Reopening since this test keeps falining.


rocAL - Box encoder changes

1. Introduced Box Encoder support
2. Optimized the box encoder using openmp pragma
3. Added offset support in box encoder
4. Added support for image id
5. Introduced RapidJson
6. Added support for inv_map
7. Optimized all the meta data updation by avoiding any extra copies.
8. Anchors passed by reference

@LakshmiKumar23 : Please run SSD training with this PR and confirm that it is converging before merge

@rrawther SSD training converged at epoch 60. PR can be merged


[#8] [UI] As a user, I can see the Popular products on the Home page

https://github.com/nimblehq/jetpack-compose-ecommerce/issues/8
What happened 👀
Whenever user selects the Home tab on the bottom navigation bar, the content will be shown to the user.
The list of popular products is shown at the bottom of the categories:

Show the header "Popular"
Show the "Shop All" button
Show the first 2 products with the information:

Image
Name
Price
Favorite icon

Insight 📝

Add the Product UI to Home screen:

Since the Home screen is wrapped with Column for scrollable content, the app crash on launch:

java.lang.IllegalStateException: Nesting scrollable in the same direction layouts like LazyColumn and Column(Modifier.verticalScroll()) is not allowed. If you want to add a header before the list of items please take a look on LazyColumn component which has a DSL api which allows to first add a header via item() function and then the list of items via items().

-> Add workaround solution to display products by using FlowRow

Fix the BottomNavigationBar overlap the content

Proof Of Work 📹

@hoangnguyen92dn please resolve the conflict :pray:


New version: JetBrains.Kotlin.Compiler version 1.2-beta2

Pull request has been created with Komac v1.9.1 :rocket:
Microsoft Reviewers: codeflow:open?pullrequest=https://github.com/microsoft/winget-pkgs/pull/116329&drop=dogfoodAlpha

@wingetbot waivers Add Validation-Executable-Error


Confirmation box before quit vs code

It would be very cool to have a confirmation box when you quit vs code with the keyboard shortcut command + q on mac. It's very annoying that vs code closes if you do command + q without doing it on purpose instead of command + s

Does the window.confirmBeforeClose setting help you?

Thanks ! it's that @gjsjohnmurray


Insomnia version typo?

Reporting a bug 🐛
Please make sure the version of deb-get you are using is up to date:
deb-get update
deb-get reinstall deb-get

Expected behavior
deb-get upgrade without warning
Actual behavior
deb-get update output

dpkg: PERINGATAN: version 'alpha.0/Insomnia.Core' has bad syntax: version number does not start with digit
  [+] insomnia (2022.7.0-alpha.0) has an update pending. alpha.0/Insomnia.Core is available.

and always downloading when run deb-get upgrade
dpkg: PERINGATAN: version 'alpha.0/Insomnia.Core' has bad syntax: version number does not start with digit
/var/cache/deb-get/Insomnia.Core-2022.7.0-alph 100%[==================================================================================================>]  81,55M   648KB/s    in 4m 53s

Steps to reproduce
i think Insomnia version typo.
System information
Run the following a paste the output below:
/etc/os-release
cat /etc/os-release

NAME="Ubuntu"
VERSION="20.04.4 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.4 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal

/etc/lsb-release
cat /etc/lsb-release

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.4 LTS"

deb-get version
deb-get version

0.3.6

deb-get update
deb-get update

Reading package lists...
  [+] Updating /var/cache/deb-get/bat.json
  [+] Updating /var/cache/deb-get/bottom.json
  [+] Updating /var/cache/deb-get/caprine.json
  [+] Updating /var/cache/deb-get/codium.json
  [+] Updating /var/cache/deb-get/deb-get.json
  [+] Updating /var/cache/deb-get/duf.json
  [+] Updating /var/cache/deb-get/fd.json
  [+] Updating /var/cache/deb-get/flameshot.json
  [+] Updating /var/cache/deb-get/gh.json
  [+] Updating /var/cache/deb-get/github-desktop.json
  [+] gitkraken (8.10.3) has an update pending. 9.0.0 is available.
  [+] Updating /var/cache/deb-get/hyper.json
  [+] Updating /var/cache/deb-get/insomnia.json
dpkg: PERINGATAN: version 'alpha.0/Insomnia.Core' has bad syntax: version number does not start with digit
  [+] insomnia (2022.7.0-alpha.0) has an update pending. alpha.0/Insomnia.Core is available.
  [+] Updating /var/cache/deb-get/ksnip.json
  [+] Updating /var/cache/deb-get/lsd.json
  [+] Updating /var/cache/deb-get/min.json
  [+] Updating /var/cache/deb-get/minikube.json
  [+] Updating /var/cache/deb-get/pandoc.json
  [+] Updating /var/cache/deb-get/rclone.json
  [+] Updating /var/cache/deb-get/system-monitoring-center.json
  [+] Updating /var/cache/deb-get/zenith.json
  [+] Updating /var/cache/deb-get/zettlr.json

This does not currently occur using the HEAD of main :
Insomnia
  Package:	insomnia
  Repository:	01-main
  Updater:	deb-get
  Installed:	No
  Published:	2022.6.0
  Architecture:	amd64
  Download:	https://github.com/Kong/insomnia/releases/download/core%402022.6.0/Insomnia.Core-2022.6.0.deb
  Website:	https://insomnia.rest/
  Summary:	The API Design Platform and API Client.

and it looks like it was a transient issue with a temporary "alpha" release with poor naming.
Thanks for the heads-up though: we can try avoiding future repeats of that problem.


Replace yum update with makecache

@Julien4218 Seems like 3 of the debian recipes (Couchbase, RabbitMQ, Varnish) might need a similar update?
sudo apt-get update -y

And for completeness, maybe remove -qq from the Nagios recipe.

@Julien4218 Seems like 3 of the debian recipes (Couchbase, RabbitMQ, Varnish) might need a similar update?
sudo apt-get update -y

Actually I think Debian is different, apt-get update does not update all the packages, but only the repos. It is also what our doc recommend doing for install and update a OHI package. I think we're good with Debian

@Julien4218 Seems like 3 of the debian recipes (Couchbase, RabbitMQ, Varnish) might need a similar update?
sudo apt-get update -y

Actually I think Debian is different, apt-get update does not update all the packages, but only the repos. It is also what our doc recommend doing for install and update a OHI package. I think we're good with Debian

I mean the -y specifically is only in 3 of the debian OHIs currently

@Julien4218 Seems like 3 of the debian recipes (Couchbase, RabbitMQ, Varnish) might need a similar update?
sudo apt-get update -y

Actually I think Debian is different, apt-get update does not update all the packages, but only the repos. It is also what our doc recommend doing for install and update a OHI package. I think we're good with Debian

I mean the -y specifically is only in 3 of the debian OHIs currently

I ll create a separate ticket to make all the Debian -y/-qq consistent, it's more than 3 that uses those variations


Logo alignment issue resolved

Fix: Alignment issue for Logo in both login and Registration page.
Description
Modified the alignment of LOGOS in Login and Registration pages.

Related Issue
Closes #371

Type of Change
What kind of change does this pull request introduce?

[ ] 🐛 Bug fix
[ ] 🚀 New feature
[ ] 📄 Documentation update
[ ] 🛠 Code improvement/refactor
[X] 🖼 UI/UX update
[ ] Other (please specify)

Checklist
Please ensure the following tasks are complete before submitting the pull request:

[X] I have tested my changes and ensured they work as expected.
[X] I have added any necessary documentation or comments.
[X] I have checked the existing issues and pull requests to avoid duplicates.
[X] I have starred this repository.
[X] I have reviewed my code for best practices and readability.
[X] I have included any relevant tests (if applicable).

@Kiran511-git resolve the merge conflicts.

solved merge conflicts. Please assign me with bigger label.

Resolved merge conflicts
On Thu, Oct 17, 2024, 5:10 AM Gaurav Pratap Singh @.***>
wrote:

@Kiran511-git https://github.com/Kiran511-git resolve the merge
conflicts.
—
Reply to this email directly, view it on GitHub
https://github.com/gauravsingh1281/Rentalog.in--Frontend/pull/375#issuecomment-2418145810,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BKQL2TBDZOJ6UVD3GGO3OTDZ332PRAVCNFSM6AAAAABP5LTWF6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMJYGE2DKOBRGA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Hey @Kiran511-git  your changes are not visible and your deploy preview has not been generated by netlify please pass all the checks by netlify.