Log from Radicle native CI

Request message

{
  "request": "trigger",
  "version": 1,
  "event_type": "push",
  "repository": {
    "id": "rad:zwTxygwuz5LDGBq255RA2CbNGrz8",
    "name": "radicle-ci-broker",
    "description": "Radicle CI broker",
    "private": false,
    "default_branch": "main",
    "delegates": [
      "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
      "did:key:z6MksFqXN3Yhqk8pTJdUGLwATkRfQvwZXPqR2qMEhbS9wzpT"
    ]
  },
  "pusher": {
    "id": "did:key:z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV",
    "alias": "liw"
  },
  "before": "85efaa10d1228e03a261946adc9141d3a5b398f5",
  "after": "85efaa10d1228e03a261946adc9141d3a5b398f5",
  "branch": "",
  "commits": [
    "85efaa10d1228e03a261946adc9141d3a5b398f5"
  ]
}

.radicle/native.yaml

shell: |
  cargo --version
  rustc --version

  cargo fmt --check
  cargo clippy --all-targets --workspace -- -Dwarnings
  cargo build --all-targets --workspace
  cargo doc --workspace
  cargo test --workspace --no-fail-fast

  subplot docgen ci-broker.subplot -o doc/ci-broker.html
  make -C doc publish

Table of contents

Run: git clone /home/_rad/.radicle/storage/zwTxygwuz5LDGBq255RA2CbNGrz8 /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src

Command arguments:

In directory: /

Exit code: 0

Output (stdout and stderr):

Cloning into '/srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src'...
done.

Run: git config advice.detachedHead false

Command arguments:

In directory: /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src

Exit code: 0

Run: git checkout 85efaa10d1228e03a261946adc9141d3a5b398f5

Command arguments:

In directory: /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src

Exit code: 0

Output (stdout and stderr):

HEAD is now at 85efaa1 feat: allow user to set minimum log level for cib

Run: git show 85efaa10d1228e03a261946adc9141d3a5b398f5

Command arguments:

In directory: /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src

Exit code: 0

Output (stdout and stderr):

commit 85efaa10d1228e03a261946adc9141d3a5b398f5
Author: Lars Wirzenius <liw@liw.fi>
Date:   Thu Oct 10 09:45:15 2024 +0300

    feat: allow user to set minimum log level for cib
    
    Signed-off-by: Lars Wirzenius <liw@liw.fi>

diff --git a/ci-broker.md b/ci-broker.md
index b6aeab5..c7f3cd5 100644
--- a/ci-broker.md
+++ b/ci-broker.md
@@ -512,6 +512,31 @@ when I run bash radenv.sh cib --config broker.yaml queued
 then stderr contains "Mordor"
 ~~~
 
+## Allows setting minimum log level
+
+_What:_ The node admin should be able to set the minimum log level for
+log messages that get output to stderr.
+
+_Why:_ This allows controlling how much log spew log admins have to see.
+
+_Who:_ `node-ops`
+
+~~~scenario
+given file radenv.sh
+given file setup-node.sh
+when I run bash radenv.sh bash setup-node.sh
+
+given an installed cib
+given file broker.yaml
+given a directory reports
+
+when I run bash radenv.sh cib --config broker.yaml config
+then stderr contains "CI broker starts"
+
+when I run bash radenv.sh cib --config broker.yaml --log-level error config
+then stderr is exactly ""
+~~~
+
 # Acceptance criteria for test tooling
 
 The event synthesizer is a helper to feed the CI broker node events in
diff --git a/src/bin/cib.rs b/src/bin/cib.rs
index 33e9623..a4a9034 100644
--- a/src/bin/cib.rs
+++ b/src/bin/cib.rs
@@ -17,7 +17,7 @@ use radicle_ci_broker::{
     broker::{Broker, BrokerError},
     config::{Config, ConfigError},
     db::{Db, DbError},
-    logger,
+    logger::{self, LogLevel},
     notif::{NotificationChannel, NotificationError},
     pages::StatusPage,
     queueadd::{AdderError, QueueAdderBuilder},
@@ -25,10 +25,9 @@ use radicle_ci_broker::{
 };
 
 fn main() {
-    let _logger = logger::open();
+    let logger = logger::open();
 
-    logger::start_cib();
-    if let Err(e) = fallible_main() {
+    if let Err(e) = fallible_main(&logger) {
         logger::error("ERROR", &e);
         logger::end_cib_in_error();
         exit(1);
@@ -36,8 +35,13 @@ fn main() {
     logger::end_cib_successfully();
 }
 
-fn fallible_main() -> Result<(), CibError> {
+fn fallible_main(logger: &logger::Logger) -> Result<(), CibError> {
     let args = Args::parse();
+    logger.set_minimum_level(args.minimum_log_level());
+
+    // We only log this after setting the minimum log level from the
+    // command line.
+    logger::start_cib();
 
     let config = Config::load(&args.config).map_err(|e| CibError::read_config(&args.config, e))?;
     logger::loaded_config(&config);
@@ -53,6 +57,9 @@ struct Args {
     #[clap(long)]
     config: PathBuf,
 
+    #[clap(long, value_enum)]
+    log_level: Option<logger::LogLevel>,
+
     #[clap(subcommand)]
     cmd: Cmd,
 }
@@ -77,6 +84,10 @@ impl Args {
             Err(CibError::UnprocessedBrokerEvents)
         }
     }
+
+    fn minimum_log_level(&self) -> LogLevel {
+        self.log_level.unwrap_or(LogLevel::Trace)
+    }
 }
 
 #[derive(Debug, Parser)]
diff --git a/src/logger.rs b/src/logger.rs
index f6943ee..2f989f4 100644
--- a/src/logger.rs
+++ b/src/logger.rs
@@ -2,8 +2,14 @@
 
 #[cfg(test)]
 use std::sync::Once;
-use std::{path::Path, sync::Mutex, time::Duration};
+use std::{
+    fmt,
+    path::Path,
+    sync::{Arc, Mutex},
+    time::Duration,
+};
 
+use clap::ValueEnum;
 use radicle::{git::raw::Oid, identity::RepoId, node::Event};
 use slog::{debug, error, info, o, trace, warn, Drain};
 use slog_scope::GlobalLoggerGuard;
@@ -18,14 +24,73 @@ use crate::{
     run::Run,
 };
 
-pub fn open() -> GlobalLoggerGuard {
-    let logger = slog_json::Json::new(std::io::stderr())
+// We define our own type for log levels so that we can apply
+// clap::ValueEnum on it.
+#[derive(ValueEnum, Eq, PartialEq, Copy, Clone, Debug)]
+pub enum LogLevel {
+    Trace,
+    Debug,
+    Info,
+    Warning,
+    Error,
+    Critical,
+}
+
+impl fmt::Display for LogLevel {
+    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
+        write!(f, "<{:?}>", self)
+    }
+}
+
+impl From<LogLevel> for slog::Level {
+    fn from(log_level: LogLevel) -> Self {
+        match log_level {
+            LogLevel::Trace => slog::Level::Trace,
+            LogLevel::Debug => slog::Level::Debug,
+            LogLevel::Info => slog::Level::Info,
+            LogLevel::Warning => slog::Level::Warning,
+            LogLevel::Error => slog::Level::Error,
+            LogLevel::Critical => slog::Level::Critical,
+        }
+    }
+}
+
+pub struct Logger {
+    minimum_log_level: Arc<Mutex<slog::Level>>,
+
+    // We need to keep this for as long as need to log. But we don't
+    // refer to it directly.
+    #[allow(dead_code)]
+    guard: GlobalLoggerGuard,
+}
+
+impl Logger {
+    pub fn set_minimum_level(&self, level: LogLevel) {
+        *self
+            .minimum_log_level
+            .lock()
+            .expect("set minimum log level") = level.into();
+    }
+}
+
+pub fn open() -> Logger {
+    let underlying_logger = slog_json::Json::new(std::io::stderr())
         .add_default_keys()
         .set_flush(true)
         .set_newlines(true)
         .build();
-    let log = slog::Logger::root(Mutex::new(logger).fuse(), o!());
-    slog_scope::set_global_logger(log)
+
+    // Set the default log level. Trace is good for tests.
+    let level = Arc::new(Mutex::new(LogLevel::Trace.into()));
+
+    let filter = LogLevelFilter::new(underlying_logger, level.clone());
+    let log = slog::Logger::root(Mutex::new(filter).fuse(), o!());
+    let guard = slog_scope::set_global_logger(log);
+
+    Logger {
+        guard,
+        minimum_log_level: level,
+    }
 }
 
 // Set up structured logging for tests.
@@ -47,7 +112,46 @@ static INIT: Once = Once::new();
 
 // This is the actual logger for tests.
 #[cfg(test)]
-static mut LOGGER: Option<GlobalLoggerGuard> = None;
+static mut LOGGER: Option<Logger> = None;
+
+struct LogLevelFilter<D> {
+    drain: D,
+    minimum_log_level: Arc<Mutex<slog::Level>>,
+}
+
+impl<D> LogLevelFilter<D> {
+    pub fn new(drain: D, minimum_log_level: Arc<Mutex<slog::Level>>) -> Self {
+        Self {
+            drain,
+            minimum_log_level,
+        }
+    }
+}
+
+impl<D> Drain for LogLevelFilter<D>
+where
+    D: Drain,
+{
+    type Ok = Option<D::Ok>;
+    type Err = Option<D::Err>;
+
+    fn log(
+        &self,
+        record: &slog::Record,
+        values: &slog::OwnedKVList,
+    ) -> Result<Self::Ok, Self::Err> {
+        #[allow(clippy::unwrap_used)] // We have no good way to report an error
+        let min = *self
+            .minimum_log_level
+            .lock()
+            .expect("lock log level filter minimum level");
+        if record.level().is_at_least(min) {
+            self.drain.log(record, values).map(Some).map_err(Some)
+        } else {
+            Ok(None)
+        }
+    }
+}
 
 #[cfg(test)]
 #[ctor::ctor]

Run: timeout 600 bash -c set -xeuo pipefail cargo --version rustc --version cargo fmt --check cargo clippy --all-targets --workspace -- -Dwarnings cargo build --all-targets --workspace cargo doc --workspace cargo test --workspace --no-fail-fast subplot docgen ci-broker.subplot -o doc/ci-broker.html make -C doc publish

Command arguments:

In directory: /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src

Exit code: 101

Output (stdout and stderr):

+ cargo --version
cargo 1.80.1 (376290515 2024-07-16)
+ rustc --version
rustc 1.80.1 (3f5fd8dd4 2024-08-06)
+ cargo fmt --check
+ cargo clippy --all-targets --workspace -- -Dwarnings
   Compiling proc-macro2 v1.0.86
   Compiling unicode-ident v1.0.13
   Compiling version_check v0.9.5
   Compiling libc v0.2.158
   Compiling typenum v1.17.0
    Checking cfg-if v1.0.0
   Compiling serde v1.0.210
   Compiling shlex v1.3.0
   Compiling thiserror v1.0.63
   Compiling memchr v2.7.4
   Compiling once_cell v1.20.0
   Compiling syn v1.0.109
   Compiling byteorder v1.5.0
    Checking subtle v2.6.1
   Compiling bitflags v2.6.0
   Compiling pkg-config v0.3.30
   Compiling rustix v0.38.37
   Compiling crossbeam-utils v0.8.20
   Compiling linux-raw-sys v0.4.14
   Compiling anyhow v1.0.89
   Compiling regex-syntax v0.8.4
   Compiling generic-array v0.14.7
   Compiling ahash v0.8.11
   Compiling log v0.4.22
   Compiling itoa v1.0.11
    Checking cpufeatures v0.2.14
   Compiling same-file v1.0.6
   Compiling allocator-api2 v0.2.18
   Compiling utf8parse v0.2.2
   Compiling num-conv v0.1.0
   Compiling time-core v0.1.2
   Compiling anstyle-parse v0.2.5
   Compiling walkdir v2.5.0
   Compiling aho-corasick v1.1.3
   Compiling is_terminal_polyfill v1.70.1
   Compiling time-macros v0.2.18
   Compiling anstyle-query v1.1.1
   Compiling anstyle v1.0.8
   Compiling colorchoice v1.0.2
   Compiling ucd-trie v0.1.6
   Compiling bstr v1.10.0
   Compiling quote v1.0.37
   Compiling anstream v0.6.15
   Compiling doc-comment v0.3.3
   Compiling libm v0.2.8
   Compiling heck v0.5.0
   Compiling vcpkg v0.2.15
   Compiling syn v2.0.77
   Compiling jobserver v0.1.32
   Compiling getrandom v0.2.15
   Compiling crossbeam-epoch v0.9.18
   Compiling unic-char-range v0.9.0
   Compiling unic-common v0.9.0
   Compiling powerfmt v0.2.0
   Compiling unicode-width v0.1.13
   Compiling unic-char-property v0.9.0
   Compiling rand_core v0.6.4
   Compiling deranged v0.3.11
   Compiling cc v1.1.19
   Compiling unic-ucd-version v0.9.0
   Compiling crossbeam-deque v0.8.5
   Compiling proc-macro-error-attr v1.0.4
   Compiling unicase v2.7.0
   Compiling encoding_rs v0.8.34
   Compiling fastrand v2.1.1
   Compiling strsim v0.11.1
   Compiling serde_json v1.0.128
    Checking tinyvec_macros v0.1.1
   Compiling clap_lex v0.7.2
   Compiling arraydeque v0.5.1
    Checking tinyvec v1.8.0
    Checking crypto-common v0.1.6
    Checking block-buffer v0.10.4
    Checking block-padding v0.3.3
   Compiling clap_builder v4.5.17
    Checking universal-hash v0.5.1
    Checking inout v0.1.3
    Checking digest v0.10.7
   Compiling unic-ucd-segment v0.9.0
   Compiling proc-macro-error v1.0.4
    Checking cipher v0.4.4
    Checking signature v1.6.4
   Compiling unicode-linebreak v0.1.5
   Compiling regex-automata v0.4.7
   Compiling ryu v1.0.18
   Compiling tempfile v3.12.0
   Compiling smawk v0.3.2
    Checking opaque-debug v0.3.1
   Compiling time v0.3.36
   Compiling deunicode v1.6.0
   Compiling pulldown-cmark v0.12.1
   Compiling slug v0.1.6
   Compiling amplify_syn v2.0.1
    Checking unicode-normalization v0.1.23
   Compiling textwrap v0.16.1
   Compiling humansize v2.1.3
   Compiling unic-segment v0.9.0
    Checking ed25519 v1.5.3
   Compiling getopts v0.2.21
   Compiling subplot v0.11.0
    Checking ct-codecs v1.1.2
   Compiling humantime v2.1.0
   Compiling libz-sys v1.1.20
   Compiling pikchr v0.1.3
   Compiling libgit2-sys v0.17.0+1.8.1
   Compiling percent-encoding v2.3.1
    Checking amplify_num v0.5.3
   Compiling utf8-width v0.1.7
    Checking unicode-bidi v0.3.15
    Checking ascii v1.1.0
   Compiling pulldown-cmark-escape v0.11.0
   Compiling lazy_static v1.5.0
   Compiling html-escape v0.2.13
    Checking form_urlencoded v1.2.1
    Checking ec25519 v0.1.0
   Compiling sqlite3-src v0.5.1
    Checking idna v0.5.0
    Checking polyval v0.6.2
    Checking sha2 v0.10.8
   Compiling tracing-core v0.1.32
   Compiling amplify_derive v4.0.1
   Compiling base64 v0.22.1
   Compiling line-col v0.2.1
   Compiling file_diff v1.0.0
    Checking keccak v0.1.5
    Checking base64ct v1.6.0
   Compiling pin-project-lite v0.2.14
    Checking sha3 v0.10.8
    Checking ghash v0.5.1
    Checking aes v0.8.4
    Checking ctr v0.9.2
    Checking aead v0.5.2
    Checking pem-rfc7468 v0.7.0
    Checking base32 v0.4.0
   Compiling data-encoding v2.6.0
    Checking hashbrown v0.14.5
   Compiling cfg_aliases v0.2.1
    Checking equivalent v1.0.1
    Checking ssh-encoding v0.2.0
   Compiling globset v0.4.15
   Compiling regex v1.10.6
   Compiling nix v0.29.0
    Checking blowfish v0.9.1
    Checking aes-gcm v0.10.3
    Checking poly1305 v0.8.0
    Checking cbc v0.1.2
    Checking chacha20 v0.9.1
    Checking pbkdf2 v0.12.2
   Compiling ignore v0.4.23
   Compiling env_filter v0.1.2
    Checking indexmap v2.5.0
   Compiling env_logger v0.11.5
    Checking radicle-std-ext v0.1.0
    Checking zeroize v1.8.1
   Compiling adler2 v2.0.0
    Checking ssh-cipher v0.2.0
    Checking bcrypt-pbkdf v0.10.0
    Checking rand v0.8.5
   Compiling xattr v1.3.1
   Compiling miniz_oxide v0.8.0
   Compiling data-encoding-macro-internal v0.1.13
   Compiling filetime v0.2.25
   Compiling crc32fast v1.4.2
    Checking signature v2.2.0
   Compiling slog v2.7.0
   Compiling globwalk v0.9.1
    Checking base-x v0.2.11
    Checking ssh-key v0.6.6
   Compiling tar v0.4.41
    Checking qcheck v1.0.0
   Compiling flate2 v1.0.33
    Checking data-encoding-macro v0.1.15
    Checking multibase v0.9.1
    Checking cvt v0.1.2
   Compiling glob v0.3.1
    Checking terminal_size v0.3.0
    Checking radicle-dag v0.9.0
    Checking normpath v1.3.0
    Checking base64 v0.21.7
    Checking amplify v4.7.0
   Compiling serde_yml v0.0.11
   Compiling radicle-surf v0.22.1
    Checking fs2 v0.4.3
    Checking fs_at v0.2.1
    Checking shell-words v1.1.0
    Checking libyml v0.0.4
    Checking crossbeam-channel v0.5.13
    Checking siphasher v1.0.1
    Checking state v0.5.3
    Checking remove_dir_all v0.8.3
    Checking arc-swap v1.7.1
    Checking unescape v0.1.0
    Checking uuid v1.10.0
    Checking cyphergraphy v0.3.0
    Checking slog-scope v4.4.0
    Checking cypheraddr v0.4.0
   Compiling serde_derive v1.0.210
   Compiling thiserror-impl v1.0.63
   Compiling zerocopy-derive v0.7.35
   Compiling clap_derive v4.5.13
   Compiling git-testament-derive v0.2.0
   Compiling tracing-attributes v0.1.27
   Compiling culpa-macros v1.0.2
   Compiling ctor v0.2.8
    Checking socks5-client v0.4.1
    Checking html-page v0.4.0
    Checking cyphernet v0.5.2
   Compiling git-testament v0.2.5
   Compiling zerocopy v0.7.35
   Compiling culpa v1.0.2
   Compiling pest v2.7.12
   Compiling git-ref-format-core v0.3.1
   Compiling subplotlib-derive v0.11.0
    Checking radicle-ssh v0.9.0
   Compiling tracing v0.1.40
   Compiling ppv-lite86 v0.2.20
   Compiling git-ref-format-macro v0.3.1
   Compiling clap v4.5.17
   Compiling rand_chacha v0.3.1
   Compiling hashlink v0.8.4
   Compiling hashlink v0.9.1
   Compiling pest_meta v2.7.12
   Compiling yaml-rust2 v0.8.1
   Compiling tempfile-fast v0.3.4
   Compiling pest_generator v2.7.12
   Compiling pest_derive v2.7.12
    Checking url v2.5.2
    Checking nonempty v0.9.0
    Checking localtime v1.3.1
    Checking git-ref-format v0.3.1
   Compiling serde_path_to_error v0.1.16
    Checking slog-json v2.6.1
   Compiling marked-yaml v0.7.1
   Compiling roadmap v0.6.1
   Compiling tera v1.20.0
    Checking git2 v0.19.0
    Checking radicle-git-ext v0.8.1
   Compiling subplot-build v0.11.0
   Compiling subplotlib v0.11.0
   Compiling radicle-ci-broker v0.6.3 (/srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src)
    Checking sqlite3-sys v0.15.2
    Checking sqlite v0.32.0
    Checking radicle-crypto v0.11.0
    Checking radicle-cob v0.12.0
    Checking radicle v0.13.0
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 20.51s
+ cargo build --all-targets --workspace
   Compiling cfg-if v1.0.0
   Compiling bitflags v2.6.0
   Compiling memchr v2.7.4
   Compiling once_cell v1.20.0
   Compiling log v0.4.22
   Compiling itoa v1.0.11
   Compiling subtle v2.6.1
   Compiling typenum v1.17.0
   Compiling libc v0.2.158
   Compiling regex-syntax v0.8.4
   Compiling percent-encoding v2.3.1
   Compiling fastrand v2.1.1
   Compiling serde v1.0.210
   Compiling thiserror v1.0.63
   Compiling utf8parse v0.2.2
   Compiling crossbeam-utils v0.8.20
   Compiling is_terminal_polyfill v1.70.1
   Compiling anstyle-parse v0.2.5
   Compiling rustix v0.38.37
   Compiling anstyle v1.0.8
   Compiling anstyle-query v1.1.1
   Compiling cpufeatures v0.2.14
   Compiling colorchoice v1.0.2
   Compiling ryu v1.0.18
   Compiling ahash v0.8.11
   Compiling anyhow v1.0.89
   Compiling num-conv v0.1.0
   Compiling time-core v0.1.2
   Compiling anstream v0.6.15
   Compiling powerfmt v0.2.0
   Compiling getrandom v0.2.15
   Compiling clap_lex v0.7.2
   Compiling time-macros v0.2.18
   Compiling strsim v0.11.1
   Compiling hashbrown v0.14.5
   Compiling deranged v0.3.11
   Compiling rand_core v0.6.4
   Compiling aho-corasick v1.1.3
   Compiling bstr v1.10.0
   Compiling pest v2.7.12
   Compiling crossbeam-epoch v0.9.18
   Compiling generic-array v0.14.7
   Compiling rand_chacha v0.3.1
   Compiling encoding_rs v0.8.34
   Compiling crossbeam-deque v0.8.5
   Compiling hashlink v0.8.4
   Compiling tinyvec_macros v0.1.1
   Compiling rand v0.8.5
   Compiling tinyvec v1.8.0
   Compiling hashlink v0.9.1
   Compiling clap_builder v4.5.17
   Compiling crypto-common v0.1.6
   Compiling block-padding v0.3.3
   Compiling block-buffer v0.10.4
   Compiling inout v0.1.3
   Compiling universal-hash v0.5.1
   Compiling signature v1.6.4
   Compiling opaque-debug v0.3.1
   Compiling digest v0.10.7
   Compiling lazy_static v1.5.0
   Compiling cipher v0.4.4
   Compiling utf8-width v0.1.7
   Compiling ed25519 v1.5.3
   Compiling subplot v0.11.0
   Compiling html-escape v0.2.13
   Compiling ct-codecs v1.1.2
   Compiling ascii v1.1.0
   Compiling linux-raw-sys v0.4.14
   Compiling amplify_num v0.5.3
   Compiling unicode-bidi v0.3.15
   Compiling tempfile v3.12.0
   Compiling unicode-normalization v0.1.23
   Compiling regex-automata v0.4.7
   Compiling pest_meta v2.7.12
   Compiling time v0.3.36
   Compiling yaml-rust2 v0.8.1
   Compiling tempfile-fast v0.3.4
   Compiling pulldown-cmark v0.12.1
   Compiling ec25519 v0.1.0
   Compiling idna v0.5.0
   Compiling sha2 v0.10.8
   Compiling polyval v0.6.2
   Compiling pest_generator v2.7.12
   Compiling serde_path_to_error v0.1.16
   Compiling serde_json v1.0.128
   Compiling libz-sys v1.1.20
   Compiling tracing-core v0.1.32
   Compiling form_urlencoded v1.2.1
   Compiling marked-yaml v0.7.1
   Compiling amplify v4.7.0
   Compiling git-ref-format-core v0.3.1
   Compiling byteorder v1.5.0
   Compiling clap v4.5.17
   Compiling keccak v0.1.5
   Compiling base64ct v1.6.0
   Compiling roadmap v0.6.1
   Compiling base64 v0.22.1
   Compiling pem-rfc7468 v0.7.0
   Compiling git-ref-format-macro v0.3.1
   Compiling git-testament-derive v0.2.0
   Compiling cyphergraphy v0.3.0
   Compiling sha3 v0.10.8
   Compiling tracing v0.1.40
   Compiling url v2.5.2
   Compiling libgit2-sys v0.17.0+1.8.1
   Compiling ghash v0.5.1
   Compiling regex v1.10.6
   Compiling globset v0.4.15
   Compiling ctr v0.9.2
   Compiling aes v0.8.4
   Compiling aead v0.5.2
   Compiling base32 v0.4.0
   Compiling pest_derive v2.7.12
   Compiling equivalent v1.0.1
   Compiling cypheraddr v0.4.0
   Compiling sqlite3-src v0.5.1
   Compiling ssh-encoding v0.2.0
   Compiling ignore v0.4.23
   Compiling env_filter v0.1.2
   Compiling git-ref-format v0.3.1
   Compiling blowfish v0.9.1
   Compiling env_logger v0.11.5
   Compiling git2 v0.19.0
   Compiling chacha20 v0.9.1
   Compiling aes-gcm v0.10.3
   Compiling cbc v0.1.2
   Compiling pbkdf2 v0.12.2
   Compiling poly1305 v0.8.0
   Compiling radicle-std-ext v0.1.0
   Compiling data-encoding v2.6.0
   Compiling git-testament v0.2.5
   Compiling zeroize v1.8.1
   Compiling bcrypt-pbkdf v0.10.0
   Compiling indexmap v2.5.0
   Compiling socks5-client v0.4.1
   Compiling sqlite3-sys v0.15.2
   Compiling xattr v1.3.1
   Compiling crc32fast v1.4.2
   Compiling globwalk v0.9.1
   Compiling filetime v0.2.25
   Compiling base-x v0.2.11
   Compiling signature v2.2.0
   Compiling ssh-cipher v0.2.0
   Compiling tar v0.4.41
   Compiling flate2 v1.0.33
   Compiling tera v1.20.0
   Compiling data-encoding-macro v0.1.15
   Compiling cyphernet v0.5.2
   Compiling sqlite v0.32.0
   Compiling multibase v0.9.1
   Compiling radicle-ssh v0.9.0
   Compiling nix v0.29.0
   Compiling ssh-key v0.6.6
   Compiling nonempty v0.9.0
   Compiling qcheck v1.0.0
   Compiling cvt v0.1.2
   Compiling culpa v1.0.2
   Compiling slog v2.7.0
   Compiling terminal_size v0.3.0
   Compiling radicle-dag v0.9.0
   Compiling base64 v0.21.7
   Compiling normpath v1.3.0
   Compiling subplotlib-derive v0.11.0
   Compiling localtime v1.3.1
   Compiling fs2 v0.4.3
   Compiling radicle-surf v0.22.1
   Compiling crossbeam-channel v0.5.13
   Compiling arc-swap v1.7.1
   Compiling unescape v0.1.0
   Compiling fs_at v0.2.1
   Compiling siphasher v1.0.1
   Compiling remove_dir_all v0.8.3
   Compiling shell-words v1.1.0
   Compiling state v0.5.3
   Compiling libyml v0.0.4
   Compiling slog-scope v4.4.0
   Compiling html-page v0.4.0
   Compiling uuid v1.10.0
   Compiling slog-json v2.6.1
   Compiling radicle-git-ext v0.8.1
   Compiling serde_yml v0.0.11
   Compiling radicle-crypto v0.11.0
   Compiling radicle-cob v0.12.0
   Compiling radicle v0.13.0
   Compiling subplot-build v0.11.0
   Compiling subplotlib v0.11.0
   Compiling radicle-ci-broker v0.6.3 (/srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.62s
+ cargo doc --workspace
    Checking unicode-ident v1.0.13
 Documenting unicode-ident v1.0.13
 Documenting cfg-if v1.0.0
 Documenting typenum v1.17.0
 Documenting libc v0.2.158
 Documenting subtle v2.6.1
 Documenting bitflags v2.6.0
 Documenting cpufeatures v0.2.14
 Documenting tinyvec_macros v0.1.1
 Documenting opaque-debug v0.3.1
 Documenting memchr v2.7.4
 Documenting ed25519 v1.5.3
 Documenting ct-codecs v1.1.2
 Documenting amplify_num v0.5.3
 Documenting ascii v1.1.0
 Documenting linux-raw-sys v0.4.14
    Checking proc-macro2 v1.0.86
 Documenting tinyvec v1.8.0
 Documenting log v0.4.22
 Documenting percent-encoding v2.3.1
 Documenting unicode-bidi v0.3.15
 Documenting proc-macro2 v1.0.86
    Checking git-ref-format-core v0.3.1
    Checking quote v1.0.37
 Documenting byteorder v1.5.0
 Documenting keccak v0.1.5
 Documenting base64ct v1.6.0
    Checking syn v2.0.77
    Checking syn v1.0.109
 Documenting itoa v1.0.11
 Documenting fastrand v2.1.1
 Documenting form_urlencoded v1.2.1
 Documenting base32 v0.4.0
 Documenting rustix v0.38.37
    Checking data-encoding v2.6.0
 Documenting unicode-normalization v0.1.23
 Documenting hashbrown v0.14.5
 Documenting equivalent v1.0.1
 Documenting quote v1.0.37
 Documenting sqlite3-src v0.5.1
 Documenting ryu v1.0.18
 Documenting radicle-std-ext v0.1.0
    Checking amplify_syn v2.0.1
    Checking proc-macro-error v1.0.4
 Documenting data-encoding-macro-internal v0.1.13
 Documenting once_cell v1.20.0
 Documenting pem-rfc7468 v0.7.0
 Documenting data-encoding v2.6.0
 Documenting zeroize v1.8.1
 Documenting signature v2.2.0
 Documenting powerfmt v0.2.0
 Documenting base-x v0.2.11
 Documenting utf8parse v0.2.2
 Documenting serde_derive v1.0.210
 Documenting thiserror-impl v1.0.63
 Documenting amplify_syn v2.0.1
 Documenting generic-array v0.14.7
 Documenting proc-macro-error-attr v1.0.4
 Documenting idna v0.5.0
 Documenting indexmap v2.5.0
 Documenting aho-corasick v1.1.3
 Documenting deranged v0.3.11
 Documenting anstyle-parse v0.2.5
 Documenting time-macros v0.2.18
 Documenting cvt v0.1.2
 Documenting tempfile v3.12.0
 Documenting getrandom v0.2.15
 Documenting libz-sys v1.1.20
 Documenting data-encoding-macro v0.1.15
 Documenting proc-macro-error v1.0.4
 Documenting crypto-common v0.1.6
 Documenting block-padding v0.3.3
 Documenting block-buffer v0.10.4
 Documenting amplify_derive v4.0.1
 Documenting thiserror v1.0.63
 Documenting ec25519 v0.1.0
 Documenting rand_core v0.6.4
 Documenting libgit2-sys v0.17.0+1.8.1
 Documenting sqlite3-sys v0.15.2
 Documenting multibase v0.9.1
 Documenting nix v0.29.0
 Documenting inout v0.1.3
 Documenting time-core v0.1.2
 Documenting anstyle v1.0.8
 Documenting num-conv v0.1.0
 Documenting serde v1.0.210
 Documenting colorchoice v1.0.2
 Documenting git-ref-format-macro v0.3.1
 Documenting digest v0.10.7
 Documenting universal-hash v0.5.1
 Documenting aead v0.5.2
 Documenting rand v0.8.5
 Documenting sqlite v0.32.0
 Documenting radicle-ssh v0.9.0
 Documenting cipher v0.4.4
 Documenting is_terminal_polyfill v1.70.1
 Documenting amplify v4.7.0
 Documenting anstyle-query v1.1.1
 Documenting regex-syntax v0.8.4
 Documenting time v0.3.36
 Documenting terminal_size v0.3.0
 Documenting culpa-macros v1.0.2
 Documenting radicle-dag v0.9.0
 Documenting fs_at v0.2.1
   Compiling radicle-ci-broker v0.6.3 (/srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src)
 Documenting polyval v0.6.2
 Documenting poly1305 v0.8.0
 Documenting anstream v0.6.15
 Documenting slog v2.7.0
 Documenting crossbeam-utils v0.8.20
 Documenting qcheck v1.0.0
 Documenting sha2 v0.10.8
 Documenting sha3 v0.10.8
 Documenting pbkdf2 v0.12.2
    Checking heck v0.5.0
 Documenting aes v0.8.4
 Documenting cyphergraphy v0.3.0
 Documenting ctr v0.9.2
 Documenting chacha20 v0.9.1
 Documenting cbc v0.1.2
 Documenting ghash v0.5.1
 Documenting blowfish v0.9.1
 Documenting regex-automata v0.4.7
 Documenting normpath v1.3.0
 Documenting clap_lex v0.7.2
 Documenting lazy_static v1.5.0
 Documenting strsim v0.11.1
 Documenting url v2.5.2
 Documenting git-ref-format-core v0.3.1
 Documenting ssh-encoding v0.2.0
 Documenting serde_json v1.0.128
 Documenting nonempty v0.9.0
 Documenting utf8-width v0.1.7
 Documenting heck v0.5.0
 Documenting cypheraddr v0.4.0
 Documenting localtime v1.3.1
 Documenting aes-gcm v0.10.3
 Documenting bcrypt-pbkdf v0.10.0
 Documenting remove_dir_all v0.8.3
 Documenting crossbeam-channel v0.5.13
 Documenting culpa v1.0.2
 Documenting clap_builder v4.5.17
 Documenting html-escape v0.2.13
 Documenting git-ref-format v0.3.1
 Documenting git2 v0.19.0
 Documenting clap_derive v4.5.13
 Documenting fs2 v0.4.3
 Documenting filetime v0.2.25
 Documenting subplotlib-derive v0.11.0
 Documenting libyml v0.0.4
 Documenting state v0.5.3
 Documenting ssh-cipher v0.2.0
 Documenting unescape v0.1.0
 Documenting shell-words v1.1.0
 Documenting socks5-client v0.4.1
 Documenting siphasher v1.0.1
 Documenting arc-swap v1.7.1
 Documenting base64 v0.22.1
 Documenting regex v1.10.6
 Documenting html-page v0.4.0
 Documenting slog-json v2.6.1
 Documenting uuid v1.10.0
 Documenting anyhow v1.0.89
 Documenting clap v4.5.17
 Documenting ssh-key v0.6.6
 Documenting serde_yml v0.0.11
 Documenting cyphernet v0.5.2
 Documenting slog-scope v4.4.0
 Documenting subplotlib v0.11.0
 Documenting radicle-git-ext v0.8.1
 Documenting radicle-crypto v0.11.0
 Documenting radicle-surf v0.22.1
 Documenting radicle-cob v0.12.0
 Documenting radicle v0.13.0
 Documenting radicle-ci-broker v0.6.3 (/srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src)
warning: unresolved link to `Requestbuilder`
   --> src/msg.rs:836:36
    |
836 |     /// CI event was not set for [`Requestbuilder`].
    |                                    ^^^^^^^^^^^^^^ no item named `Requestbuilder` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
    = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default

warning: `radicle-ci-broker` (lib doc) generated 1 warning
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.01s
   Generated /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/doc/radicle_ci_broker/index.html and 3 other files
+ cargo test --workspace --no-fail-fast
    Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
     Running unittests src/lib.rs (target/debug/deps/radicle_ci_broker-22f2b34d6582ea7a)

running 64 tests
{"msg":"broker database: /tmp/.tmppeOxD3/db.db","level":"INFO","ts":"2024-10-10T09:37:26.446848066Z"}
{"msg":"broker database: /tmp/.tmpATYL8O/db.db","level":"INFO","ts":"2024-10-10T09:37:26.446971936Z"}
{"msg":"broker database: /tmp/.tmpCBtR8t/db.db","level":"INFO","ts":"2024-10-10T09:37:26.447034306Z"}
{"msg":"broker database: /tmp/.tmpnwg7JG/db.db","level":"INFO","ts":"2024-10-10T09:37:26.447102386Z"}
test broker::test::does_not_have_a_default_adapter_initially ... ok
test broker::test::adds_adapter ... ok
test broker::test::does_not_find_unknown_repo ... ok
{"msg":"broker database: /tmp/.tmpf2PZRm/db.db","level":"INFO","ts":"2024-10-10T09:37:26.846126142Z"}
{"msg":"broker database: /tmp/.tmpMVZfCm/db.db","level":"INFO","ts":"2024-10-10T09:37:26.846234412Z"}
{"msg":"broker database: /tmp/.tmpCx6YBY/db.db","level":"INFO","ts":"2024-10-10T09:37:26.846343662Z"}
{"msg":"adapter exit code","level":"DEBG","ts":"2024-10-10T09:37:26.914129959Z","exit_code":0}
test adapter::test::adapter_reports_success ... ok
{"msg":"broker database: /tmp/.tmp6XdtQq/db.db","level":"INFO","ts":"2024-10-10T09:37:26.91473058Z"}
test adapter::test::adapter_is_not_executable ... ok
{"msg":"no second response message","level":"ERRO","ts":"2024-10-10T09:37:26.915592092Z"}
{"msg":"adapter was terminated by signal","level":"DEBG","ts":"2024-10-10T09:37:26.915642542Z"}
{"msg":"adapter did not exit voluntarily","level":"WARN","ts":"2024-10-10T09:37:26.915674322Z"}
test adapter::test::adapter_is_killed_after_first_message ... ok
{"msg":"adapter exit code","level":"DEBG","ts":"2024-10-10T09:37:26.916727784Z","exit_code":1}
{"msg":"adapter stderr","level":"DEBG","ts":"2024-10-10T09:37:26.916775264Z","stderr":"woe be me"}
test adapter::test::adapter_first_message_isnt_triggered ... ok
test adapter::test::adapter_exits_nonzero ... ok
test ci_event::test::nothing_updated ... ok
test ci_event::test::branch_deleted ... ok
test ci_event::test::branch_created ... ok
test ci_event::test::skipped ... ok
test ci_event::test::patch_created ... ok
{"msg":"start CI run"test ci_event::test_namespaced_branch::empty ... ,"oklevel
":"INFO","ts":"2024-10-10T09:37:26.91968259Z"}
{"msg":"trigger event: Trigger {\n    common: EventCommonFields {\n        version: 1,\n        event_type: Push,\n        repository: Repository {\n            id: RepoId(rad:z2r8nWoCicSocYh8fwphrgrEyMcL4),\n            name: \"acme\",\n            description: \"Acme's repository\",\n            private: false,\n            default_branch: \"master\",\n            delegates: [\n                Did(\"did:key:z6MktoL2vYh3KPuV7Rfag4jS8Ci2pfeuwfoJ1EeqhCcENGSs\"),\n            ],\n        },\n    },\n    push: Some(\n        PushEvent {\n            pusher: Author {\n                id: Did(\"did:key:z6MktoL2vYh3KPuV7Rfag4jS8Ci2pfeuwfoJ1EeqhCcENGSs\"),\n                alias: None,\n            },\n            before: Oid(\n                532c92e4ec973d79c25652c581ae82d238e46a06,\n            ),\n            after: Oid(\n                532c92e4ec973d79c25652c581ae82d238e46a06,\n            ),\n            branch: \"master\",\n            commits: [\n                Oid(\n                    532c92e4ec973d79c25652c581ae82d238e46a06,\n                ),\n            ],\n        },\n    ),\n    patch: None,\n}","level":"DEBG","ts":"2024-10-10T09:37:26.91982518Z"}
test ci_event::test::patch_updated ... ok
test ci_event::test::branch_updated ... ok
test ci_event::test_namespaced_branch::has_namespace_with_path ... ok
test ci_event::test_namespaced_branch::has_namespace ... ok
test ci_event::test_namespaced_branch::lacks_namespace ... ok
test adapter::test::adapter_produces_as_bad_message ... ok
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.922550005Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.922596625Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.922628875Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.922663195Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.922697425Z"}
test filter::test::allows_all_for_default_repository ... ok
test ci_event::test_patch_id::lacks_namespace ... ok
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.922833736Z"}
{"msg":"adapter was terminated by signal","level":"DEBG","ts":"2024-10-10T09:37:26.922873816Z"}
{"msg":"adapter did not exit voluntarily","level":"WARN","ts":"2024-10-10T09:37:26.922909656Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.922944446Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.922991386Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923035176Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923073486Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","test ci_event::test_patch_id::empty ... level"ok:
"DEBG","ts":"2024-10-10T09:37:26.923115796Z"}
{"msg":"test adapter::test::adapter_is_killed_after_second_message ... okEventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(
\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923160376Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG",test ci_event::test_patch_id::has_namespace ... "okts
":"2024-10-10T09:37:26.923210426Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923256606Z"}
{"msg":"test ci_event::test_patch_id::has_namespace_with_path ... okEventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(
\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923312306Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923364486Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923410367Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG"test filter::test::allows_all_for_main_branch ... ,"okts
":"2024-10-10T09:37:26.923449587Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }test filter::test::allows_branch_deletion ... "ok,
"level":"DEBG","ts":"2024-10-10T09:37:26.923492877Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923536867Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }",test filter::test::allows_branch_creation ... "oklevel
":"DEBG","ts":"2024-10-10T09:37:26.923589077Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923637827Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923682197Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923717117Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"test filter::test::allows_branch_update ... mainok\"
), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923767867Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923813577Z"}
{"msg":"too many response messages","level":"ERRO","ts":"2024-10-10T09:37:26.923846847Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923895857Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923943077Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.923981908Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924021778Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924059198Z"}
test adapter::test::adapter_outputs_too_many_messages ... {ok
"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924098908Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924138088Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924183278Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924229448Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924282958Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924322908Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }"test filter::test::allows_patch_creation ... ok,
"level":"DEBG","ts":"2024-10-10T09:37:26.924368128Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924412268Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924456758Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924506118Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924553479Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924592469Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924635189Z"}
{"msg":"EventFilter::allows: event=Shutdown","level":"DEBG","ts":"2024-10-10T09:37:26.924676159Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG"test filter::test::allows_shutdown ... ,ok"
ts":"2024-10-10T09:37:26.924709219Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","test filter::test::allows_patch_update ... levelok"
:"DEBG","ts":"2024-10-10T09:37:26.924751999Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924799309Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"other\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924846329Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924893289Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924943109Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.924990919Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925031649Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.92507879Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.92511952Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"other\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG"test filter::test::allows_any_event ... ok
,"ts":"2024-10-10T09:37:26.92515956Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.92520167Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.9252461Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.92528932Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.92532904Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.92537721Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"other\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.9254218Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.92546406Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.92550666Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925546601Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925588051Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925626551Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925680281Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"other\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925725701Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925766241Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925805051Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925845901Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925887001Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.925921981Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","test filter::test::allows_specific_patch ... levelok"
:"DEBG","ts":"2024-10-10T09:37:26.925971131Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"other\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926010041Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926050542Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926089322Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926128242Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"test filter::test::allows_no_event ... 2024-10-10T09:37:26.926167682Zok"
}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926203132Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"other\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926236522Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(bde68ac76ce093bcc583aa612f45e13fee2353a0)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926271422Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926314872Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926353022Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926388242Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926424272Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926461432Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926492832Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(bde68ac76ce093bcc583aa612f45e13fee2353a0)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926523732Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926565233Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926601593Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926634813Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926668033Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926700563Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926732473Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(bde68ac76ce093bcc583aa612f45e13fee2353a0)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926763263Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926807423Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926842553Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926875893Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926910013Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926941723Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.926974623Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(bde68ac76ce093bcc583aa612f45e13fee2353a0)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927012483Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBGtest filter::test::doesnt_allows_other_patch ... "ok
,"ts":"2024-10-10T09:37:26.927058294Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927094144Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927126964Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927163034Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927194884Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927228574Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }"test filter::test::doesnt_allow_any_for_other_branch ... ,ok"
level":"DEBG","ts":"2024-10-10T09:37:26.927270554Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927310454Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927342664Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927376874Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927410424Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927439564Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927476744Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927513894Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927548174Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927582595Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927613185Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927645005Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927674015Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927710225Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927746785Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927781285Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:zwTxygwuz5LDGBq255RA2CbNGrz8), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927812855Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","test filter::test::doesnt_allow_any_for_other_repository ... ts"ok:
"2024-10-10T09:37:26.927844085Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927880005Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927909355Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927948015Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.927987695Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928023255Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928054255Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928086556Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928123026Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928156856Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG"test filter::test::only_allows_branch_creation ... ok
,"ts":"2024-10-10T09:37:26.928190566Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928224176Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928255846Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928297476Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928334996Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928370816Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928410416Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928442406Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928472876Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928510386Z"}
{"msg":"EventFilter::allows: event=BranchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928551816Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928593657Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928628587Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928670257Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928705607Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928740507Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928771967Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928813497Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928847877Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928883337Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928921637Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928956717Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.928990147Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG"test filter::test::allows_opposite ... ,ok"
ts":"2024-10-10T09:37:26.929021957Z"}
{"msg":"EventFilter::allows: event=BranchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4), old_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBGtest filter::test::only_allows_branch_deletion ... "ok
,"ts":"2024-10-10T09:37:26.929063487Z"}
{"msg":test msg::test_push_branch::get_no_push_branch ... "ok
EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929099887Z"}
test msg::test_push_branch::get_push_branch ... ok
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929133707Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929176648Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929213488Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","leveltest filter::test::only_allows_branch_update ... "ok:
"DEBG","ts":"2024-10-10T09:37:26.929257128Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929292388Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929326218Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929362388Z"}
{"msg":"EventFilter::allows: event=BranchDeleted { repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), branch: RefString(\"main\"), tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929400938Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929435098Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929464778Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929496248Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","leveltest filter::test::only_allows_patch_creation ... "ok:
"DEBG","ts":"2024-10-10T09:37:26.929535208Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929573898Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929608308Z"}
{"msg":"EventFilter::allows: event=PatchCreated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929642528Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929676668Z"}
test filter::test::only_allows_patch_update ... ok{
"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929706628Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level"test run::test::serialize_run_state ... :ok"
DEBG","ts":"2024-10-10T09:37:26.929737909Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929767409Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929796539Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929825579Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929854749Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929884439Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929913989Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929942749Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","ts":"2024-10-10T09:37:26.929973429Z"}
{"msg":"EventFilter::allows: event=PatchUpdated { from_node: PublicKey(z6MkgEMYod7Hxfy9qCvDv5hYHkZ4ciWmLFgfvm3Wn1b2w2FV), repo: RepoId(rad:z3gqcJUoA1n9HaHKufZs5FCSGazv5), patch: ObjectId(Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4)), new_tip: Oid(ff3099ba5de28d954c41d0b5a84316f943794ea4) }","level":"DEBG","test filter::test::allows_if_any_allows ... tsok"
:"2024-10-10T09:37:26.930002259Z"}
test filter::test::allows_if_all_allow ... ok
{"msg":"no first response message","level":"ERRO","ts":"2024-10-10T09:37:26.932166023Z"}
{"msg":"test adapter::test::adapter_does_not_exist ... no second response message"ok,
"level":"ERRO","ts":"2024-10-10T09:37:26.932199243Z"}
{"msg":"adapter was terminated by signal","level":"DEBG","ts":"2024-10-10T09:37:26.932231733Z"}
{"msg":"adapter did not exit voluntarily","level":"WARN","ts":"2024-10-10T09:37:26.932256083Z"}
test adapter::test::adapter_is_killed_before_any_messages ... ok
test adapter::test::adapter_has_bad_interpreter ... ok
{"msg":"adapter exit code","level":"DEBG","ts":"2024-10-10T09:37:26.93570037Z","exit_code":0}
test adapter::test::adapter_reports_failure ... ok
test msg::trigger_from_ci_event_tests::trigger_push_from_branch_created ... ok
test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_created ... ok
test msg::trigger_from_ci_event_tests::trigger_push_from_branch_updated ... ok
test msg::trigger_from_ci_event_tests::trigger_patch_from_patch_updated ... ok
{"msg":"adapter exit code","level":"DEBG","ts":"2024-10-10T09:37:27.226499543Z","exit_code":1}
{"msg":"adapter stderr","level":"DEBG","ts":"2024-10-10T09:37:27.226578063Z","stderr":"woe be me"}
test broker::test::has_no_adapters_initially ... ok
test broker::test::finds_default_adapter_for_unknown_repo ... ok
{"msg":"failed to run adapter or it failed to run CI: child process failed with wait status 1","level":"ERRO","ts":"2024-10-10T09:37:27.299215659Z"}
{"msg":"Finish CI run","level":"INFO","ts":"2024-10-10T09:37:27.299263759Z"}
{"msg":"finished CI run: Run {\n    broker_run_id: RunId {\n        id: \"c78995f5-9e6a-4ca7-9d91-d120489ba769\",\n    },\n    adapter_run_id: Some(\n        RunId {\n            id: \"xyzzy\",\n        },\n    ),\n    adapter_info_url: None,\n    repo_id: RepoId(rad:z2r8nWoCicSocYh8fwphrgrEyMcL4),\n    repo_name: \"acme\",\n    timestamp: \"2024-10-10 09:37:26Z\",\n    whence: Branch {\n        name: \"push-event-has-no-branch-name\",\n        commit: Oid(\n            532c92e4ec973d79c25652c581ae82d238e46a06,\n        ),\n        who: Some(\n            \"did:key:z6MktoL2vYh3KPuV7Rfag4jS8Ci2pfeuwfoJ1EeqhCcENGSs\",\n        ),\n    },\n    state: Finished,\n    result: Some(\n        Success,\n    ),\n}","level":"DEBG","ts":"2024-10-10T09:37:27.299410499Z"}
test broker::test::adapter_fails ... ok
test broker::test::sets_a_default_adapter_initially ... ok
{"msg":"start CI run","level":"INFO","ts":"2024-10-10T09:37:27.317463043Z"}
{"msg":"trigger event: Trigger {\n    common: EventCommonFields {\n        version: 1,\n        event_type: Push,\n        repository: Repository {\n            id: RepoId(rad:z4E61hdMvD9RMAN1G5sgePCAw3GoZ),\n            name: \"acme\",\n            description: \"Acme's repository\",\n            private: false,\n            default_branch: \"master\",\n            delegates: [\n                Did(\"did:key:z6Mko8qAnfscF2yZrWU4FnW18y4M9P9WSZaUcpCFZdeCGzBw\"),\n            ],\n        },\n    },\n    push: Some(\n        PushEvent {\n            pusher: Author {\n                id: Did(\"did:key:z6Mko8qAnfscF2yZrWU4FnW18y4M9P9WSZaUcpCFZdeCGzBw\"),\n                alias: None,\n            },\n            before: Oid(\n                532c92e4ec973d79c25652c581ae82d238e46a06,\n            ),\n            after: Oid(\n                532c92e4ec973d79c25652c581ae82d238e46a06,\n            ),\n            branch: \"master\",\n            commits: [\n                Oid(\n                    532c92e4ec973d79c25652c581ae82d238e46a06,\n                ),\n            ],\n        },\n    ),\n    patch: None,\n}","level":"DEBG","ts":"2024-10-10T09:37:27.317627613Z"}
{"msg":"adapter exit code","level":"DEBG","ts":"2024-10-10T09:37:27.446061764Z","exit_code":0}
{"msg":"Finish CI run","level":"INFO","ts":"2024-10-10T09:37:27.498394571Z"}
{"msg":"finished CI run: Run {\n    broker_run_id: RunId {\n        id: \"ed167c9e-eb27-4aeb-b1b2-0d3464a744e2\",\n    },\n    adapter_run_id: Some(\n        RunId {\n            id: \"xyzzy\",\n        },\n    ),\n    adapter_info_url: None,\n    repo_id: RepoId(rad:z4E61hdMvD9RMAN1G5sgePCAw3GoZ),\n    repo_name: \"acme\",\n    timestamp: \"2024-10-10 09:37:27Z\",\n    whence: Branch {\n        name: \"push-event-has-no-branch-name\",\n        commit: Oid(\n            532c92e4ec973d79c25652c581ae82d238e46a06,\n        ),\n        who: Some(\n            \"did:key:z6Mko8qAnfscF2yZrWU4FnW18y4M9P9WSZaUcpCFZdeCGzBw\",\n        ),\n    },\n    state: Finished,\n    result: Some(\n        Success,\n    ),\n}","level":"DEBG","ts":"2024-10-10T09:37:27.498636451Z"}
test broker::test::executes_adapter ... ok

test result: ok. 64 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.05s

     Running unittests src/bin/cib.rs (target/debug/deps/cib-e5ef2dce4f549f93)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/bin/cibtool.rs (target/debug/deps/cibtool-cd3b98f2d207499f)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running unittests src/bin/synthetic-events.rs (target/debug/deps/synthetic_events-b2fdc3bad4d4e685)

running 0 tests

test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s

     Running tests/subplot.rs (target/debug/deps/subplot-7179c89003a8b7e7)

running 37 tests
test adapter_with_url_runs_successfully ... ok
test dummy_adapter_runs_successfully ... ok
test add_information_about_triggered_run_to_database ... FAILED
test add_information_about_run_that_s_running_to_database ... FAILED
test convert_recorded_node_events_into_ci_events ... FAILED
test adapter_can_provide_url_for_info_on_run ... FAILED
test add_information_about_run_that_s_finished_in_failure_to_database ... FAILED
test can_trigger_a_ci_run ... FAILED
test don_t_insert_events_into_queue_when_not_allowed_by_filter ... FAILED
test acceptance_criteria_for_upgrades ... FAILED
test add_information_about_run_that_s_finished_successfully_to_database ... FAILED
test don_t_insert_event_for_non_existent_repository ... FAILED
test allows_setting_minimum_log_level ... FAILED
test events_can_be_queued_and_removed_from_queue ... FAILED
test filter_recorded_ci_events ... FAILED
test gives_helpful_error_message_if_node_socket_can_t_be_found ... FAILED
test gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file ... FAILED
test produces_a_report_page_upon_request ... FAILED
test logs_start_and_successful_end ... FAILED
test produces_a_json_status_file ... FAILED
test insert_events_into_queue ... FAILED
test process_queued_events ... FAILED
test insert_many_events_into_queue ... FAILED
test logs_adapter_stderr_output ... FAILED
test we_can_run_rad ... FAILED
test record_node_events ... FAILED
test reports_it_version ... FAILED
test shuts_down_when_requested ... FAILED
test smoke_test__runs_adapter ... FAILED
test stops_if_the_node_connection_breaks ... FAILED
test update_and_show_information_about_run_to_running ... FAILED
test shows_config_as_json ... ok
test logs_termination_due_to_error ... FAILED
test can_add_shutdown_event_to_queue ... ok
test event_synthesizer_terminates_after_first_connection ... ok
test count_in_a_single_process has been running for over 60 seconds
test count_in_concurrent_processes has been running for over 60 seconds
test count_in_a_single_process ... ok
test count_in_concurrent_processes ... ok

failures:

---- add_information_about_triggered_run_to_database stdout ----
unknown: scenario: Add information about triggered run to database
ci-broker.md:979:1:   step: given file radenv.sh
ci-broker.md:980:1:   step: given file setup-node.sh
ci-broker.md:981:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplot54MiuAdd-information-about-triggered-run-to-database
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplot54MiuAdd-information-about-triggered-run-to-database/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'add_information_about_triggered_run_to_database' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:3404:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

---- add_information_about_run_that_s_running_to_database stdout ----
unknown: scenario: Add information about run that's running to database
ci-broker.md:1002:1:   step: given file radenv.sh
ci-broker.md:1003:1:   step: given file setup-node.sh
ci-broker.md:1004:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotIpA9fAdd-information-about-run-that-s-running-to-database
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotIpA9fAdd-information-about-run-that-s-running-to-database/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'add_information_about_run_that_s_running_to_database' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:3538:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- convert_recorded_node_events_into_ci_events stdout ----
unknown: scenario: Convert recorded node events into CI events
ci-broker.md:1191:1:   step: given file radenv.sh
ci-broker.md:1192:1:   step: given file setup-node.sh
ci-broker.md:1193:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotznC3qConvert-recorded-node-events-into-CI-events
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotznC3qConvert-recorded-node-events-into-CI-events/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'convert_recorded_node_events_into_ci_events' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:4708:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- adapter_can_provide_url_for_info_on_run stdout ----
unknown: scenario: Adapter can provide URL for info on run
ci-broker.md:315:1:   step: given file radenv.sh
ci-broker.md:316:1:   step: given file setup-node.sh
ci-broker.md:317:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotecNxjAdapter-can-provide-URL-for-info-on-run
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotecNxjAdapter-can-provide-URL-for-info-on-run/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'adapter_can_provide_url_for_info_on_run' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:819:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- add_information_about_run_that_s_finished_in_failure_to_database stdout ----
unknown: scenario: Add information about run that's finished in failure to database
ci-broker.md:1052:1:   step: given file radenv.sh
ci-broker.md:1053:1:   step: given file setup-node.sh
ci-broker.md:1054:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotuXSXPAdd-information-about-run-that-s-finished-in-failure-to-database
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotuXSXPAdd-information-about-run-that-s-finished-in-failure-to-database/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'add_information_about_run_that_s_finished_in_failure_to_database' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:3847:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- can_trigger_a_ci_run stdout ----
unknown: scenario: Can trigger a CI run
ci-broker.md:957:1:   step: given file radenv.sh
ci-broker.md:958:1:   step: given file setup-node.sh
ci-broker.md:959:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotEqKjHCan-trigger-a-CI-run
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotEqKjHCan-trigger-a-CI-run/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'can_trigger_a_ci_run' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:3270:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- don_t_insert_events_into_queue_when_not_allowed_by_filter stdout ----
unknown: scenario: Don't insert events into queue when not allowed by filter
ci-broker.md:742:1:   step: given file radenv.sh
ci-broker.md:743:1:   step: given file setup-node.sh
ci-broker.md:744:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subploti0T9hDon-t-insert-events-into-queue-when-not-allowed-by-filter
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subploti0T9hDon-t-insert-events-into-queue-when-not-allowed-by-filter/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'don_t_insert_events_into_queue_when_not_allowed_by_filter' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:2596:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- acceptance_criteria_for_upgrades stdout ----
unknown: scenario: Acceptance criteria for upgrades
ci-broker.md:1401:1:   step: given file radenv.sh
ci-broker.md:1402:1:   step: given file setup-node.sh
ci-broker.md:1403:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotrk67zAcceptance-criteria-for-upgrades
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotrk67zAcceptance-criteria-for-upgrades/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'acceptance_criteria_for_upgrades' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:5501:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- add_information_about_run_that_s_finished_successfully_to_database stdout ----
unknown: scenario: Add information about run that's finished successfully to database
ci-broker.md:1027:1:   step: given file radenv.sh
ci-broker.md:1028:1:   step: given file setup-node.sh
ci-broker.md:1029:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotwmXqNAdd-information-about-run-that-s-finished-successfully-to-database
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotwmXqNAdd-information-about-run-that-s-finished-successfully-to-database/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'add_information_about_run_that_s_finished_successfully_to_database' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:3681:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- don_t_insert_event_for_non_existent_repository stdout ----
unknown: scenario: Don't insert event for non-existent repository
ci-broker.md:1129:1:   step: given file radenv.sh
ci-broker.md:1130:1:   step: given file setup-node.sh
ci-broker.md:1131:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotImBM3Don-t-insert-event-for-non-existent-repository
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotImBM3Don-t-insert-event-for-non-existent-repository/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'don_t_insert_event_for_non_existent_repository' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:4364:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- allows_setting_minimum_log_level stdout ----
unknown: scenario: Allows setting minimum log level
ci-broker.md:524:1:   step: given file radenv.sh
ci-broker.md:525:1:   step: given file setup-node.sh
ci-broker.md:526:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotYITnWAllows-setting-minimum-log-level
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotYITnWAllows-setting-minimum-log-level/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'allows_setting_minimum_log_level' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:1765:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- events_can_be_queued_and_removed_from_queue stdout ----
unknown: scenario: Events can be queued and removed from queue
ci-broker.md:904:1:   step: given file radenv.sh
ci-broker.md:905:1:   step: given file setup-node.sh
ci-broker.md:906:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotw4Ux6Events-can-be-queued-and-removed-from-queue
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotw4Ux6Events-can-be-queued-and-removed-from-queue/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'events_can_be_queued_and_removed_from_queue' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:3082:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- filter_recorded_ci_events stdout ----
unknown: scenario: Filter recorded CI events
ci-broker.md:1219:1:   step: given file radenv.sh
ci-broker.md:1220:1:   step: given file setup-node.sh
ci-broker.md:1221:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotyvEsFFilter-recorded-CI-events
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotyvEsFFilter-recorded-CI-events/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'filter_recorded_ci_events' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:4947:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- gives_helpful_error_message_if_node_socket_can_t_be_found stdout ----
unknown: scenario: Gives helpful error message if node socket can't be found
ci-broker.md:355:1:   step: given file radenv.sh
ci-broker.md:356:1:   step: given file setup-node.sh
ci-broker.md:357:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotxsVCOGives-helpful-error-message-if-node-socket-can-t-be-found
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotxsVCOGives-helpful-error-message-if-node-socket-can-t-be-found/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'gives_helpful_error_message_if_node_socket_can_t_be_found' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:928:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file stdout ----
unknown: scenario: Gives helpful error message if it doesn't understand its configuration file
ci-broker.md:383:1:   step: given file radenv.sh
ci-broker.md:384:1:   step: given file setup-node.sh
ci-broker.md:385:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplot4y1tsGives-helpful-error-message-if-it-doesn-t-understand-its-configuration-file
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplot4y1tsGives-helpful-error-message-if-it-doesn-t-understand-its-configuration-file/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:1054:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- produces_a_report_page_upon_request stdout ----
unknown: scenario: Produces a report page upon request
ci-broker.md:468:1:   step: given file radenv.sh
ci-broker.md:469:1:   step: given file setup-node.sh
ci-broker.md:470:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotcjXkqProduces-a-report-page-upon-request
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotcjXkqProduces-a-report-page-upon-request/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'produces_a_report_page_upon_request' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:1449:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- logs_start_and_successful_end stdout ----
unknown: scenario: Logs start and successful end
ci-broker.md:1291:1:   step: given file radenv.sh
ci-broker.md:1292:1:   step: given file setup-node.sh
ci-broker.md:1293:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotqzlVqLogs-start-and-successful-end
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotqzlVqLogs-start-and-successful-end/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'logs_start_and_successful_end' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:5104:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- produces_a_json_status_file stdout ----
unknown: scenario: Produces a JSON status file
ci-broker.md:1348:1:   step: given file radenv.sh
ci-broker.md:1349:1:   step: given file setup-node.sh
ci-broker.md:1350:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotlgIHcProduces-a-JSON-status-file
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotlgIHcProduces-a-JSON-status-file/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'produces_a_json_status_file' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:5305:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- insert_events_into_queue stdout ----
unknown: scenario: Insert events into queue
ci-broker.md:682:1:   step: given file radenv.sh
ci-broker.md:683:1:   step: given file setup-node.sh
ci-broker.md:684:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotQjYHJInsert-events-into-queue
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotQjYHJInsert-events-into-queue/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'insert_events_into_queue' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:2276:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- process_queued_events stdout ----
unknown: scenario: Process queued events
ci-broker.md:776:1:   step: given file radenv.sh
ci-broker.md:777:1:   step: given file setup-node.sh
ci-broker.md:778:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotWOmjBProcess-queued-events
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotWOmjBProcess-queued-events/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'process_queued_events' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:2845:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- insert_many_events_into_queue stdout ----
unknown: scenario: Insert many events into queue
ci-broker.md:712:1:   step: given file radenv.sh
ci-broker.md:713:1:   step: given file setup-node.sh
ci-broker.md:714:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplothT0nHInsert-many-events-into-queue
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplothT0nHInsert-many-events-into-queue/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'insert_many_events_into_queue' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:2434:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- logs_adapter_stderr_output stdout ----
unknown: scenario: Logs adapter stderr output
ci-broker.md:496:1:   step: given file radenv.sh
ci-broker.md:497:1:   step: given file setup-node.sh
ci-broker.md:498:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplot8cBBTLogs-adapter-stderr-output
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplot8cBBTLogs-adapter-stderr-output/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'logs_adapter_stderr_output' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:1629:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- we_can_run_rad stdout ----
unknown: scenario: We can run rad
ci-broker.md:561:1:   step: given file radenv.sh
ci-broker.md:562:1:   step: when I run bash radenv.sh rad --version
Running `bash` with args ["radenv.sh", "rad", "--version"]
Running in /tmp/subplotXBL9CWe-can-run-rad
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
env: ‘rad’: No such file or directory


  return: Failure
thread 'we_can_run_rad' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:1813:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- record_node_events stdout ----
unknown: scenario: Record node events
ci-broker.md:1164:1:   step: given file radenv.sh
ci-broker.md:1165:1:   step: given file setup-node.sh
ci-broker.md:1166:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplothWlpXRecord-node-events
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplothWlpXRecord-node-events/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'record_node_events' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:4522:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- reports_it_version stdout ----
unknown: scenario: Reports it version
ci-broker.md:285:1:   step: given file radenv.sh
ci-broker.md:286:1:   step: given file setup-node.sh
ci-broker.md:287:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotbWIEAReports-it-version
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotbWIEAReports-it-version/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'reports_it_version' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:610:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- shuts_down_when_requested stdout ----
unknown: scenario: Shuts down when requested
ci-broker.md:442:1:   step: given file radenv.sh
ci-broker.md:443:1:   step: given file setup-node.sh
ci-broker.md:444:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotbKQkvShuts-down-when-requested
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotbKQkvShuts-down-when-requested/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'shuts_down_when_requested' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:1327:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- smoke_test__runs_adapter stdout ----
unknown: scenario: Smoke test: Runs adapter
ci-broker.md:242:1:   step: given file radenv.sh
ci-broker.md:243:1:   step: given file setup-node.sh
ci-broker.md:244:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotgK5q2Smoke-test--Runs-adapter
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotgK5q2Smoke-test--Runs-adapter/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'smoke_test__runs_adapter' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:495:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- stops_if_the_node_connection_breaks stdout ----
unknown: scenario: Stops if the node connection breaks
ci-broker.md:413:1:   step: given file radenv.sh
ci-broker.md:414:1:   step: given file setup-node.sh
ci-broker.md:415:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplot9G8QiStops-if-the-node-connection-breaks
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplot9G8QiStops-if-the-node-connection-breaks/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'stops_if_the_node_connection_breaks' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:1172:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- update_and_show_information_about_run_to_running stdout ----
unknown: scenario: Update and show information about run to running
ci-broker.md:1079:1:   step: given file radenv.sh
ci-broker.md:1080:1:   step: given file setup-node.sh
ci-broker.md:1081:1:   step: when I run bash radenv.sh bash setup-node.sh
Running `bash` with args ["radenv.sh", "bash", "setup-node.sh"]
Running in /tmp/subplotHU210Update-and-show-information-about-run-to-running
ENV: SHELL = /bin/sh
PATH: /home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 127
Stdout:

Stderr:
+ mkdir -p /tmp/subplotHU210Update-and-show-information-about-run-to-running/homedir
+ rad auth --alias brokertest
setup-node.sh: line 7: rad: command not found


  return: Failure
thread 'update_and_show_information_about_run_to_running' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:4191:20:
called `Result::unwrap()` on an `Err` value: "expected exit code 0, but had Some(127)"

---- logs_termination_due_to_error stdout ----
unknown: scenario: Logs termination due to error
ci-broker.md:1322:1:   step: given an installed cib
ci-broker.md:1324:1:   step: given file broker.yaml
ci-broker.md:1325:1:   step: when I try to run cib --config broker.yaml queued
Running `cib` with args ["--config", "broker.yaml", "queued"]
Running in /tmp/subplotriyRNLogs-termination-due-to-error
ENV: SHELL = /bin/sh
PATH: /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug:/home/_rad/.cargo/bin:/bin:/usr/bin:/sbin:/usr/sbin
Exit code: 101
Stdout:

Stderr:
{"msg":"CI broker starts","level":"INFO","ts":"2024-10-10T09:37:27.526538044Z","version":"85efaa1"}
{"msg":"loaded configuration Config {\n    default_adapter: \"mcadapterface\",\n    adapters: {\n        \"mcadapterface\": Adapter { \n         command: \"./adapter.sh\", \n         env: {\n            \"RADICLE_NATIVE_CI\": \"native-ci.yaml\",\n        }, \n         sensitive_env: {} },\n    },\n    filters: [\n        Branch(\n            RefString(\n                \"main\",\n            ),\n        ),\n    ],\n    report_dir: Some(\n        \"reports\",\n    ),\n    status_update_interval_seconds: None,\n    db: \"ci-broker.db\",\n}","level":"DEBG","ts":"2024-10-10T09:37:27.530813152Z"}
{"msg":"broker database: ci-broker.db","level":"INFO","ts":"2024-10-10T09:37:27.534574269Z"}
{"msg":"adapter configuration Config {\n    default_adapter: \"mcadapterface\",\n    adapters: {\n        \"mcadapterface\": Adapter { \n         command: \"./adapter.sh\", \n         env: {\n            \"RADICLE_NATIVE_CI\": \"native-ci.yaml\",\n        }, \n         sensitive_env: {} },\n    },\n    filters: [\n        Branch(\n            RefString(\n                \"main\",\n            ),\n        ),\n    ],\n    report_dir: Some(\n        \"reports\",\n    ),\n    status_update_interval_seconds: None,\n    db: \"ci-broker.db\",\n}","level":"DEBG","ts":"2024-10-10T09:37:27.959349193Z"}
{"msg":"start thread to process events until a shutdown event","level":"INFO","ts":"2024-10-10T09:37:27.965645605Z"}
{"msg":"event notification channel disconnected","level":"INFO","ts":"2024-10-10T09:37:27.965827055Z"}
{"msg":"thread to process events ends","level":"INFO","ts":"2024-10-10T09:37:27.965860575Z"}
{"msg":"start page updater thread","level":"INFO","ts":"2024-10-10T09:37:27.966355126Z"}
{"msg":"wait about 60 seconds to update HTML report pages again","level":"INFO","ts":"2024-10-10T09:37:27.966415686Z"}
thread 'main' panicked at src/bin/cib.rs:201:14:
page updater thread succeeded: Write("reports/index.html", Os { code: 2, kind: NotFound, message: "No such file or directory" })
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace


ci-broker.md:1327:1:   step: then stderr contains "CI broker starts"
ci-broker.md:1328:1:   step: then stderr contains "CI broker ends in unrecoverable error"
  return: Failure
thread 'logs_termination_due_to_error' panicked at /srv/http/7476e102-e40c-4c59-9d40-5b0af3b34d2c/src/target/debug/build/radicle-ci-broker-c935a0999709d40b/out/ci-broker.rs:5170:20:
called `Result::unwrap()` on an `Err` value: "stderr does not contain \"CI broker ends in unrecoverable error\""


failures:
    acceptance_criteria_for_upgrades
    adapter_can_provide_url_for_info_on_run
    add_information_about_run_that_s_finished_in_failure_to_database
    add_information_about_run_that_s_finished_successfully_to_database
    add_information_about_run_that_s_running_to_database
    add_information_about_triggered_run_to_database
    allows_setting_minimum_log_level
    can_trigger_a_ci_run
    convert_recorded_node_events_into_ci_events
    don_t_insert_event_for_non_existent_repository
    don_t_insert_events_into_queue_when_not_allowed_by_filter
    events_can_be_queued_and_removed_from_queue
    filter_recorded_ci_events
    gives_helpful_error_message_if_it_doesn_t_understand_its_configuration_file
    gives_helpful_error_message_if_node_socket_can_t_be_found
    insert_events_into_queue
    insert_many_events_into_queue
    logs_adapter_stderr_output
    logs_start_and_successful_end
    logs_termination_due_to_error
    process_queued_events
    produces_a_json_status_file
    produces_a_report_page_upon_request
    record_node_events
    reports_it_version
    shuts_down_when_requested
    smoke_test__runs_adapter
    stops_if_the_node_connection_breaks
    update_and_show_information_about_run_to_running
    we_can_run_rad

test result: FAILED. 7 passed; 30 failed; 0 ignored; 0 measured; 0 filtered out; finished in 70.18s

error: test failed, to rerun pass `--test subplot`
   Doc-tests radicle_ci_broker

running 1 test
test src/msg.rs - msg::RunId (line 44) ... ok

test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.74s

error: 1 target failed:
    `--test subplot`