Skip to content

Commit c46e0be

Browse files
author
jovanSAPFIONEER
committed
Phase 1: production build, CI pipeline, npm publish config, changelog
1 parent b4504af commit c46e0be

File tree

6 files changed

+202
-16
lines changed

6 files changed

+202
-16
lines changed

.github/workflows/ci.yml

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
name: CI
2+
3+
"on":
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
9+
jobs:
10+
test:
11+
runs-on: ubuntu-latest
12+
13+
strategy:
14+
matrix:
15+
node-version: [18, 20, 22]
16+
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@v4
20+
21+
- name: Setup Node.js ${{ matrix.node-version }}
22+
uses: actions/setup-node@v4
23+
with:
24+
node-version: ${{ matrix.node-version }}
25+
cache: 'npm'
26+
27+
- name: Install dependencies
28+
run: npm ci
29+
30+
- name: Type check
31+
run: npx tsc --noEmit
32+
33+
- name: Build
34+
run: npm run build
35+
36+
- name: Test - Core (79 tests)
37+
run: npx ts-node test-standalone.ts
38+
39+
- name: Test - Security (33 tests)
40+
run: npx ts-node test-security.ts
41+
42+
- name: Test - Adapters (139 tests)
43+
run: npx ts-node test-adapters.ts
44+
45+
build:
46+
runs-on: ubuntu-latest
47+
needs: test
48+
49+
steps:
50+
- name: Checkout
51+
uses: actions/checkout@v4
52+
53+
- name: Setup Node.js
54+
uses: actions/setup-node@v4
55+
with:
56+
node-version: 20
57+
cache: 'npm'
58+
59+
- name: Install dependencies
60+
run: npm ci
61+
62+
- name: Build
63+
run: npm run build
64+
65+
- name: Verify dist output
66+
run: |
67+
test -f dist/index.js || (echo "dist/index.js missing" && exit 1)
68+
test -f dist/index.d.ts || (echo "dist/index.d.ts missing" && exit 1)
69+
test -f dist/security.js || (echo "dist/security.js missing" && exit 1)
70+
test -d dist/adapters || (echo "dist/adapters missing" && exit 1)
71+
test -d dist/lib || (echo "dist/lib missing" && exit 1)
72+
echo "Build verification passed"

.npmignore

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Source (dist/ has the compiled output)
2+
*.ts
3+
!*.d.ts
4+
tsconfig.json
5+
tsconfig.build.json
6+
7+
# Tests
8+
test*.ts
9+
test-*.log
10+
11+
# Dev files
12+
.gitignore
13+
.github/
14+
.vscode/
15+
.idea/
16+
17+
# Runtime artifacts
18+
swarm-blackboard.md
19+
data/
20+
*.log
21+
22+
# Documentation (not needed in npm package)
23+
references/
24+
swarm-blackboard.md
25+
SKILL.md
26+
skill.json
27+
setup.ts
28+
29+
# Python cache
30+
__pycache__/
31+
*.pyc
32+
*.pyo
33+
.env
34+
.venv/
35+
36+
# OS files
37+
.DS_Store
38+
Thumbs.db

CHANGELOG.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# Changelog
2+
3+
All notable changes to Network-AI will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [3.0.0] - 2026-02-13
9+
10+
### Added
11+
- **12 Agent Framework Adapters** -- OpenClaw, LangChain, AutoGen, CrewAI, MCP, LlamaIndex, Semantic Kernel, OpenAI Assistants, Haystack, DSPy, Agno, Custom
12+
- **AdapterRegistry** -- Pattern-based routing with `adapterName:agentId` prefix convention
13+
- **BaseAdapter** -- Abstract base class for writing custom adapters
14+
- **Content Quality Gate** -- BlackboardValidator (rule-based, ~159K-1M ops/sec) + QualityGateAgent (AI-assisted review with quarantine)
15+
- **Hallucination Detection** -- Catches vague, unsupported, or fabricated content
16+
- **Dangerous Code Detection** -- Blocks eval(), exec(), rm -rf, and other risky patterns
17+
- **Placeholder Rejection** -- Rejects TODO/FIXME/stub content from entering the blackboard
18+
- **Setup utility** (setup.ts) -- Installation checker and adapter listing
19+
- **QUICKSTART.md** -- 5-minute getting-started guide
20+
- **Hello World example** in README -- 60-second TypeScript quickstart
21+
- **"Why This Exists" section** in README -- Race condition / double-spend problem explanation
22+
- **Production build** -- `npm run build` compiles to dist/ with declarations and source maps
23+
- **GitHub Actions CI** -- Automated test runs on push and PR
24+
- **CHANGELOG.md** -- Version tracking
25+
26+
### Changed
27+
- README completely rewritten with SEO optimization, updated adapter count (6 -> 12), test count (129 -> 251)
28+
- All Unicode/emoji replaced with ASCII for Windows PowerShell compatibility
29+
- Package description and keywords updated for discoverability
30+
- package.json `main` points to `dist/index.js` (compiled output)
31+
32+
### Fixed
33+
- Audit chain hash continuity (P0)
34+
- Shallow-copy vulnerability in custom validation rules (P1)
35+
- Entry type detection accuracy in BlackboardValidator (P1)
36+
- Dangerous pattern severity levels (P2)
37+
- Placeholder detection sensitivity (P2)
38+
39+
### Security
40+
- 13-point security audit completed with all P0/P1/P2 fixes applied
41+
- AES-256-GCM encryption for sensitive blackboard entries
42+
- HMAC-signed tokens with configurable TTL
43+
- Rate limiting with lockout on failed authentication
44+
- Privilege escalation prevention with trust-ceiling enforcement
45+
- Cryptographic audit logs with tamper-evident chain
46+
47+
## [2.0.0] - 2026-02-01
48+
49+
### Added
50+
- Security module (tokens, encryption, rate limiting, audit)
51+
- SharedBlackboard with TTL support
52+
- AuthGuardian permission system
53+
- TaskDecomposer for parallel execution
54+
- Swarm Guard (Python) for budget tracking
55+
- LockedBlackboard with atomic commits
56+
57+
### Changed
58+
- Migrated from single-file to modular architecture
59+
60+
## [1.0.0] - 2026-01-15
61+
62+
### Added
63+
- Initial release
64+
- Basic swarm orchestrator
65+
- OpenClaw skill integration
66+
- Blackboard pattern implementation

package.json

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,14 @@
11
{
2-
"name": "swarm-orchestrator",
2+
"name": "network-ai",
33
"version": "3.0.0",
44
"description": "AI agent orchestration framework for TypeScript/Node.js - plug-and-play multi-agent coordination with 12 frameworks (LangChain, AutoGen, CrewAI, OpenAI Assistants, LlamaIndex, Semantic Kernel, Haystack, DSPy, Agno, MCP, OpenClaw). Built-in security, swarm intelligence, and agentic workflow patterns.",
5-
"main": "index.ts",
5+
"main": "dist/index.js",
6+
"types": "dist/index.d.ts",
67
"scripts": {
7-
"build": "tsc",
8+
"build": "tsc -p tsconfig.build.json",
9+
"build:all": "tsc",
10+
"prebuild": "node -e \"const fs=require('fs');if(fs.existsSync('dist'))fs.rmSync('dist',{recursive:true})\"",
11+
"prepublishOnly": "npm run build && npm run test:all",
812
"test": "npx ts-node test-standalone.ts",
913
"test:security": "npx ts-node test-security.ts",
1014
"test:adapters": "npx ts-node test-adapters.ts",
@@ -69,15 +73,12 @@
6973
"typescript": "^5.9.3"
7074
},
7175
"files": [
72-
"index.ts",
73-
"SKILL.md",
74-
"QUICKSTART.md",
75-
"setup.ts",
76-
"lib/",
77-
"adapters/",
76+
"dist/",
7877
"types/",
7978
"scripts/",
80-
"references/",
81-
"README.md"
79+
"README.md",
80+
"QUICKSTART.md",
81+
"SKILL.md",
82+
"LICENSE"
8283
]
8384
}

swarm-blackboard.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# Swarm Blackboard
2-
Last Updated: 2026-02-13T20:41:55.971Z
2+
Last Updated: 2026-02-15T13:33:05.021Z
33

44
## Active Tasks
55
| TaskID | Agent | Status | Started | Description |
@@ -18,7 +18,7 @@ Last Updated: 2026-02-13T20:41:55.971Z
1818
"status": "complete"
1919
},
2020
"sourceAgent": "code_writer",
21-
"timestamp": "2026-02-13T20:41:55.962Z",
21+
"timestamp": "2026-02-15T13:33:05.012Z",
2222
"ttl": null
2323
}
2424

@@ -34,7 +34,7 @@ Last Updated: 2026-02-13T20:41:55.971Z
3434
"reviewer": "code_reviewer"
3535
},
3636
"sourceAgent": "code_reviewer",
37-
"timestamp": "2026-02-13T20:41:55.966Z",
37+
"timestamp": "2026-02-15T13:33:05.016Z",
3838
"ttl": null
3939
}
4040

@@ -49,7 +49,7 @@ Last Updated: 2026-02-13T20:41:55.971Z
4949
"duration": 3200
5050
},
5151
"sourceAgent": "test_runner",
52-
"timestamp": "2026-02-13T20:41:55.967Z",
52+
"timestamp": "2026-02-15T13:33:05.017Z",
5353
"ttl": null
5454
}
5555

@@ -60,7 +60,7 @@ Last Updated: 2026-02-13T20:41:55.971Z
6060
"replicas": 3
6161
},
6262
"sourceAgent": "devops_agent",
63-
"timestamp": "2026-02-13T20:41:55.971Z",
63+
"timestamp": "2026-02-15T13:33:05.021Z",
6464
"ttl": null
6565
}
6666

tsconfig.build.json

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"extends": "./tsconfig.json",
3+
"exclude": [
4+
"node_modules",
5+
"dist",
6+
"test*.ts",
7+
"setup.ts"
8+
]
9+
}

0 commit comments

Comments
 (0)