Skip to content

Commit 3aaf159

Browse files
authored
Merge pull request #165 from obeli-sk/sync-flake-lock-20260408-094342
Sync `flake.lock` from upstream
2 parents fe9bea9 + b7677e0 commit 3aaf159

7 files changed

Lines changed: 369 additions & 36 deletions

File tree

dev-deps.txt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
1-
cargo-binstall 1.17.8
1+
cargo-binstall 1.17.9
22
cargo-edit-upgrade 0.13.9
33
cargo-expand 1.0.121
44
cargo generate 0.23.7
55
cargo-nextest 0.9.132
6-
just 1.47.1
7-
obelisk 0.36.1
6+
just 1.48.1
7+
obelisk 0.37.0
88
pkg-config 0.29.2
99
rustc 1.94.0 (4a4ef493e 2026-03-02)
1010
wasm-tools 1.245.1
11-
wasmtime 42.0.1
12-
node.js v22.22.1
11+
wasmtime 43.0.0
12+
node.js v22.22.2
1313
wizer 10.0.0
1414
tinygo version 0.40.1 linux/amd64 (using go version go1.25.7 and LLVM version 20.1.8)
1515
wit-bindgen-go-cli 0.7.0

flake.lock

Lines changed: 9 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

obelisk-oci.toml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[[activity_wasm]]
22
name = "activity_llm_openai"
3-
location = "oci://docker.io/getobelisk/demo_stargazers_activity_llm_openai:2026-04-05@sha256:26f073c064a5428e9e17fdaa9eba76794cf39ad79a69483f7b1fb5577e28f301"
3+
location = "oci://docker.io/getobelisk/demo_stargazers_activity_llm_openai:2026-04-08@sha256:52767bbc9d9748af971438e853edf8438e886994cefa1f6756cde7b4de347912"
44
exec.lock_expiry.seconds = 10
55
env_vars = [{key="OPENAI_API_BASE_URL", value="${OPENAI_API_BASE_URL:-https://api.openai.com}"}]
66
[[activity_wasm.allowed_host]]
@@ -12,7 +12,7 @@ replace_in = ["headers"]
1212

1313
[[activity_wasm]]
1414
name = "activity_github_impl"
15-
location = "oci://docker.io/getobelisk/demo_stargazers_activity_github_impl:2026-04-05@sha256:34fcf5fb952ed826edd63a6dc19cddac5c6dd92b34c302e1c8004cbc25444085"
15+
location = "oci://docker.io/getobelisk/demo_stargazers_activity_github_impl:2026-04-08@sha256:14df5892af6e701b864668e0d11c8db51c5ec4677037c8066a77b3f99a1cf26d"
1616
exec.lock_expiry.seconds = 5
1717
[[activity_wasm.allowed_host]]
1818
pattern = "https://api.github.com"
@@ -23,7 +23,7 @@ replace_in = ["headers"]
2323

2424
[[activity_wasm]]
2525
name = "activity_db_turso"
26-
location = "oci://docker.io/getobelisk/demo_stargazers_activity_db_turso:2026-04-05@sha256:21d69046eb152b6d70cc3b593a0ae31a82291936fa5c13e493ed01add54b55bf"
26+
location = "oci://docker.io/getobelisk/demo_stargazers_activity_db_turso:2026-04-08@sha256:6fafabb15c5468d7970acf0b66beec6e41bea26c96f6de148a32e00d14fdedad"
2727
env_vars = ["TURSO_LOCATION"]
2828
exec.lock_expiry.seconds = 5
2929
[[activity_wasm.allowed_host]]
@@ -35,12 +35,12 @@ replace_in = ["headers"]
3535

3636
[[workflow_wasm]]
3737
name = "workflow"
38-
location = "oci://docker.io/getobelisk/demo_stargazers_workflow:2026-04-05@sha256:59bc04945d3504b3caf1f8e167360f3c78689377607b76a4747a2db5aa5f89ca"
38+
location = "oci://docker.io/getobelisk/demo_stargazers_workflow:2026-04-08@sha256:78caee35dab856009460b012e69e3407edf9f50b4031909cb003f223f9039d8f"
3939
backtrace.sources = { "/home/runner/work/demo-stargazers/demo-stargazers/workflow/stargazers/workflow-rs/src/lib.rs" = "${DEPLOYMENT_DIR}/workflow/stargazers/workflow-rs/src/lib.rs" }
4040

4141
[[webhook_endpoint_wasm]]
4242
name = "webhook"
43-
location = "oci://docker.io/getobelisk/demo_stargazers_webhook:2026-04-05@sha256:9d357a89e927432b67cccb06c51bddae3def587a3569f176c7686c1a2d1332fe"
43+
location = "oci://docker.io/getobelisk/demo_stargazers_webhook:2026-04-08@sha256:a14e1a4946b467a73057717bcbd4a7879b2892b146b30c5d559d5e7ed952d130"
4444
routes = [{ methods = ["POST", "GET"], route = "" }]
4545
env_vars = [
4646
"GITHUB_WEBHOOK_SECRET",

scripts/push-components.sh

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,29 +6,35 @@ set -exuo pipefail
66
cd "$(dirname "$0")/.."
77

88
TAG="$1"
9-
TOML_FILE="obelisk-oci.toml"
10-
PREFIX="docker.io/getobelisk/demo_stargazers_"
9+
PREFIX="oci://docker.io/getobelisk/demo_stargazers_"
1110

12-
push() {
13-
COMPONENT_TYPE=$1
14-
RELATIVE_PATH=$2
11+
push_component() {
12+
local LOCAL_DEPLOYMENT_TOML="$1"
13+
local COMPONENT_NAME="$2"
1514

16-
FILE_NAME_WITHOUT_EXT=$(basename "$RELATIVE_PATH" | sed 's/\.[^.]*$//')
17-
OCI_LOCATION="${PREFIX}${FILE_NAME_WITHOUT_EXT}:${TAG}"
18-
echo "Pushing ${RELATIVE_PATH} to ${OCI_LOCATION}..."
19-
OUTPUT=$(obelisk component push "$RELATIVE_PATH" "$OCI_LOCATION")
15+
OCI_LOCATION="${PREFIX}${COMPONENT_NAME}:${TAG}"
16+
obelisk component push --deployment "$LOCAL_DEPLOYMENT_TOML" "$COMPONENT_NAME" "$OCI_LOCATION"
17+
}
18+
19+
push_and_update() {
20+
local LOCAL_DEPLOYMENT_TOML="$1"
21+
local COMPONENT_NAME="$2"
22+
shift 2
23+
DST_TOML_FILES=("$@")
24+
25+
OCI_LOCATION=$(push_component "$LOCAL_DEPLOYMENT_TOML" "$COMPONENT_NAME")
2026

21-
# Replace the old location with the actual OCI location
22-
obelisk component add ${COMPONENT_TYPE} ${OUTPUT} --name ${FILE_NAME_WITHOUT_EXT} --deployment $TOML_FILE
27+
for DST_TOML_FILE in "${DST_TOML_FILES[@]}"; do
28+
obelisk component add --deployment "$DST_TOML_FILE" "$OCI_LOCATION" "$COMPONENT_NAME"
29+
done
2330
}
2431

25-
# Rebuild rust components
2632
just rust
2733

28-
push activity_wasm "target/wasm32-wasip2/release/activity_llm_openai.wasm"
29-
push activity_wasm "target/wasm32-wasip2/release/activity_github_impl.wasm"
30-
push activity_wasm "target/wasm32-wasip2/release/activity_db_turso.wasm"
31-
push workflow_wasm "target/wasm32-unknown-unknown/release/workflow.wasm"
32-
push webhook_endpoint_wasm "target/wasm32-wasip2/release/webhook.wasm"
34+
push_and_update obelisk-local.toml activity_llm_openai obelisk-oci.toml
35+
push_and_update obelisk-local.toml activity_github_impl obelisk-oci.toml
36+
push_and_update obelisk-local.toml activity_db_turso obelisk-oci.toml
37+
push_and_update obelisk-local.toml workflow obelisk-oci.toml
38+
push_and_update obelisk-local.toml webhook obelisk-oci.toml
3339

3440
echo "All components pushed and TOML file updated successfully."
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
package obelisk:webhook@5.1.0;
2+
3+
@since(version = 5.0.0)
4+
interface webhook-support {
5+
use obelisk:types/time@4.2.0.{schedule-at, datetime};
6+
use obelisk:types/execution@4.2.0.{execution-id, function, submit-config, schedule-json-error};
7+
use obelisk:types/backtrace@4.2.0.{wasm-backtrace};
8+
9+
/// Error variants that may occur when calling `get-status`.
10+
@since(version = 5.0.0)
11+
variant get-status-error {
12+
/// Cannot parse the execution ID.
13+
execution-id-parsing-error(string),
14+
/// The execution was not found.
15+
not-found,
16+
}
17+
18+
/// Error variants that may occur when calling `get`.
19+
@since(version = 5.0.0)
20+
variant get-error {
21+
/// Cannot parse the execution ID.
22+
execution-id-parsing-error(string),
23+
/// The execution was not found.
24+
not-found,
25+
}
26+
27+
/// Error variants that may occur when calling `try-get`.
28+
@since(version = 5.0.0)
29+
variant try-get-error {
30+
/// Cannot parse the execution ID.
31+
execution-id-parsing-error(string),
32+
/// The execution was not found.
33+
not-found,
34+
/// The execution has not finished yet.
35+
not-finished-yet,
36+
}
37+
38+
/// The status of an execution.
39+
@since(version = 5.0.0)
40+
variant execution-status {
41+
/// Execution is scheduled to run at a specific time.
42+
pending-at(datetime),
43+
/// Execution is currently being processed.
44+
locked,
45+
/// Execution is currently paused.
46+
paused,
47+
/// Execution is waiting for child executions to complete (workflows only).
48+
blocked-by-join-set,
49+
/// Execution has finished.
50+
finished(execution-status-finished),
51+
}
52+
53+
/// The finished status of an execution.
54+
@since(version = 5.0.0)
55+
variant execution-status-finished {
56+
/// Execution has finished with a successful result.
57+
ok,
58+
/// Execution has finished with an error result (user-level error).
59+
err,
60+
/// Execution has terminated due to an execution failure (system-level error).
61+
execution-failure,
62+
}
63+
64+
/// Generate a new top-level execution ID.
65+
@since(version = 5.0.0)
66+
execution-id-generate: func() -> execution-id;
67+
68+
/// Get the execution ID of the current webhook handler invocation.
69+
/// Returns the ID assigned to this webhook execution by the engine.
70+
@since(version = 5.1.0)
71+
current-execution-id: func() -> execution-id;
72+
/// Call a function and wait for the result.
73+
/// Creates a child execution, waits for it to complete, and returns the result.
74+
/// Parameters are serialized as a JSON array.
75+
/// Returns Ok(Some(json)) for successful result with value,
76+
/// Ok(None) for successful result with no value,
77+
/// Err(Some(json)) for error result with value,
78+
/// Err(None) for error result with no value.
79+
@since(version = 5.0.0)
80+
call-json: func(function: function, params: string, config: option<submit-config>, backtrace: option<wasm-backtrace>) -> result<result<option<string>, option<string>>, schedule-json-error>;
81+
82+
/// Schedule a new top-level execution with its parameters serialized as JSON array.
83+
/// Use the execution ID returned by `execution-id-generate`.
84+
@since(version = 5.0.0)
85+
schedule-json: func(execution-id: execution-id, schedule-at: schedule-at, function: function, params: string, config: option<submit-config>, backtrace: option<wasm-backtrace>) -> result<_, schedule-json-error>;
86+
87+
/// Get the current status of an execution.
88+
@since(version = 5.0.0)
89+
get-status: func(execution-id: execution-id, backtrace: option<wasm-backtrace>) -> result<execution-status, get-status-error>;
90+
91+
/// Get the result of an execution, blocking until it finishes.
92+
/// Returns Ok(Some(json)) for successful result with value,
93+
/// Ok(None) for successful result with no value,
94+
/// Err(Some(json)) for error result with value,
95+
/// Err(None) for error result with no value.
96+
/// Outer result indicates lookup success/failure.
97+
@since(version = 5.0.0)
98+
get: func(execution-id: execution-id, backtrace: option<wasm-backtrace>) -> result<result<option<string>, option<string>>, get-error>;
99+
100+
/// Try to get the result of an execution without blocking.
101+
/// Returns immediately if the execution has finished, or `not-finished-yet` error otherwise.
102+
/// Returns Ok(Some(json)) for successful result with value,
103+
/// Ok(None) for successful result with no value,
104+
/// Err(Some(json)) for error result with value,
105+
/// Err(None) for error result with no value.
106+
/// Outer result indicates lookup success/failure.
107+
@since(version = 5.0.0)
108+
try-get: func(execution-id: execution-id, backtrace: option<wasm-backtrace>) -> result<result<option<string>, option<string>>, try-get-error>;
109+
}
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
package obelisk:webhook@5.1.0;
2+
3+
@since(version = 5.0.0)
4+
interface webhook-support {
5+
use obelisk:types/time@4.2.0.{schedule-at, datetime};
6+
use obelisk:types/execution@4.2.0.{execution-id, function, submit-config, schedule-json-error};
7+
use obelisk:types/backtrace@4.2.0.{wasm-backtrace};
8+
9+
/// Error variants that may occur when calling `get-status`.
10+
@since(version = 5.0.0)
11+
variant get-status-error {
12+
/// Cannot parse the execution ID.
13+
execution-id-parsing-error(string),
14+
/// The execution was not found.
15+
not-found,
16+
}
17+
18+
/// Error variants that may occur when calling `get`.
19+
@since(version = 5.0.0)
20+
variant get-error {
21+
/// Cannot parse the execution ID.
22+
execution-id-parsing-error(string),
23+
/// The execution was not found.
24+
not-found,
25+
}
26+
27+
/// Error variants that may occur when calling `try-get`.
28+
@since(version = 5.0.0)
29+
variant try-get-error {
30+
/// Cannot parse the execution ID.
31+
execution-id-parsing-error(string),
32+
/// The execution was not found.
33+
not-found,
34+
/// The execution has not finished yet.
35+
not-finished-yet,
36+
}
37+
38+
/// The status of an execution.
39+
@since(version = 5.0.0)
40+
variant execution-status {
41+
/// Execution is scheduled to run at a specific time.
42+
pending-at(datetime),
43+
/// Execution is currently being processed.
44+
locked,
45+
/// Execution is currently paused.
46+
paused,
47+
/// Execution is waiting for child executions to complete (workflows only).
48+
blocked-by-join-set,
49+
/// Execution has finished.
50+
finished(execution-status-finished),
51+
}
52+
53+
/// The finished status of an execution.
54+
@since(version = 5.0.0)
55+
variant execution-status-finished {
56+
/// Execution has finished with a successful result.
57+
ok,
58+
/// Execution has finished with an error result (user-level error).
59+
err,
60+
/// Execution has terminated due to an execution failure (system-level error).
61+
execution-failure,
62+
}
63+
64+
/// Generate a new top-level execution ID.
65+
@since(version = 5.0.0)
66+
execution-id-generate: func() -> execution-id;
67+
68+
/// Get the execution ID of the current webhook handler invocation.
69+
/// Returns the ID assigned to this webhook execution by the engine.
70+
@since(version = 5.1.0)
71+
current-execution-id: func() -> execution-id;
72+
/// Call a function and wait for the result.
73+
/// Creates a child execution, waits for it to complete, and returns the result.
74+
/// Parameters are serialized as a JSON array.
75+
/// Returns Ok(Some(json)) for successful result with value,
76+
/// Ok(None) for successful result with no value,
77+
/// Err(Some(json)) for error result with value,
78+
/// Err(None) for error result with no value.
79+
@since(version = 5.0.0)
80+
call-json: func(function: function, params: string, config: option<submit-config>, backtrace: option<wasm-backtrace>) -> result<result<option<string>, option<string>>, schedule-json-error>;
81+
82+
/// Schedule a new top-level execution with its parameters serialized as JSON array.
83+
/// Use the execution ID returned by `execution-id-generate`.
84+
@since(version = 5.0.0)
85+
schedule-json: func(execution-id: execution-id, schedule-at: schedule-at, function: function, params: string, config: option<submit-config>, backtrace: option<wasm-backtrace>) -> result<_, schedule-json-error>;
86+
87+
/// Get the current status of an execution.
88+
@since(version = 5.0.0)
89+
get-status: func(execution-id: execution-id, backtrace: option<wasm-backtrace>) -> result<execution-status, get-status-error>;
90+
91+
/// Get the result of an execution, blocking until it finishes.
92+
/// Returns Ok(Some(json)) for successful result with value,
93+
/// Ok(None) for successful result with no value,
94+
/// Err(Some(json)) for error result with value,
95+
/// Err(None) for error result with no value.
96+
/// Outer result indicates lookup success/failure.
97+
@since(version = 5.0.0)
98+
get: func(execution-id: execution-id, backtrace: option<wasm-backtrace>) -> result<result<option<string>, option<string>>, get-error>;
99+
100+
/// Try to get the result of an execution without blocking.
101+
/// Returns immediately if the execution has finished, or `not-finished-yet` error otherwise.
102+
/// Returns Ok(Some(json)) for successful result with value,
103+
/// Ok(None) for successful result with no value,
104+
/// Err(Some(json)) for error result with value,
105+
/// Err(None) for error result with no value.
106+
/// Outer result indicates lookup success/failure.
107+
@since(version = 5.0.0)
108+
try-get: func(execution-id: execution-id, backtrace: option<wasm-backtrace>) -> result<result<option<string>, option<string>>, try-get-error>;
109+
}

0 commit comments

Comments
 (0)