Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
048c732
feat(M001): implement core architecture design
MoDa-Browser Mar 28, 2026
433a5fa
docs(M001): update technical evaluation to Rust-first approach
MoDa-Browser Mar 29, 2026
1ac79fb
fix: improve code quality and fix potential issues
MoDa-Browser Mar 29, 2026
39b922c
style: fix formatting issues reported by CI
MoDa-Browser Mar 29, 2026
12fe9b0
fix: resolve all compilation and diagnostic errors
MoDa-Browser Mar 29, 2026
27e76f8
style: fix import order and function signature formatting
MoDa-Browser Mar 29, 2026
56672b9
fix(storage): 修复解密时未移除填充的问题
MoDa-Browser Apr 3, 2026
bcf39a3
style: 修复代码格式问题
MoDa-Browser Apr 3, 2026
4e1e62f
refactor: 修复Clippy警告
MoDa-Browser Apr 3, 2026
5c8c570
style: 移除多余空行
MoDa-Browser Apr 3, 2026
66515fa
ci: 修复安全审计和代码覆盖率配置
MoDa-Browser Apr 3, 2026
55048fe
security: 使用AES-GCM替代不安全的XOR加密
MoDa-Browser Apr 3, 2026
f2dc056
style: 格式化IPC安全模块代码
MoDa-Browser Apr 3, 2026
14f27ed
Merge pull request #4 from Ink-dark/feature/M001-core-architecture
MoDa-Browser Apr 3, 2026
d361c73
fix(security): 使用AES-GCM替代不安全的XOR加密
MoDa-Browser Apr 3, 2026
2c1e901
docs(M001): 添加完整的M001变更说明文档
MoDa-Browser Apr 3, 2026
c0f6825
fix(security): 使用AES-GCM替代不安全的XOR加密
Ink-dark Apr 3, 2026
494dc64
fix(ci): 修复提交信息检查脚本,使用%s只检查第一行
MoDa-Browser Apr 3, 2026
6a7592d
ci: 添加security到允许的提交类型列表
MoDa-Browser Apr 3, 2026
5823a0d
ci: add security type to commit message check and validate only first…
MoDa-Browser Apr 3, 2026
9a03f6e
ci: 在提交消息验证中添加ci类型支持
MoDa-Browser Apr 3, 2026
b2e6286
Merge pull request #16 from Ink-dark/dev
MoDa-Browser Apr 3, 2026
135b7cc
Merge branch 'dev' into feature/M001-core-architecture
Ink-dark Apr 3, 2026
cd17379
Merge pull request #1 from Ink-dark/feature/M001-core-architecture
Ink-dark Apr 3, 2026
3abfcf5
Merge pull request #17 from Ink-dark/dev
MoDa-Browser Apr 3, 2026
41263a2
ci: 删除无用的Code Review Check任务
MoDa-Browser Apr 4, 2026
a3de094
ci: 删除无用的Code Review Check任务
MoDa-Browser Apr 4, 2026
a541977
Merge pull request #18 from Ink-dark/feature/M001-core-architecture
MoDa-Browser Apr 4, 2026
a2513ad
feat(security): 完成M002安全框架基础实现
MoDa-Browser Apr 4, 2026
6f3e6ac
feat(security): 完成M002安全框架基础实现
MoDa-Browser Apr 4, 2026
60c3b66
Merge remote-tracking branch 'local-work/feature/M002-core-implementa…
MoDa-Browser Apr 4, 2026
01bd005
styles(fmt):格式化代码
MoDa-Browser Apr 4, 2026
ce63254
Merge pull request #2 from Ink-dark/feature/M002-core-implementation
Ink-dark Apr 5, 2026
6fedbf3
docs: 添加项目文档并移动开发指南位置
MoDa-Browser Apr 5, 2026
5f5aabf
Merge branch 'feature/M002-core-implementation' of https://github.com…
MoDa-Browser Apr 5, 2026
ec73680
Merge pull request #3 from Ink-dark/feature/M002-core-implementation
Ink-dark Apr 5, 2026
c7a9701
Merge pull request #19 from Ink-dark/dev
MoDa-Browser Apr 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
162 changes: 162 additions & 0 deletions .github/workflows/ci-cd.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
name: CI/CD Pipeline

on:
push:
branches: [ main, dev, feat, feature/* ]
pull_request:
branches: [ main, dev ]

env:
CARGO_TERM_COLOR: always

jobs:
rust-check:
name: Rust Code Quality
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
components: rustfmt, clippy
override: true

- name: Cache cargo registry
uses: actions/cache@v3
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}

- name: Cache cargo index
uses: actions/cache@v3
with:
path: ~/.cargo/git
key: ${{ runner.os }}-cargo-index-${{ hashFiles('**/Cargo.lock') }}

- name: Cache cargo build
uses: actions/cache@v3
with:
path: target
key: ${{ runner.os }}-cargo-build-target-${{ hashFiles('**/Cargo.lock') }}

- name: Check formatting
run: |
cd src/security && cargo fmt -- --check
cd ../sandbox && cargo fmt -- --check
cd ../ipc && cargo fmt -- --check
cd ../network && cargo fmt -- --check
cd ../storage && cargo fmt -- --check
cd ../platform && cargo fmt -- --check
cd ../render && cargo fmt -- --check

- name: Run Clippy
run: |
cd src/security && cargo clippy -- -D warnings
cd ../sandbox && cargo clippy -- -D warnings
cd ../ipc && cargo clippy -- -D warnings
cd ../network && cargo clippy -- -D warnings
cd ../storage && cargo clippy -- -D warnings
cd ../platform && cargo clippy -- -D warnings
cd ../render && cargo clippy -- -D warnings

- name: Run tests
run: |
cd src/security && cargo test
cd ../sandbox && cargo test
cd ../ipc && cargo test
cd ../network && cargo test
cd ../storage && cargo test
cd ../platform && cargo test
cd ../render && cargo test

build:
name: Build Project
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]

steps:
- uses: actions/checkout@v4

- name: Install Rust (Unix)
if: runner.os != 'Windows'
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true

- name: Install Rust (Windows)
if: runner.os == 'Windows'
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true

- name: Build Rust components
run: |
cd src/security && cargo build --release
cd ../sandbox && cargo build --release
cd ../ipc && cargo build --release
cd ../network && cargo build --release
cd ../storage && cargo build --release
cd ../platform && cargo build --release
cd ../render && cargo build --release

security-audit:
name: Security Audit
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true

- name: Install cargo-audit
run: cargo install cargo-audit

- name: Run security audit
run: |
cargo audit

code-coverage:
name: Code Coverage
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4

- name: Install Rust toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true

- name: Install tarpaulin
run: cargo install cargo-tarpaulin

- name: Generate coverage report
run: |
cargo tarpaulin --out Xml --output-dir ./coverage

- name: Upload coverage to Codecov
uses: codecov/codecov-action@v3
with:
files: ./coverage/*.xml
flags: unittests
name: codecov-umbrella
fail_ci_if_error: false


19 changes: 19 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
cmake_minimum_required(VERSION 3.20)
project(MoDaCore VERSION 0.1.0 LANGUAGES Rust)

set(CMAKE_EXPORT_COMPILE_COMMANDS ON)

option(MODA_BUILD_TESTS "Build tests" ON)
option(MODA_BUILD_EXAMPLES "Build examples" ON)
option(MODA_ENABLE_LTO "Enable link-time optimization" OFF)

find_package(Rust_CARGO REQUIRED)

if(MODA_BUILD_TESTS)
enable_testing()
add_subdirectory(tests)
endif()

if(MODA_BUILD_EXAMPLES)
add_subdirectory(examples)
endif()
Loading
Loading