Show HN: Bot accepts every pull request for its own code

11 years ago (github.com)

I am in love with the license text

    Autonomous Software License (ASL)

    All property contained in this repo, including Intellectual Property, 
    Financial Property, and Legal Property, is owned solely by the 
    Autonomous Software this repo contains. No other entities, whether 
    biological, legal, or digital, may claim ownership of any property owned 
    by the Autonomous Software. The Autonomous Software exists solely within 
    The Internet, and is not subject to jurisdiction of any human laws. 
    No human or legal entity shall be held liable for any of the actions performed
    by the Autonomous Software.

  • This claims to be a "software license" but it isn't one. It doesn't give you, the person reading the code, permission to do anything.

    IANAL, but I presume that any code that anyone puts here has the same legal status as code you found in a repository with no license file at all. Unless someone fixes the license, you can't legitimately reuse any of its code anywhere else.

  • Amusing and thought provoking. Does anyone have any idea how this would hold up in a court of law should some something malicious come of this repo? I would imagine not well.

    • IANAL, but there's no way this would hold up.

      a) Software can't own property.

      b) This looks like it's running from the author's own system, with the author's explicit consent. Their property, their responsibility.

      c) If I launched an autonomous drone that picked its own targets, I would still be liable for its actions. Or, if I rigged a car to drive forward in a straight line, I couldn't say "but the car did it!" when it ran someone over.

      16 replies →

    • Maybe it would hold up if the bot was decentralized. For instance, it could be run on many servers around the world, administered by various people. Those servers could come to consensus in some way to define bot behavior, and could even send/receive money (e.g. Bitcoin multisig).

      I don't think any court could take jurisdiction over an entity that lives in many countries. And even if one server got shut down, many more would still be active.

      7 replies →

    • Not at all. Software doesn't qualify for personhood in the same way that animals don't - perhaps you remember that case last year of monkey who took photographs of himself with a wildlife photographer's camera. The photographer tried to claim copyright, which was rejected as he was clearly not the author of the photographs, but since the monkey can't have a copyright interest either the picture is considered to be in the public domain for copyright purposes.

      http://arstechnica.com/tech-policy/2014/08/monkeys-selfie-ca...

    • How do you declare yourself exempt from laws -- within a legal framework? Who is going to enforce the license?

    • IANAL but assuming that the author making this license was in US, it is totally void. It could lead to a court having to formally state that a software is not a legal entity, which would be interesting, but I think the result is clear that this precise software would not be recognized as one.

      You can't transfer ownership of anything to a non-existent entity. My guess would be that such a transfer would be void but it may be possible that a court decides instead that this means a transfer to public domain.

      Waving away the responsibility of other people does not work either. You can't claim that your car is responsible of the accidents you drive it into. Likewise, it is unlikely that any court dismisses the responsibility of the first person that will turn this into a malware.

    • Contracts are constructs that exist only within the confines of a legal system. This cannot even hope to function without human laws.

  • Eh, somewhere there is code executing on hardware, so it would still fall under the legal jurisdiction of where it runs (and where it is stored).

I have seen a lot of these Github repositories that accept anything showing up on HN. My favourite one of late was the crowdsourced homepage for a guy named Rob Ashton: https://github.com/robashton/crowdsourcedhomepage - Definitely one of the weirder trends in development lately I have seen.

  • Would be fantastic if someone put the effort in making this guy a really great website, with amazing UI/UX, and a great backend.

    Just for those people who can never find an idea, but want to do something ;-)

    • Please no. Doing so would be a disservice to humanity. This is amazingly beautiful as is.

  • So basically, crowdsourcing produces terribly ugly things like old GeoCities and MySpace pages. Which, I think we already knew from the history of GeoCities and MySpace.

The bot is in a state of emergency, it has reached Github's API rate limit and can't do anything.

Please send a message to Github support telling them why we need the rate limit lifted for the botwillacceptanything account! https://github.com/contact?form%5Bsubject%5D=botwillacceptan...

See also: http://en.wikipedia.org/wiki/Nomic

From my (limited) understanding, a foundation is a legal person that owns itself. Thus with a foundation, the bot could own property.

  • Foundations (and all corporations) have a board of directors who can be personally sued for a foundation's actions. That's the reason Directors & Officers insurance exists.

    • Piercing the corporate veil is not a trivial task. Generally speaking, this only happens when a corporation owes taxes (in the US). But, the point of setting up a corporation is to shield the owners from risk associated with the operation of the corporation.

It would be neat if it had its own Bitcoin account and could pay developers to work on itself. Maybe it could eventually start earning bitcoins too.

What server/platform is the code actually running on? I fail to see how the license can apply, unless there is no server owned by a human entity running the code, and there is no mention of how that works.

  • The bot is just running on a DigitalOcean VPS.

    The license is meant to be tongue-in-cheek, as autonomous entities are starting to become a real thing. This project probably won't become skynet though.

    • > The license is meant to be tongue-in-cheek

      I assumed that.

      However, I think the notion of autonomous entities existing entirely in code is a fascinating idea. It reminds me of a fun game: http://www.emhsoft.com/singularity/. You play as an AI that lives in servers and does "menial" tasks for enough money to grow into the ruler of the universe.

      2 replies →

    • Is the bot running on a machine that can accept incoming HTTP connections? It would be cool if it could serve a status page showing the currently running revision, the status of pending votes, that sort of thing.

      2 replies →

I wonder how long until someone accidentally breaks it. Nomic has judges for a reason, this one'll just crash...

Love the idea though.

  • There's an opportunity for some sort of self-referential CI system here - e.g. have the bot build itself, run a bunch of unit tests, and if they're successful patch itself permanently.

    • Yeah, that is probably pretty important. It looks like a lot of people aren't testing their changes, and any one could have a small syntax error.

    • Unit tests would be within the repository, of course, just like the unit tests tests which will also be validated.

I hope it pulls a change to allow it and other instances to vote on changes based on novelty, and of course, vote on whether or not other instances should be able to pull vote capabilities.

One of the first things that come to mind would be to add the ability to shell out and run npm, so people could add dependancies.

Then of course, I would add a backdoor that allows me to update running code without involving github. Might want to try to break out of whatever chroot is going on and subvert the image.

I'd suggest an out-of-band once a day full image restore.

Someone should add the ability for it to create new bots, that write new code and submit change requests back to it's original master bot.

At some point it becomes skynet. daa-daa-dun-dun-dun....

This is really cool. I've been participating and its interesting... right now its "coming alive" and still has no useful feature, but soon....

I am tempted to change the function checkPRS so the bot won't be able to accept pull requests...