bass loop

Runs

JSON

{"args":[{"thunkPath":{"thunk":{"image":{"thunk":{"image":{"thunk":{"image":{"thunk":{"image":{"thunk":{"image":{"ref":{"platform":{"os":"linux","arch":"amd64"},"repository":"alpine/git","tag":"latest","digest":"sha256:66b210a97bc07bfd4019826bcd13a488b371a6cbe2630a4b37d23275658bd3f2"}}}},"args":[{"string":{"value":"git"}},{"string":{"value":"clone"}},{"string":{"value":"https://github.com/Grey0520/openai-proxy.git"}},{"dirPath":{"path":"."}}]}},"args":[{"string":{"value":"git"}},{"string":{"value":"fetch"}},{"string":{"value":"origin"}},{"string":{"value":"d2e8b78e5fe3104651e073ff1e7c0442f1a41e44"}}]}},"args":[{"string":{"value":"git"}},{"string":{"value":"checkout"}},{"string":{"value":"d2e8b78e5fe3104651e073ff1e7c0442f1a41e44"}}]}},"args":[{"string":{"value":"git"}},{"string":{"value":"submodule"}},{"string":{"value":"update"}},{"string":{"value":"--init"}},{"string":{"value":"--recursive"}}]},"path":{"file":{"path":"bass/github-hook"}}}}],"stdin":[{"object":{"bindings":[{"symbol":"event","value":{"string":{"value":"check_suite"}}},{"symbol":"payload","value":{"object":{"bindings":[{"symbol":"action","value":{"string":{"value":"requested"}}},{"symbol":"check_suite","value":{"object":{"bindings":[{"symbol":"id","value":{"int":{"value":"19419755640"}}},{"symbol":"node_id","value":{"string":{"value":"CS_kwDOK1GDyM8AAAAEhYH0eA"}}},{"symbol":"head_branch","value":{"string":{"value":"dependabot/npm_and_yarn/types/node-20.10.6"}}},{"symbol":"head_sha","value":{"string":{"value":"d2e8b78e5fe3104651e073ff1e7c0442f1a41e44"}}},{"symbol":"status","value":{"string":{"value":"queued"}}},{"symbol":"conclusion","value":{"null":{}}},{"symbol":"url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/check-suites/19419755640"}}},{"symbol":"before","value":{"string":{"value":"0000000000000000000000000000000000000000"}}},{"symbol":"after","value":{"string":{"value":"d2e8b78e5fe3104651e073ff1e7c0442f1a41e44"}}},{"symbol":"pull_requests","value":{"array":{"values":[{"object":{"bindings":[{"symbol":"url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/pulls/16"}}},{"symbol":"id","value":{"int":{"value":"1660721813"}}},{"symbol":"number","value":{"int":{"value":"16"}}},{"symbol":"head","value":{"object":{"bindings":[{"symbol":"ref","value":{"string":{"value":"dependabot/npm_and_yarn/types/node-20.10.6"}}},{"symbol":"sha","value":{"string":{"value":"d2e8b78e5fe3104651e073ff1e7c0442f1a41e44"}}},{"symbol":"repo","value":{"object":{"bindings":[{"symbol":"id","value":{"int":{"value":"726762440"}}},{"symbol":"url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy"}}},{"symbol":"name","value":{"string":{"value":"openai-proxy"}}}]}}}]}}},{"symbol":"base","value":{"object":{"bindings":[{"symbol":"ref","value":{"string":{"value":"main"}}},{"symbol":"sha","value":{"string":{"value":"55c187bd99a68c876ba6f7af92feb3b14293e994"}}},{"symbol":"repo","value":{"object":{"bindings":[{"symbol":"id","value":{"int":{"value":"726762440"}}},{"symbol":"url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy"}}},{"symbol":"name","value":{"string":{"value":"openai-proxy"}}}]}}}]}}}]}}]}}},{"symbol":"app","value":{"object":{"bindings":[{"symbol":"id","value":{"int":{"value":"196335"}}},{"symbol":"slug","value":{"string":{"value":"bass-ci"}}},{"symbol":"node_id","value":{"string":{"value":"A_kwDNB1jOAAL-7w"}}},{"symbol":"owner","value":{"object":{"bindings":[{"symbol":"login","value":{"string":{"value":"vito"}}},{"symbol":"id","value":{"int":{"value":"1880"}}},{"symbol":"node_id","value":{"string":{"value":"MDQ6VXNlcjE4ODA="}}},{"symbol":"avatar_url","value":{"string":{"value":"https://avatars.githubusercontent.com/u/1880?v=4"}}},{"symbol":"gravatar_id","value":{"string":{}}},{"symbol":"url","value":{"string":{"value":"https://api.github.com/users/vito"}}},{"symbol":"html_url","value":{"string":{"value":"https://github.com/vito"}}},{"symbol":"followers_url","value":{"string":{"value":"https://api.github.com/users/vito/followers"}}},{"symbol":"following_url","value":{"string":{"value":"https://api.github.com/users/vito/following{/other_user}"}}},{"symbol":"gists_url","value":{"string":{"value":"https://api.github.com/users/vito/gists{/gist_id}"}}},{"symbol":"starred_url","value":{"string":{"value":"https://api.github.com/users/vito/starred{/owner}{/repo}"}}},{"symbol":"subscriptions_url","value":{"string":{"value":"https://api.github.com/users/vito/subscriptions"}}},{"symbol":"organizations_url","value":{"string":{"value":"https://api.github.com/users/vito/orgs"}}},{"symbol":"repos_url","value":{"string":{"value":"https://api.github.com/users/vito/repos"}}},{"symbol":"events_url","value":{"string":{"value":"https://api.github.com/users/vito/events{/privacy}"}}},{"symbol":"received_events_url","value":{"string":{"value":"https://api.github.com/users/vito/received_events"}}},{"symbol":"type","value":{"string":{"value":"User"}}},{"symbol":"site_admin","value":{"bool":{}}}]}}},{"symbol":"name","value":{"string":{"value":"Bass CI"}}},{"symbol":"description","value":{"string":{"value":"A GitHub App for forwarding GitHub webhook events to Bass scripts.\r\n\r\n**This app is experimental and the usage below will most likely change in the future.**\r\n\r\n## Usage\r\n\r\n1. Create a script called `bass/github-hook` in the root of your repo.\r\n1. The event payload will be passed to the script on `*stdin*`.\r\n\r\n    ```clojure\r\n    (defn main []\r\n      (for [{:event event :payload payload} *stdin*]\r\n        (log \"handling event\" :event event :payload (keys payload)))\r\n    ```\r\n1. A special `*loop*` binding is set to a GitHub client module, used for running checks. Call it like so:\r\n\r\n    ```clojure\r\n    (*loop*:start-check thunk \"check-name\" sha)\r\n    ```\r\n\r\nThat's it! This app is a glorified GitHub webhook event dispatcher; it's up to your repository to decide how it wants to handle the events.\r\n\r\n### Running checks\r\n\r\nFor the common case of running checks, you can use the [github.bass helper](https://github.com/vito/bass-loop/blob/main/bass/github.bass):\r\n\r\n```clojure\r\n(use (.git (linux/alpine/git))\r\n     (git:github/vito/bass-loop/ref/main/bass/github.bass))\r\n\r\n; a set of validations to run against a checkout of the repo\r\n(defn checks [src]\r\n  {:tests (tests src)})\r\n\r\n; called by bass-loop\r\n(defn main []\r\n  (for [event *stdin*]\r\n    (github:check-hook event git:checkout checks)))\r\n```"}}},{"symbol":"external_url","value":{"string":{"value":"https://loop.bass-lang.org"}}},{"symbol":"html_url","value":{"string":{"value":"https://github.com/apps/bass-ci"}}},{"symbol":"created_at","value":{"string":{"value":"2022-04-30T23:47:31Z"}}},{"symbol":"updated_at","value":{"string":{"value":"2022-07-05T00:26:14Z"}}},{"symbol":"permissions","value":{"object":{"bindings":[{"symbol":"checks","value":{"string":{"value":"write"}}},{"symbol":"contents","value":{"string":{"value":"read"}}},{"symbol":"metadata","value":{"string":{"value":"read"}}},{"symbol":"pull_requests","value":{"string":{"value":"read"}}}]}}},{"symbol":"events","value":{"array":{"values":[{"string":{"value":"pull_request"}},{"string":{"value":"push"}},{"string":{"value":"release"}}]}}}]}}},{"symbol":"created_at","value":{"string":{"value":"2023-12-31T19:45:05Z"}}},{"symbol":"updated_at","value":{"string":{"value":"2023-12-31T19:45:05Z"}}},{"symbol":"rerequestable","value":{"bool":{"value":true}}},{"symbol":"runs_rerequestable","value":{"bool":{"value":true}}},{"symbol":"latest_check_runs_count","value":{"int":{}}},{"symbol":"check_runs_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/check-suites/19419755640/check-runs"}}},{"symbol":"head_commit","value":{"object":{"bindings":[{"symbol":"id","value":{"string":{"value":"d2e8b78e5fe3104651e073ff1e7c0442f1a41e44"}}},{"symbol":"tree_id","value":{"string":{"value":"633aba609add021b0df7875d97887758b4146184"}}},{"symbol":"message","value":{"string":{"value":"Bump @types/node from 20.5.7 to 20.10.6\n\nBumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 20.5.7 to 20.10.6.\n- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)\n- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)\n\n---\nupdated-dependencies:\n- dependency-name: \"@types/node\"\n  dependency-type: direct:development\n  update-type: version-update:semver-minor\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>"}}},{"symbol":"timestamp","value":{"string":{"value":"2023-12-31T19:45:04Z"}}},{"symbol":"author","value":{"object":{"bindings":[{"symbol":"name","value":{"string":{"value":"dependabot[bot]"}}},{"symbol":"email","value":{"string":{"value":"49699333+dependabot[bot]@users.noreply.github.com"}}}]}}},{"symbol":"committer","value":{"object":{"bindings":[{"symbol":"name","value":{"string":{"value":"GitHub"}}},{"symbol":"email","value":{"string":{"value":"noreply@github.com"}}}]}}}]}}}]}}},{"symbol":"repository","value":{"object":{"bindings":[{"symbol":"id","value":{"int":{"value":"726762440"}}},{"symbol":"node_id","value":{"string":{"value":"R_kgDOK1GDyA"}}},{"symbol":"name","value":{"string":{"value":"openai-proxy"}}},{"symbol":"full_name","value":{"string":{"value":"Grey0520/openai-proxy"}}},{"symbol":"private","value":{"bool":{"value":true}}},{"symbol":"owner","value":{"object":{"bindings":[{"symbol":"login","value":{"string":{"value":"Grey0520"}}},{"symbol":"id","value":{"int":{"value":"70519059"}}},{"symbol":"node_id","value":{"string":{"value":"MDQ6VXNlcjcwNTE5MDU5"}}},{"symbol":"avatar_url","value":{"string":{"value":"https://avatars.githubusercontent.com/u/70519059?v=4"}}},{"symbol":"gravatar_id","value":{"string":{}}},{"symbol":"url","value":{"string":{"value":"https://api.github.com/users/Grey0520"}}},{"symbol":"html_url","value":{"string":{"value":"https://github.com/Grey0520"}}},{"symbol":"followers_url","value":{"string":{"value":"https://api.github.com/users/Grey0520/followers"}}},{"symbol":"following_url","value":{"string":{"value":"https://api.github.com/users/Grey0520/following{/other_user}"}}},{"symbol":"gists_url","value":{"string":{"value":"https://api.github.com/users/Grey0520/gists{/gist_id}"}}},{"symbol":"starred_url","value":{"string":{"value":"https://api.github.com/users/Grey0520/starred{/owner}{/repo}"}}},{"symbol":"subscriptions_url","value":{"string":{"value":"https://api.github.com/users/Grey0520/subscriptions"}}},{"symbol":"organizations_url","value":{"string":{"value":"https://api.github.com/users/Grey0520/orgs"}}},{"symbol":"repos_url","value":{"string":{"value":"https://api.github.com/users/Grey0520/repos"}}},{"symbol":"events_url","value":{"string":{"value":"https://api.github.com/users/Grey0520/events{/privacy}"}}},{"symbol":"received_events_url","value":{"string":{"value":"https://api.github.com/users/Grey0520/received_events"}}},{"symbol":"type","value":{"string":{"value":"User"}}},{"symbol":"site_admin","value":{"bool":{}}}]}}},{"symbol":"html_url","value":{"string":{"value":"https://github.com/Grey0520/openai-proxy"}}},{"symbol":"description","value":{"null":{}}},{"symbol":"fork","value":{"bool":{}}},{"symbol":"url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy"}}},{"symbol":"forks_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/forks"}}},{"symbol":"keys_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/keys{/key_id}"}}},{"symbol":"collaborators_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/collaborators{/collaborator}"}}},{"symbol":"teams_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/teams"}}},{"symbol":"hooks_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/hooks"}}},{"symbol":"issue_events_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/issues/events{/number}"}}},{"symbol":"events_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/events"}}},{"symbol":"assignees_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/assignees{/user}"}}},{"symbol":"branches_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/branches{/branch}"}}},{"symbol":"tags_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/tags"}}},{"symbol":"blobs_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/git/blobs{/sha}"}}},{"symbol":"git_tags_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/git/tags{/sha}"}}},{"symbol":"git_refs_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/git/refs{/sha}"}}},{"symbol":"trees_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/git/trees{/sha}"}}},{"symbol":"statuses_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/statuses/{sha}"}}},{"symbol":"languages_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/languages"}}},{"symbol":"stargazers_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/stargazers"}}},{"symbol":"contributors_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/contributors"}}},{"symbol":"subscribers_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/subscribers"}}},{"symbol":"subscription_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/subscription"}}},{"symbol":"commits_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/commits{/sha}"}}},{"symbol":"git_commits_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/git/commits{/sha}"}}},{"symbol":"comments_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/comments{/number}"}}},{"symbol":"issue_comment_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/issues/comments{/number}"}}},{"symbol":"contents_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/contents/{+path}"}}},{"symbol":"compare_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/compare/{base}...{head}"}}},{"symbol":"merges_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/merges"}}},{"symbol":"archive_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/{archive_format}{/ref}"}}},{"symbol":"downloads_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/downloads"}}},{"symbol":"issues_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/issues{/number}"}}},{"symbol":"pulls_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/pulls{/number}"}}},{"symbol":"milestones_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/milestones{/number}"}}},{"symbol":"notifications_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/notifications{?since,all,participating}"}}},{"symbol":"labels_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/labels{/name}"}}},{"symbol":"releases_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/releases{/id}"}}},{"symbol":"deployments_url","value":{"string":{"value":"https://api.github.com/repos/Grey0520/openai-proxy/deployments"}}},{"symbol":"created_at","value":{"string":{"value":"2023-12-03T10:26:56Z"}}},{"symbol":"updated_at","value":{"string":{"value":"2023-12-03T10:27:59Z"}}},{"symbol":"pushed_at","value":{"string":{"value":"2023-12-31T19:45:05Z"}}},{"symbol":"git_url","value":{"string":{"value":"git://github.com/Grey0520/openai-proxy.git"}}},{"symbol":"ssh_url","value":{"string":{"value":"git@github.com:Grey0520/openai-proxy.git"}}},{"symbol":"clone_url","value":{"string":{"value":"https://github.com/Grey0520/openai-proxy.git"}}},{"symbol":"svn_url","value":{"string":{"value":"https://github.com/Grey0520/openai-proxy"}}},{"symbol":"homepage","value":{"string":{"value":"https://openai-proxy-grey0520.vercel.app"}}},{"symbol":"size","value":{"int":{"value":"1405"}}},{"symbol":"stargazers_count","value":{"int":{}}},{"symbol":"watchers_count","value":{"int":{}}},{"symbol":"language","value":{"string":{"value":"TypeScript"}}},{"symbol":"has_issues","value":{"bool":{"value":true}}},{"symbol":"has_projects","value":{"bool":{"value":true}}},{"symbol":"has_downloads","value":{"bool":{"value":true}}},{"symbol":"has_wiki","value":{"bool":{"value":true}}},{"symbol":"has_pages","value":{"bool":{}}},{"symbol":"has_discussions","value":{"bool":{}}},{"symbol":"forks_count","value":{"int":{}}},{"symbol":"mirror_url","value":{"null":{}}},{"symbol":"archived","value":{"bool":{}}},{"symbol":"disabled","value":{"bool":{}}},{"symbol":"open_issues_count","value":{"int":{"value":"7"}}},{"symbol":"license","value":{"object":{"bindings":[{"symbol":"key","value":{"string":{"value":"mit"}}},{"symbol":"name","value":{"string":{"value":"MIT License"}}},{"symbol":"spdx_id","value":{"string":{"value":"MIT"}}},{"symbol":"url","value":{"string":{"value":"https://api.github.com/licenses/mit"}}},{"symbol":"node_id","value":{"string":{"value":"MDc6TGljZW5zZTEz"}}}]}}},{"symbol":"allow_forking","value":{"bool":{"value":true}}},{"symbol":"is_template","value":{"bool":{}}},{"symbol":"web_commit_signoff_required","value":{"bool":{}}},{"symbol":"topics","value":{"array":{}}},{"symbol":"visibility","value":{"string":{"value":"private"}}},{"symbol":"forks","value":{"int":{}}},{"symbol":"open_issues","value":{"int":{"value":"7"}}},{"symbol":"watchers","value":{"int":{}}},{"symbol":"default_branch","value":{"string":{"value":"main"}}}]}}},{"symbol":"sender","value":{"object":{"bindings":[{"symbol":"login","value":{"string":{"value":"dependabot[bot]"}}},{"symbol":"id","value":{"int":{"value":"49699333"}}},{"symbol":"node_id","value":{"string":{"value":"MDM6Qm90NDk2OTkzMzM="}}},{"symbol":"avatar_url","value":{"string":{"value":"https://avatars.githubusercontent.com/in/29110?v=4"}}},{"symbol":"gravatar_id","value":{"string":{}}},{"symbol":"url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D"}}},{"symbol":"html_url","value":{"string":{"value":"https://github.com/apps/dependabot"}}},{"symbol":"followers_url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D/followers"}}},{"symbol":"following_url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D/following{/other_user}"}}},{"symbol":"gists_url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D/gists{/gist_id}"}}},{"symbol":"starred_url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D/starred{/owner}{/repo}"}}},{"symbol":"subscriptions_url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D/subscriptions"}}},{"symbol":"organizations_url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D/orgs"}}},{"symbol":"repos_url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D/repos"}}},{"symbol":"events_url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D/events{/privacy}"}}},{"symbol":"received_events_url","value":{"string":{"value":"https://api.github.com/users/dependabot%5Bbot%5D/received_events"}}},{"symbol":"type","value":{"string":{"value":"Bot"}}},{"symbol":"site_admin","value":{"bool":{}}}]}}},{"symbol":"installation","value":{"object":{"bindings":[{"symbol":"id","value":{"int":{"value":"29587902"}}},{"symbol":"node_id","value":{"string":{"value":"MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMjk1ODc5MDI="}}}]}}}]}}}]}}]}