Elvis Konjoh Selabi, Maurizio Murgia, António Ravara, Emilio Tuosto
The companion paper proposes a formal approach for specifying and implementing decentralised coordination in distributed systems, with a focus on smart contracts. The model captures dynamic roles, data-driven transitions, and external coordination interfaces, enabling high-level reasoning about decentralised workflows. A toolchain supports formal model validation, Solidity code generation (extensible to other smart contract languages), and automated test synthesis. Although targeting blockchain platforms, the methodology is platform-agnostic and may generalise to other service-oriented and distributed architectures. The expressiveness and practicality of the approach are demonstrated through modelling and realising coordination patterns in smart contracts. This artifact accompanies our paper [Elvis Konjoh Selabi et al., 2026]. It provides a toolchain for generating smart contract code from EDAM (Extended Data-Aware Machines) specifications. The artifact includes the complete source code, a Docker image for easy deployment, pre-generated experiment data (generated code, automated tests, and mutation testing results), and reproduction scripts.
Smart contracts are high-stakes software: their immutable, publicly accessible code may govern assets worth millions. This means that even minor defects can have severe consequences. Unit tests often miss edge cases. Although formal verification is the only route to full correctness, it demands substantial time and expertise. Property-based testing bridges this gap by exploring large input spaces and shrinking failures to minimal counterexamples. Used early, it filters defects and prioritises verification effort on code already validated by tests. Although Solidity benefits from a mature testing ecosystem, comparable support for other languages such as Daml remains limited. This dissertation addresses this gap by introducing Hypothesis2Daml, an open-source library that brings property-based testing to Damlby connecting Hypothesis withthe Daml JSON API. Hypothesis2Daml enables developers to specify invariants, pre/postconditions, and stateful workflows over realistic ledger interactions. It provides automatic input generation, shrinking to minimal counterexamples, party isolation per example, and request helpers that keep tests focused on properties rather than HTTP/JSON wiring. The approach is validated on a benchmark of eight contracts and twenty-seven properties that range from simple invariants to multi-step, role-sensitive workflows. All properties held under testing, with runs completing within practical time bounds, demonstrating that property-based testing is feasible and effective for Daml applications. A comparative evaluation situates Hypothesis2Daml among established tools and methods, highlighting strengths in usability and expressiveness, and acknowledging a throughput trade-off due to JSON-API transport overhead. Contributions include the Hypothesis2Daml library and a reusable benchmark with representative properties. Limitations concern transport overhead, ecosystem specificity, and dependence on developer-authored properties and generators. Future work targets automation, performance, andscope expansion. Together, these results establish a practical path for making property-based testing a routine part of building Daml applications.
Software services are crucial for reliable communication and networking; therefore, Site Reliability Engineering (SRE) is important to ensure these systems stay reliable and perform well in cloud-native environments. SRE leverages tools like Prometheus and Grafana to monitor system metrics, defining critical Service Level Indicators (SLIs) and Service Level Objectives (SLOs) for maintaining high service standards. However, a significant challenge arises as many developers often lack in-depth understanding of these tools and the intricacies involved in defining appropriate SLIs and SLOs. To bridge this gap, we propose a novel SRE platform, called SRE-Llama, enhanced by Generative-AI, Federated Learning, Blockchain, and Non-Fungible Tokens (NFTs). This platform aims to automate and simplify the process of monitoring, SLI/SLO generation, and alert management, offering ease in accessibility and efficy for developers. The system operates by capturing metrics from cloud-native services and storing them in a time-series database, like Prometheus and Mimir. Utilizing this stored data, our platform employs Federated Learning models to identify the most relevant and impactful SLI metrics for different services and SLOs, addressing concerns around data privacy. Subsequently, fine-tuned Meta's Llama-3 LLM is adopted to intelligently generate SLIs, SLOs, error budgets, and associated alerting mechanisms based on these identified SLI metrics. A unique aspect of our platform is the encoding of generated SLIs and SLOs as NFT objects, which are then stored on a Blockchain. This feature provides immutable record-keeping and facilitates easy verification and auditing of the SRE metrics and objectives. The automation of the proposed platform is governed by the blockchain smart contracts. The proposed SRE-Llama platform prototype has been implemented with a use case featuring a customized Open5GS 5G Core.
We present the availability and reproducibility report of the ACM SIGMOD 2025 paper titled ''InTime: Towards Performance Predictability In Byzantine Fault Tolerant Proof-of-Stake Consensus''. Following the instructions provided the authors, we evaluated the artifacts hosted on Github. The reviewers confirmed that the codebase is functional and evaluatable. Reproducibility was straightforward as the authors provided automated scripts that simplified the execution of experiments. Experiments on single machine were reproduced while experiments requiring a large cluster of machines are constrained by limited resource capacity and instructions. Hence, the paper's core claims were partially reproduced.
This paper aims to discuss the function of software in satellite system and the reliability analysis of satellite software. Firstly, the overview of satellite system and the importance of software in it are introduced. Then, the concept of reliability, reliability evaluation method and factors affecting reliability of satellite software are expounded in detail. Then, the strategy to improve the reliability of satellite software is discussed. Finally, the article looks forward to the future development trend of satellite software reliability, including the application of artificial intelligence, machine learning, and distributed ledger technology. These new technologies are expected to further improve the reliability of satellite pieces and provide a solid guarantee for the safety of satellite communication.
The ability to create decentralized applications without the authority of a single entity has attracted numerous developers to build applications using blockchain technology. However, ensuring the correctness of such applications poses significant challenges, as it can result in financial losses or, even worse, a loss of user trust. Testing smart contracts introduces a unique set of challenges due to the additional restrictions and costs imposed by blockchain platforms during test case execution. Therefore, it remains uncertain whether testing techniques developed for traditional software can effectively be adapted to smart contracts. In this study, we propose a multi-objective test selection technique for smart contracts that aims to balance three objectives: time, coverage, and gas usage. We evaluated our approach using a comprehensive selection of real-world smart contracts and compared the results with various test selection methods employed in traditional software systems. Statistical analysis of our experiments, which utilized benchmark Solidity smart contract case studies, demonstrates that our approach significantly reduces the testing cost while still maintaining acceptable fault detection capabilities. This is in comparison to random search, mono-objective search, and the traditional re-testing method that does not employ heuristic search.
Learning heterogeneous graphs consisting of different types of nodes and edges enhances the results of homogeneous graph techniques. An interesting example of such graphs is control-flow graphs representing possible software code execution flows. As such graphs represent more semantic information of code, developing techniques and tools for such graphs can be highly beneficial for detecting vulnerabilities in software for its reliability. However, existing heterogeneous graph techniques are still insufficient in handling complex graphs where the number of different types of nodes and edges is large and variable. This paper concentrates on the Ethereum smart contracts as a sample of software codes represented by heterogeneous contract graphs built upon both control-flow graphs and call graphs containing different types of nodes and links. We propose MANDO, a new heterogeneous graph representation to learn such heterogeneous contract graphs’ structures. MANDO extracts customized meta-paths, which compose relational connections between different types of nodes and their neighbors. Moreover, it develops a multi-metapath heterogeneous graph attention network to learn multi-level embeddings of different types of nodes and their metapaths in the heterogeneous contract graphs, which can capture the code semantics of smart contracts more accurately and facilitate both fine-grained line-level and coarse-grained contract-level vulnerability detection. Our extensive evaluation of large smart contract datasets shows that MANDO improves the vulnerability detection results of other techniques at the coarse-grained contract level. More importantly, it is the first learning-based approach capable of identifying vulnerabilities at the fine-grained line-level, and significantly improves the traditional code analysis-based vulnerability detection approaches by 11.35% to 70.81% in terms of F1-score.
The rapid evolution of distributed systems during the 2010s fundamentally altered how software systems were designed, deployed, and operated, particularly in cloud-based and service-oriented environments. As organizations increasingly decomposed monolithic applications into microservices and event-driven components, traditional monitoring approaches centered on host-level metrics and reactive alerting proved insufficient. Failures became probabilistic rather than deterministic, symptoms emerged far from root causes, and system behavior could no longer be fully inferred from static architecture diagrams or predefined dashboards. Within this context, observability emerged not merely as an operational concern but as an engineering discipline that directly influences how systems are designed, instrumented, and evolved over time. Observability driven engineering refers to the practice of designing software systems such that their internal states can be inferred through externally visible signals under real-world operating conditions. By 2019, this concept had gained traction across distributed systems research and industry practice, informed by earlier control theory definitions and reinforced by practical challenges in debugging production microservices. Rather than treating telemetry as an afterthought added during operations, observability driven engineering integrates metrics, logs, and distributed traces into the development lifecycle itself, shaping interface contracts, failure semantics, and deployment strategies. This shift reflects a recognition that correctness, reliability, and performance in complex systems cannot be validated solely through pre-production testing. In regulated domains such as financial services, the need for observability carries additional significance. Payment processing systems, fraud detection pipelines, and ledger services operate under strict latency, consistency, and auditability requirements, while simultaneously being subject to partial failures, traffic bursts, and external dependencies. In such environments, the inability to explain system behavior during anomalies is not merely an inconvenience but a material operational and regulatory risk. Observability driven engineering therefore intersects with compliance obligations, incident response processes, and risk management practices, extending its relevance beyond purely technical concerns. This paper examines observability driven engineering as understood and practiced by May 2019, situating it within the broader evolution of software architecture from monolithic systems to distributed, cloud-native platforms. It synthesizes academic literature and industry experience to articulate a conceptual model for observability-aware system design, emphasizing the relationship between instrumentation, architectural layering, and operational feedback loops.
It is undeniable that artificial intelligence (AI) and blockchain concepts are spreading at a phenomenal rate. Both technologies have distinct degree of technological complexity and multi-dimensional business implications. However, a common misunderstanding about blockchain concept, in particular, is that blockchain is decentralized and is not controlled by anyone. But the underlying development of a blockchain system is still attributed to a cluster of core developers. Take smart contract as an example, it is essentially a collection of codes (or functions) and data (or states) that are programmed and deployed on a blockchain (say, Ethereum) by different human programmers. It is thus, unfortunately, less likely to be free of loopholes and flaws. In this article, through a brief overview about how artificial intelligence could be used to deliver bug-free smart contract so as to achieve the goal of blockchain 2.0, we to emphasize that the blockchain implementation can be assisted or enhanced via various AI techniques. The alliance of AI and blockchain is expected to create numerous possibilities.