chore: версия 0.38.0 единая + warning-fixes + mold для release-job
Some checks are pending
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / preflight (push) Waiting to run
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / vps-smoke (push) Waiting to run
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:frustration-matrix,kei-frustration-loop,kei-skill-importer,kei-projects-index,kei-projects-watcher,kei-gdrive-import,kei-leak-matrix,kei-skills,kei-gateway,kei-cron-scheduler,kei-export-trajectories,kei-backend-daytona,kei-d… (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-compute-baremetal,kei-compute-vultr,kei-compute-linode,kei-compute-digitalocean,kei-svc-systemd,kei-llm-bridge-mlx name:hosted-sleep-compute]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-diff,kei-scheduler,kei-watch,kei-prune,kei-discover,kei-brain-view,kei-hibernate,kei-ledger-sign,kei-fork name:wave13-15]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-git-gitea,kei-git-forgejo,kei-git-gitlab,kei-git-bitbucket,kei-memory-sled,kei-memory-redis,kei-memory-postgres,kei-memory-sqlite,kei-auth-google,kei-auth-apple,kei-auth-magiclink,kei-auth-webauthn,kei-notify-slack,kei-n… (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-ledger,kei-migrate,kei-changelog,kei-memory,kei-store,kei-conflict-scan,kei-refactor-engine,kei-graph-check,kei-shared,kei-dna-index,kei-pet name:core]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-machine-probe,kei-llm-ollama,kei-llm-llamacpp,kei-llm-mlx,kei-llm-router,kei-model name:llm-stack]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-router,kei-sage,kei-task,kei-chat-store,kei-crossdomain,kei-search-core,kei-content-store,kei-social-store,kei-curator,kei-auth,kei-artifact name:mcp-lbm]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:keisei,kei-forge,kei-runtime,kei-runtime-core,kei-atom-discovery,kei-agent-runtime,kei-capability,kei-provision,kei-entity-store,kei-pipe,kei-cache,kei-spawn,kei-replay name:atom-substrate]) (push) Blocked by required conditions
Some checks are pending
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / preflight (push) Waiting to run
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / vps-smoke (push) Waiting to run
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:frustration-matrix,kei-frustration-loop,kei-skill-importer,kei-projects-index,kei-projects-watcher,kei-gdrive-import,kei-leak-matrix,kei-skills,kei-gateway,kei-cron-scheduler,kei-export-trajectories,kei-backend-daytona,kei-d… (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-compute-baremetal,kei-compute-vultr,kei-compute-linode,kei-compute-digitalocean,kei-svc-systemd,kei-llm-bridge-mlx name:hosted-sleep-compute]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-diff,kei-scheduler,kei-watch,kei-prune,kei-discover,kei-brain-view,kei-hibernate,kei-ledger-sign,kei-fork name:wave13-15]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-git-gitea,kei-git-forgejo,kei-git-gitlab,kei-git-bitbucket,kei-memory-sled,kei-memory-redis,kei-memory-postgres,kei-memory-sqlite,kei-auth-google,kei-auth-apple,kei-auth-magiclink,kei-auth-webauthn,kei-notify-slack,kei-n… (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-ledger,kei-migrate,kei-changelog,kei-memory,kei-store,kei-conflict-scan,kei-refactor-engine,kei-graph-check,kei-shared,kei-dna-index,kei-pet name:core]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-machine-probe,kei-llm-ollama,kei-llm-llamacpp,kei-llm-mlx,kei-llm-router,kei-model name:llm-stack]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:kei-router,kei-sage,kei-task,kei-chat-store,kei-crossdomain,kei-search-core,kei-content-store,kei-social-store,kei-curator,kei-auth,kei-artifact name:mcp-lbm]) (push) Blocked by required conditions
CI (Forgejo Actions — self-hosted runner on Mac, host mode) / rust-primitives (map[crates:keisei,kei-forge,kei-runtime,kei-runtime-core,kei-atom-discovery,kei-agent-runtime,kei-capability,kei-provision,kei-entity-store,kei-pipe,kei-cache,kei-spawn,kei-replay name:atom-substrate]) (push) Blocked by required conditions
1. Версии npm-пакетов приведены к 0.38.0 (был зоопарк 0.14.0/0.14.6):
_ts_packages/{,packages/{gmail,grok,mcp-server,recall,telegram,youtube}-adapter}
2. Rust warnings (cargo check workspace):
- kei-cortex: deprecated validate_path → validate_path_lexical,
удалён orphan-wrapper в read.rs, struct Input → pub(crate)
- frustration-matrix: #[allow(dead_code)] на confusion_* поля
EvalReport + train_from_dir (будущий CLI)
3. CI release.yml job 'release' падал на Build kei-changelog:
clang invalid linker '-fuse-ld=mold' — в .cargo/config.toml
жёстко прописан mold для linux. Добавлен Install mold шаг
(как уже сделано в build-release matrix).
This commit is contained in:
parent
d1cbdd8892
commit
fc0758d2bb
13 changed files with 23 additions and 19 deletions
9
.github/workflows/release.yml
vendored
9
.github/workflows/release.yml
vendored
|
|
@ -199,6 +199,15 @@ jobs:
|
||||||
- name: Install Rust toolchain
|
- name: Install Rust toolchain
|
||||||
uses: dtolnay/rust-toolchain@stable # exception to SHA-pin: named-branch convention (validator V-2026-04-22)
|
uses: dtolnay/rust-toolchain@stable # exception to SHA-pin: named-branch convention (validator V-2026-04-22)
|
||||||
|
|
||||||
|
# _primitives/_rust/.cargo/config.toml жёстко прописывает `-fuse-ld=mold`
|
||||||
|
# для linux targets — без этой установки `cargo build` падает с
|
||||||
|
# `clang: error: invalid linker name in argument '-fuse-ld=mold'`.
|
||||||
|
# CI run 26014724470 fix.
|
||||||
|
- name: Install mold linker (для linux target в .cargo/config.toml)
|
||||||
|
run: |
|
||||||
|
sudo apt-get update
|
||||||
|
sudo apt-get install -y mold clang
|
||||||
|
|
||||||
- uses: Swatinem/rust-cache@c19371144df3bb44fab255c43d04cbc2ab54d1c4 # v2.9.1
|
- uses: Swatinem/rust-cache@c19371144df3bb44fab255c43d04cbc2ab54d1c4 # v2.9.1
|
||||||
with:
|
with:
|
||||||
workspaces: _primitives/_rust
|
workspaces: _primitives/_rust
|
||||||
|
|
|
||||||
|
|
@ -39,6 +39,7 @@ pub struct EvalInput {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Full report produced by `evaluate`.
|
/// Full report produced by `evaluate`.
|
||||||
|
#[allow(dead_code)] // confusion_* поля для будущего CLI subcommand --confusion-matrix
|
||||||
pub struct EvalReport {
|
pub struct EvalReport {
|
||||||
pub total_gold_rows: usize,
|
pub total_gold_rows: usize,
|
||||||
pub regex_metrics: Metrics,
|
pub regex_metrics: Metrics,
|
||||||
|
|
|
||||||
|
|
@ -65,6 +65,7 @@ impl Firmware {
|
||||||
///
|
///
|
||||||
/// For `.jsonl`, extracts user turns only. For `.md`, drops
|
/// For `.jsonl`, extracts user turns only. For `.md`, drops
|
||||||
/// `### Assistant` blocks. See `firmware_corpus` for the extractor.
|
/// `### Assistant` blocks. See `firmware_corpus` for the extractor.
|
||||||
|
#[allow(dead_code)] // публичное API для будущего CLI `firmware train --dir`
|
||||||
pub fn train_from_dir(path: &Path, max_depth: usize) -> Result<Self> {
|
pub fn train_from_dir(path: &Path, max_depth: usize) -> Result<Self> {
|
||||||
let text = load_corpus_text(path)
|
let text = load_corpus_text(path)
|
||||||
.with_context(|| format!("load corpus from {}", path.display()))?;
|
.with_context(|| format!("load corpus from {}", path.display()))?;
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ use crate::error::AppError;
|
||||||
use crate::state::AppState;
|
use crate::state::AppState;
|
||||||
use super::tool_apply_atomic::atomic_write_nofollow;
|
use super::tool_apply_atomic::atomic_write_nofollow;
|
||||||
use crate::tool::edit::count_occurrences;
|
use crate::tool::edit::count_occurrences;
|
||||||
use crate::tool::read::validate_path as validate_abs_path;
|
use crate::tool::read::validate_path_lexical as validate_abs_path;
|
||||||
use crate::tool::write::deny_system_dirs;
|
use crate::tool::write::deny_system_dirs;
|
||||||
use axum::extract::State;
|
use axum::extract::State;
|
||||||
use axum::Json;
|
use axum::Json;
|
||||||
|
|
|
||||||
|
|
@ -29,11 +29,11 @@ use toml::Value as TomlValue;
|
||||||
const SPAWN_TIMEOUT: Duration = Duration::from_secs(120);
|
const SPAWN_TIMEOUT: Duration = Duration::from_secs(120);
|
||||||
|
|
||||||
#[derive(Debug, Deserialize)]
|
#[derive(Debug, Deserialize)]
|
||||||
struct Input {
|
pub(crate) struct Input {
|
||||||
description: String,
|
pub(crate) description: String,
|
||||||
prompt: String,
|
pub(crate) prompt: String,
|
||||||
#[serde(default)]
|
#[serde(default)]
|
||||||
subagent_type: Option<String>,
|
pub(crate) subagent_type: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
pub async fn run(raw: Value) -> Result<String, ToolError> {
|
pub async fn run(raw: Value) -> Result<String, ToolError> {
|
||||||
|
|
|
||||||
|
|
@ -55,13 +55,6 @@ pub async fn run(raw: Value, project_root: &Path) -> Result<String, ToolError> {
|
||||||
/// Lexical-only path checks (cheap pre-filter before canonicalisation).
|
/// Lexical-only path checks (cheap pre-filter before canonicalisation).
|
||||||
/// Reject relative paths, parent traversal, and empty paths.
|
/// Reject relative paths, parent traversal, and empty paths.
|
||||||
///
|
///
|
||||||
/// `validate_path` kept as a deprecated alias for `tool_apply.rs`
|
|
||||||
/// (wave44b territory, will be reconciled at merge).
|
|
||||||
#[deprecated(note = "use validate_path_lexical")]
|
|
||||||
pub(crate) fn validate_path(path: &str) -> Result<(), ToolError> {
|
|
||||||
validate_path_lexical(path)
|
|
||||||
}
|
|
||||||
|
|
||||||
pub(crate) fn validate_path_lexical(path: &str) -> Result<(), ToolError> {
|
pub(crate) fn validate_path_lexical(path: &str) -> Result<(), ToolError> {
|
||||||
if path.is_empty() {
|
if path.is_empty() {
|
||||||
return Err(ToolError::InvalidInput("empty path".into()));
|
return Err(ToolError::InvalidInput("empty path".into()));
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"name": "@keisei/ts-packages",
|
"name": "@keisei/ts-packages",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "0.14.0",
|
"version": "0.38.0",
|
||||||
"description": "KeiSeiKit TypeScript layer — MCP server and external-API adapters",
|
"description": "KeiSeiKit TypeScript layer — MCP server and external-API adapters",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"workspaces": [
|
"workspaces": [
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@keisei/gmail-adapter",
|
"name": "@keisei/gmail-adapter",
|
||||||
"version": "0.14.0",
|
"version": "0.38.0",
|
||||||
"description": "Gmail API adapter for the KeiSei MCP server",
|
"description": "Gmail API adapter for the KeiSei MCP server",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "./dist/index.js",
|
"main": "./dist/index.js",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@keisei/grok-adapter",
|
"name": "@keisei/grok-adapter",
|
||||||
"version": "0.14.0",
|
"version": "0.38.0",
|
||||||
"description": "xAI Grok adapter (deep research + image gen) for the KeiSei MCP server",
|
"description": "xAI Grok adapter (deep research + image gen) for the KeiSei MCP server",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "./dist/index.js",
|
"main": "./dist/index.js",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@keisei/mcp-server",
|
"name": "@keisei/mcp-server",
|
||||||
"version": "0.14.6",
|
"version": "0.38.0",
|
||||||
"description": "MCP server exposing KeiSeiKit Rust primitives as Model Context Protocol tools — published to keigit.com (Forgejo npm registry, public DNS)",
|
"description": "MCP server exposing KeiSeiKit Rust primitives as Model Context Protocol tools — published to keigit.com (Forgejo npm registry, public DNS)",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "./dist/index.js",
|
"main": "./dist/index.js",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@keisei/recall-adapter",
|
"name": "@keisei/recall-adapter",
|
||||||
"version": "0.14.0",
|
"version": "0.38.0",
|
||||||
"description": "Recall.ai adapter (Zoom meeting capture) for the KeiSei MCP server",
|
"description": "Recall.ai adapter (Zoom meeting capture) for the KeiSei MCP server",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "./dist/index.js",
|
"main": "./dist/index.js",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@keisei/telegram-adapter",
|
"name": "@keisei/telegram-adapter",
|
||||||
"version": "0.14.0",
|
"version": "0.38.0",
|
||||||
"description": "Telegram Bot API adapter for the KeiSei MCP server",
|
"description": "Telegram Bot API adapter for the KeiSei MCP server",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "./dist/index.js",
|
"main": "./dist/index.js",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@keisei/youtube-adapter",
|
"name": "@keisei/youtube-adapter",
|
||||||
"version": "0.14.0",
|
"version": "0.38.0",
|
||||||
"description": "YouTube Data API v3 adapter for the KeiSei MCP server",
|
"description": "YouTube Data API v3 adapter for the KeiSei MCP server",
|
||||||
"type": "module",
|
"type": "module",
|
||||||
"main": "./dist/index.js",
|
"main": "./dist/index.js",
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue