Release 0.1.1 [auto-version-bump]

This commit is contained in:
Gitea Actions
2026-10-20 11:26:37 +02:00
parent a85a49dfd5
commit d6da8e3b8f
6 changed files with 1997 additions and 13 deletions
Generated
+1978
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -3,7 +3,7 @@ members = ["crates/rule-engine"]
resolver = "2"
[workspace.package]
version = "0.1.0"
version = "0.1.1"
edition = "2024"
license = "MIT"
+3 -5
View File
@@ -129,8 +129,8 @@ impl LuauRuntime {
if effects.len() > MAX_EFFECTS {
return Err(RuleError::TooManyEffects);
}
let encoded = serde_json::to_vec(&effects)
.map_err(|error| RuleError::Sandbox(error.to_string()))?;
let encoded =
serde_json::to_vec(&effects).map_err(|error| RuleError::Sandbox(error.to_string()))?;
if encoded.len() > MAX_RESULT_BYTES {
return Err(RuleError::ResultTooLarge);
}
@@ -220,9 +220,7 @@ mod tests {
"return function() return {{ kind = 'advance_time', payload = 'not an object' }} end",
));
assert!(matches!(result.outcome, EvaluationOutcome::Rejected { .. }));
let result = evaluate_request(request(
"return function() return 'not an effect list' end",
));
let result = evaluate_request(request("return function() return 'not an effect list' end"));
assert!(matches!(result.outcome, EvaluationOutcome::Rejected { .. }));
}
+12 -4
View File
@@ -1,7 +1,7 @@
use ai_spel_rule_engine::{
CONTRACT_VERSION, EVALUATION_SUBJECT, EvaluationRequest, EvaluationResponse, evaluate_request,
};
use async_nats::{Client, ConnectOptions, Subscriber, Subject};
use async_nats::{Client, ConnectOptions, Subject, Subscriber};
use axum::{Router, extract::State, http::StatusCode, routing::get};
use futures_util::StreamExt;
use std::{env, sync::Arc, time::Duration};
@@ -131,13 +131,18 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
.with_state(health.clone());
let health_address = env::var("HEALTH_ADDR").unwrap_or_else(|_| "0.0.0.0:8080".into());
let health_listener = tokio::net::TcpListener::bind(health_address).await?;
tokio::spawn(async move { let _ = axum::serve(health_listener, health_router).await; });
tokio::spawn(async move {
let _ = axum::serve(health_listener, health_router).await;
});
let client = loop {
match connect_nats().await {
Ok(client) => break client,
Err(error) => {
eprintln!("{{\"level\":\"warn\",\"event\":\"nats.connect_retry\",\"error_category\":\"nats_connect\",\"detail\":{:?}}}", error.to_string());
eprintln!(
"{{\"level\":\"warn\",\"event\":\"nats.connect_retry\",\"error_category\":\"nats_connect\",\"detail\":{:?}}}",
error.to_string()
);
time::sleep(Duration::from_secs(2)).await;
}
}
@@ -166,6 +171,9 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
.and_then(|value| value.parse::<usize>().ok())
.filter(|value| (1..=32).contains(value))
.unwrap_or(8);
eprintln!("{{\"level\":\"info\",\"event\":\"rule_engine.ready\",\"contract_version\":{},\"max_concurrency\":{}}}", CONTRACT_VERSION, concurrency);
eprintln!(
"{{\"level\":\"info\",\"event\":\"rule_engine.ready\",\"contract_version\":{},\"max_concurrency\":{}}}",
CONTRACT_VERSION, concurrency
);
serve_rule_requests(client, subscriber, concurrency).await
}
+1 -1
View File
@@ -8,7 +8,7 @@ spec:
source:
repoURL: harbor.k3s.k0.nu/ai-spel
chart: ai-spel-rule-engine
targetRevision: "0.1.0"
targetRevision: "0.1.1"
helm:
releaseName: ai-spel-rule-engine
destination:
+2 -2
View File
@@ -2,5 +2,5 @@ apiVersion: v2
name: ai-spel-rule-engine
description: Isolated, sandboxed Luau proposal evaluator
type: application
version: 0.1.0
appVersion: "0.1.0"
version: 0.1.1
appVersion: "0.1.1"