Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
168 commits
Select commit Hold shift + click to select a range
7b162b8
docs: define M-040 runtime and integration ownership
Kucell Sep 29, 2026
0965d11
docs: index M-040 ownership architecture
Kucell Sep 29, 2026
8856326
feat(m040): add pnpm-workspace.yaml
Kucell Sep 29, 2026
538a353
feat(m040): add packages/protocol/package.json
Kucell Sep 29, 2026
bff14ae
feat(m040): add packages/protocol/src/refs.js
Kucell Sep 29, 2026
485b4b2
feat(m040): add packages/protocol/src/version.js
Kucell Sep 29, 2026
79a288b
feat(m040): add packages/protocol/src/result.js
Kucell Sep 29, 2026
e2e84d6
feat(m040): add packages/protocol/src/index.js
Kucell Sep 29, 2026
bb1f087
feat(m040): add packages/sdk/package.json
Kucell Sep 29, 2026
0d4aa38
feat(m040): add packages/sdk/src/index.js
Kucell Sep 29, 2026
3960820
feat(m040): add tests/architecture/m040-monorepo-boundary.test.js
Kucell Sep 29, 2026
0520217
feat(m040): add tests/sdk/cortex-client.test.js
Kucell Sep 29, 2026
5cf8e1c
chore(m040): register workspace importers
Kucell Sep 29, 2026
2ba5623
test(m040): add protocol and sdk boundary test script
Kucell Sep 29, 2026
490e90f
feat(m040): add lib/sdk/local-transport.js
Kucell Sep 29, 2026
ee6f42c
feat(m040): add lib/sdk/local-client.js
Kucell Sep 29, 2026
f6ec698
feat(m040): add tests/sdk/local-transport.test.js
Kucell Sep 29, 2026
a3cb901
test(m040): include local SDK transport tests
Kucell Sep 29, 2026
d997dbe
feat(m040): support sync local SDK transports
Kucell Sep 29, 2026
b96dae1
fix(m040): preserve Management transport exit codes
Kucell Sep 29, 2026
18fd775
refactor(m040): route query CLI through Cortex SDK
Kucell Sep 29, 2026
cd04675
chore(m040): ship workspace contract sources in root package
Kucell Sep 29, 2026
b20bc61
test(m040): guard SDK facade and root package compatibility
Kucell Sep 29, 2026
95df4c6
test(m040): cover sync SDK and raw management facade
Kucell Sep 29, 2026
e106a71
test(m040): include management query regression suite
Kucell Sep 29, 2026
0210894
feat(m040): resolve stable project identity through topology
Kucell Sep 29, 2026
4914d00
feat(m040): add canonical capability identifiers
Kucell Sep 29, 2026
4778d48
feat(m040): export capability contract primitives
Kucell Sep 29, 2026
22cbb3a
test(m040): add capability contract tests
Kucell Sep 29, 2026
c9227f3
test(m040): guard topology-derived ProjectRef identity
Kucell Sep 29, 2026
0a9cbf6
test(m040): include protocol capability suite
Kucell Sep 29, 2026
d401ef2
ci(m040): validate protocol sdk workspace
Kucell Sep 29, 2026
480bf5c
ci(m040): activate pnpm before workspace install
Kucell Sep 29, 2026
cdcfd76
docs: document M-040 protocol sdk monorepo baseline
Kucell Sep 29, 2026
edaba9e
docs: index M-040 protocol sdk architecture
Kucell Sep 29, 2026
28ab873
feat(m040): define protocol families
Kucell Sep 29, 2026
e66d1f1
feat(m040): add protocol capability negotiation
Kucell Sep 29, 2026
f55eba7
feat(m040): export protocol negotiation
Kucell Sep 29, 2026
e58e9a7
test(m040): cover protocol negotiation
Kucell Sep 29, 2026
5089296
feat(m040): validate and negotiate SDK capabilities
Kucell Sep 29, 2026
24fa88c
feat(m040): emit standard local capability descriptor
Kucell Sep 29, 2026
b69d30d
test(m040): include protocol negotiation suite
Kucell Sep 29, 2026
066c8b8
test(m040): cover SDK capability negotiation
Kucell Sep 29, 2026
fa22420
test(m040): validate local capability descriptor shape
Kucell Sep 29, 2026
98ab3e1
docs: define M-040 protocol negotiation
Kucell Sep 29, 2026
e38ca43
docs: index protocol negotiation architecture
Kucell Sep 29, 2026
6aca7e4
feat(m040): add runtime-port package
Kucell Sep 29, 2026
031ffff
feat(m040): define RuntimePort v1 contract
Kucell Sep 29, 2026
dba2252
feat(m040): bridge legacy adapters to RuntimePort
Kucell Sep 29, 2026
85dc4d0
test(m040): cover RuntimePort contract
Kucell Sep 29, 2026
47cc415
test(m040): cover native adapter compatibility bridge
Kucell Sep 29, 2026
6ed87ed
refactor(m040): keep legacy runtime ids behind RunRef
Kucell Sep 29, 2026
c863a93
test(m040): guard opaque RunRef bridge semantics
Kucell Sep 29, 2026
e66b673
chore(m040): register runtime-port workspace importer
Kucell Sep 29, 2026
59a2cdf
test(m040): include RuntimePort compatibility suites
Kucell Sep 29, 2026
bf6662e
ci(m040): validate RuntimePort changes
Kucell Sep 29, 2026
2c51957
test(m040): guard RuntimePort package boundary
Kucell Sep 29, 2026
ec13334
docs: define M-040 RuntimePort v1
Kucell Sep 29, 2026
e762d7f
docs: index RuntimePort v1 architecture
Kucell Sep 29, 2026
6120ada
fix(m040): enforce declared RuntimePort capabilities
Kucell Sep 29, 2026
c897214
fix(m040): honor legacy adapter invoke cancel support
Kucell Sep 29, 2026
722f59b
test(m040): prevent undeclared RuntimePort operations
Kucell Sep 29, 2026
c25c42d
test(m040): keep observer adapters non-executable
Kucell Sep 29, 2026
04e75da
feat(m040): add RuntimeEndpoint opaque ref
Kucell Sep 29, 2026
8ca3bc3
feat(m040): define RuntimeEndpoint topology contract
Kucell Sep 29, 2026
b35b36e
feat(m040): export runtime topology contracts
Kucell Sep 29, 2026
4ecac72
test(m040): cover RuntimeEndpoint hard filtering
Kucell Sep 29, 2026
6ef9210
feat(m040): discover native RuntimeEndpoints
Kucell Sep 29, 2026
eb118c8
test(m040): cover native RuntimeEndpoint discovery
Kucell Sep 29, 2026
5d589b4
test(m040): include runtime topology suites
Kucell Sep 29, 2026
3c24577
feat(m040): compose runtime filtering with host matcher
Kucell Sep 29, 2026
87046e4
test(m040): cover composite runtime host routing
Kucell Sep 29, 2026
fd3c653
test(m040): include composite routing suite
Kucell Sep 29, 2026
531a27a
docs: define M-040 runtime topology routing
Kucell Sep 29, 2026
47d8147
docs: index runtime topology architecture
Kucell Sep 29, 2026
27ee481
feat(m040): add governed Control Service core
Kucell Sep 29, 2026
bad5f2e
feat(m040): compose local Control Service owners
Kucell Sep 29, 2026
52515bf
test(m040): cover Control Service gates
Kucell Sep 29, 2026
729df10
test(m040): guard Control Service ownership boundary
Kucell Sep 29, 2026
b44cb1e
test(m040): include Control Service suites
Kucell Sep 29, 2026
2aa1dd4
test(m040): cover local Control Service composition
Kucell Sep 29, 2026
51b399f
ci(m040): validate Control Service changes
Kucell Sep 29, 2026
2481b5c
test(m040): include local Control Service suite
Kucell Sep 29, 2026
1351df1
docs: define M-040 Control Service boundary
Kucell Sep 29, 2026
06d55f0
docs: index Control Service architecture
Kucell Sep 29, 2026
46aa2a9
feat(m040): define CortexEvent v1
Kucell Sep 29, 2026
60ee699
feat(m040): add timeline dedupe gap cursor contract
Kucell Sep 29, 2026
f44c62f
feat(m040): export CortexEvent timeline contracts
Kucell Sep 29, 2026
bd20fc4
test(m040): cover CortexEvent timeline contract
Kucell Sep 29, 2026
ffb7b26
test(m040): include CortexEvent protocol tests
Kucell Sep 29, 2026
e14edc1
ci(m040): validate event bridge changes
Kucell Sep 29, 2026
5365008
feat(m040): normalize Framework events to CortexEvent
Kucell Sep 29, 2026
1e79329
feat(m040): normalize Coordination events to CortexEvent
Kucell Sep 29, 2026
6502756
feat(m040): normalize Runtime boundary events
Kucell Sep 29, 2026
b8b9691
test(m040): cover CortexEvent source bridges
Kucell Sep 29, 2026
3e73166
test(m040): include CortexEvent bridge tests
Kucell Sep 29, 2026
31ade07
docs: define M-040 CortexEvent timeline
Kucell Sep 29, 2026
4d0b465
docs: index CortexEvent architecture
Kucell Sep 29, 2026
f4eff92
feat(m040): add extension-sdk package
Kucell Sep 29, 2026
d6dfe59
feat(m040): define extension manifest contract
Kucell Sep 29, 2026
250f5f5
feat(m040): define extension permission policy
Kucell Sep 29, 2026
cc93af2
feat(m040): add pure extension registry
Kucell Sep 29, 2026
b5e6aad
feat(m040): export extension SDK
Kucell Sep 29, 2026
f0e3684
test(m040): cover extension permission architecture
Kucell Sep 29, 2026
36414bc
chore(m040): register extension-sdk workspace
Kucell Sep 29, 2026
3621898
test(m040): include extension SDK suite
Kucell Sep 29, 2026
b359599
ci(m040): include extension SDK validation
Kucell Sep 29, 2026
5482668
docs: define M-040 extension permission architecture
Kucell Sep 29, 2026
1e3b172
docs: index extension permission architecture
Kucell Sep 29, 2026
8d84dc5
feat(m040): add project-sdk package
Kucell Sep 29, 2026
65466d7
feat(m040): define external Project Descriptor
Kucell Sep 29, 2026
9ac4980
feat(m040): define Project Adapter contract
Kucell Sep 29, 2026
af1f97f
feat(m040): export Project SDK
Kucell Sep 29, 2026
4b1a1e4
test(m040): cover Project Integration contract
Kucell Sep 29, 2026
337c662
chore(m040): register project-sdk workspace
Kucell Sep 29, 2026
67d639e
test(m040): include Project SDK suite
Kucell Sep 29, 2026
cfbd445
ci(m040): validate Project Integration changes
Kucell Sep 29, 2026
96cab1f
feat(m040): validate connected project descriptors
Kucell Sep 29, 2026
f43a75a
test(m040): cover connected project validator
Kucell Sep 29, 2026
3e211b3
test(m040): cover explicit Project Adapter execution owner
Kucell Sep 29, 2026
19cc12a
test(m040): include connected project validation suite
Kucell Sep 29, 2026
76d2d40
fix(m040): avoid revalidating computed ProjectRef
Kucell Sep 29, 2026
bd71a18
ci(m040): validate Axrail connected-project pilot
Kucell Sep 29, 2026
2a9a147
docs: define M-040 external project integration
Kucell Sep 29, 2026
95d1876
docs: index external project integration
Kucell Sep 29, 2026
d6590f4
feat(m040): add optional Paseo runtime package
Kucell Sep 29, 2026
d34ded0
feat(m040): implement Paseo RuntimePort adapter
Kucell Sep 29, 2026
d18e96b
feat(m040): export Paseo runtime adapter
Kucell Sep 29, 2026
ebc18b5
test(m040): cover Paseo public SDK adapter
Kucell Sep 29, 2026
18a72f4
chore(m040): register runtime-paseo workspace
Kucell Sep 29, 2026
0482457
test(m040): include Paseo RuntimePort suite
Kucell Sep 29, 2026
31c5eeb
ci(m040): validate Paseo runtime adapter
Kucell Sep 29, 2026
977e857
chore(m040): lock optional Paseo client peer
Kucell Sep 29, 2026
58400ff
ci(m040): inspect pnpm optional peer lock format
Kucell Sep 29, 2026
0b907ec
ci(m040): regenerate workspace lockfile with pnpm
Kucell Sep 29, 2026
6f2ad30
chore(m040): regenerate pnpm lockfile
github-actions[bot] Sep 29, 2026
25cf0ed
test(m040): guard optional Paseo root dependency
Kucell Sep 29, 2026
0b170ed
ci(m040): remove temporary lock regenerator
Kucell Sep 29, 2026
62f4edb
chore(m040): keep optional runtime peers opt-in
Kucell Sep 29, 2026
f310344
chore(m040): exclude optional Paseo peer from workspace install
Kucell Sep 29, 2026
258b505
chore(m040): disable workspace peer auto-install
Kucell Sep 29, 2026
ef8c68b
chore(m040): remove obsolete pnpm rc setting
Kucell Sep 29, 2026
92ae828
docs: define M-040 Paseo runtime adapter
Kucell Sep 29, 2026
b38b431
docs: index Paseo runtime adapter
Kucell Sep 29, 2026
427b173
feat(m040): add read-only Paseo governance surface
Kucell Sep 29, 2026
daf1ae3
feat(m040): declare Paseo governance UI surface
Kucell Sep 29, 2026
c7674bd
test(m040): cover Paseo governance surface
Kucell Sep 29, 2026
5d3fb17
feat(m040): add final architecture guard
Kucell Sep 29, 2026
ba7daad
test(m040): enforce final architecture guards
Kucell Sep 29, 2026
2c71ca9
test(m040): add governed Paseo E2E flow
Kucell Sep 29, 2026
79941e6
test(m040): include final governance E2E guards
Kucell Sep 29, 2026
3036ae7
ci(m040): validate final E2E architecture guards
Kucell Sep 29, 2026
9c33956
fix(m040): repair package metadata newline
Kucell Sep 29, 2026
0387104
ci(m040): add final full regression gate
Kucell Sep 29, 2026
338bccc
ci(m040): run full repository regression
Kucell Sep 29, 2026
e9041ce
docs: clarify independent .agent governance repository
Kucell Sep 29, 2026
b4a3894
docs: keep governance repo outside monorepo
Kucell Sep 29, 2026
547d11c
test(m040): guard independent governance repository boundary
Kucell Sep 29, 2026
282929a
test(m040): adapt query unit tests to SDK facade
Kucell Sep 29, 2026
bf168d5
test(m040): add merge-base regression diff gate
Kucell Sep 29, 2026
9807a5d
test(m040): cover regression baseline gate
Kucell Sep 29, 2026
ed3e9fb
test(m040): include regression baseline tests
Kucell Sep 29, 2026
9bb2d16
ci(m040): separate product validation from governance regression
Kucell Sep 29, 2026
1b91c3b
docs: add M-040 integration runbook
Kucell Sep 29, 2026
1afe4b0
docs: index M-040 integration runbook
Kucell Sep 29, 2026
ec62aef
ci(m040): remove obsolete one-time regression workflow
Kucell Sep 29, 2026
a99d70a
Merge M-040 runtime, protocol and extension architecture
Kucell Sep 29, 2026
597d104
chore(m041): sync latest main before revalidation
Kucell Sep 30, 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
107 changes: 107 additions & 0 deletions .github/workflows/m040-axrail-pilot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,107 @@
name: M-040 Axrail Connected Project Pilot

on:
push:
branches:
- "feat/m040-*"
paths:
- "packages/project-sdk/**"
- "scripts/m040/**"
- "tests/project-sdk/**"
- "tests/project-integration/**"
- ".github/workflows/m040-axrail-pilot.yml"
pull_request:
paths:
- "packages/project-sdk/**"
- "scripts/m040/**"
- "tests/project-sdk/**"
- "tests/project-integration/**"
- ".github/workflows/m040-axrail-pilot.yml"
workflow_dispatch:

permissions:
contents: read

jobs:
axrail-connected-project:
runs-on: ubuntu-latest
timeout-minutes: 25

steps:
- name: Checkout Cortex
uses: actions/checkout@v4
with:
path: cortex

- name: Checkout Axrail pilot
uses: actions/checkout@v4
with:
repository: Kucell/axrail
ref: feat/cortex-project-integration-pilot
path: axrail

- name: Setup Node for descriptor validation
uses: actions/setup-node@v4
with:
node-version: "24.19.0"

- name: Validate Axrail connected-project descriptor
working-directory: cortex
run: |
node scripts/m040/validate-connected-project.js ../axrail --expect-project axrail --expect-repository Kucell/axrail | tee ../axrail-cortex-project-validation.json

- name: Verify Axrail protected authority boundary
working-directory: cortex
run: |
node - <<'NODE'
const fs = require("node:fs");
const result = JSON.parse(fs.readFileSync("../axrail-cortex-project-validation.json", "utf8"));
const required = [
"HarnessRuntime",
"ToolRuntime",
"Policy",
"Validation",
"Approval",
"TransactionRuntime",
"EventStore",
"EngineeringAdapters",
];
for (const name of required) {
if (!result.protected_components.includes(name)) {
throw new Error("missing protected Axrail authority: " + name);
}
}
if (result.authoritative_domain !== "axrail" || result.authoritative_runtime !== "axrail") {
throw new Error("Axrail authority boundary drift");
}
if (result.cortex_role !== "governance-orchestration") {
throw new Error("unexpected Cortex role: " + result.cortex_role);
}
NODE

- name: Enable Axrail pnpm
working-directory: axrail
run: |
corepack enable
corepack prepare [email protected] --activate
pnpm --version

- name: Install Axrail workspace
working-directory: axrail
run: pnpm install --frozen-lockfile

- name: Execute declared Axrail release validation profile
working-directory: axrail
run: |
pnpm release:dry-run 2>&1 | tee ../axrail-release-dry-run.log

- name: Upload pilot evidence
if: always()
uses: actions/upload-artifact@v4
with:
name: m040-axrail-connected-project-evidence
path: |
axrail-cortex-project-validation.json
axrail-release-dry-run.log
if-no-files-found: error
retention-days: 14
70 changes: 70 additions & 0 deletions .github/workflows/m040-final-validation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: M-040 Final Product Validation

on:
push:
branches:
- "feat/m040-runtime-control-architecture"
paths:
- "package.json"
- "pnpm-lock.yaml"
- "pnpm-workspace.yaml"
- "packages/**"
- "lib/**"
- "scripts/m040/**"
- "tests/**"
- "docs/architecture/**"
- ".github/workflows/m040-final-validation.yml"
pull_request:
paths:
- "package.json"
- "pnpm-lock.yaml"
- "pnpm-workspace.yaml"
- "packages/**"
- "lib/**"
- "scripts/m040/**"
- "tests/**"
- "docs/architecture/**"
- ".github/workflows/m040-final-validation.yml"
workflow_dispatch:

permissions:
contents: read

jobs:
full-regression:
runs-on: ubuntu-latest
timeout-minutes: 20

steps:
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version: "24.19.0"

- name: Enable pnpm
run: |
corepack enable
corepack prepare [email protected] --activate
pnpm --version

- name: Frozen workspace install
run: pnpm install --frozen-lockfile

- name: Run M-040 architecture guard
run: pnpm guard:m040

- name: Run M-040 focused product validation
run: pnpm test:m040

- name: Verify root npm package can be packed
run: npm pack --dry-run --json > m040-pack-dry-run.json

- name: Upload final validation evidence
if: always()
uses: actions/upload-artifact@v4
with:
name: m040-final-product-validation-evidence
path: m040-pack-dry-run.json
if-no-files-found: warn
retention-days: 14
76 changes: 76 additions & 0 deletions .github/workflows/m040-validation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
name: M-040 Architecture Validation

on:
push:
branches:
- "feat/m040-*"
paths:
- "package.json"
- "pnpm-lock.yaml"
- "pnpm-workspace.yaml"
- "packages/**"
- "lib/sdk/**"
- "lib/runtime-port/**"
- "lib/control-service/**"
- "lib/event-bridge/**"
- "lib/commands/management/query.js"
- "tests/architecture/**"
- "tests/protocol/**"
- "tests/sdk/**"
- "tests/runtime-port/**"
- "tests/runtime-paseo/**"
- "tests/control-service/**"
- "tests/event-bridge/**"
- "tests/extensions/**"
- "tests/project-sdk/**"
- "tests/management/management-query-cli.test.js"
- ".github/workflows/m040-validation.yml"
pull_request:
paths:
- "package.json"
- "pnpm-lock.yaml"
- "pnpm-workspace.yaml"
- "packages/**"
- "lib/sdk/**"
- "lib/event-bridge/**"
- "lib/control-service/**"
- "lib/runtime-port/**"
- "lib/commands/management/query.js"
- "tests/architecture/**"
- "tests/protocol/**"
- "tests/sdk/**"
- "tests/project-sdk/**"
- "tests/extensions/**"
- "tests/event-bridge/**"
- "tests/control-service/**"
- "tests/runtime-port/**"
- "tests/runtime-paseo/**"
- "tests/management/management-query-cli.test.js"
- ".github/workflows/m040-validation.yml"

permissions:
contents: read

jobs:
protocol-sdk:
runs-on: ubuntu-latest
timeout-minutes: 10

steps:
- uses: actions/checkout@v4

- uses: actions/setup-node@v4
with:
node-version: "24.19.0"

- name: Enable Corepack and pnpm
run: |
corepack enable
corepack prepare [email protected] --activate
pnpm --version

- name: Install workspace
run: pnpm install --frozen-lockfile

- name: Run M-040 focused validation
run: pnpm test:m040
11 changes: 11 additions & 0 deletions docs/architecture/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,17 @@
- [AI-Native SDLC 闭环治理](./ai-native-sdlc-governance.md)
- [Agent Workspace Orchestration](./agent-workspace-orchestration.md)
- [Agent Runtime Continuity](./agent-runtime-continuity.md)
- [Runtime, Control and Integration Ownership](./runtime-control-ownership.md)
- [Protocol, SDK and Progressive Monorepo](./protocol-sdk-monorepo.md)
- [Protocol Versioning and Capability Negotiation](./protocol-negotiation.md)
- [RuntimePort v1 and Native Adapter Compatibility](./runtime-port-v1.md)
- [Host / Runtime Topology and Capability Routing](./runtime-topology-routing.md)
- [Control Service and Daemon Boundary](./control-service-boundary.md)
- [CortexEvent v1 and Timeline Contract](./cortex-event-timeline.md)
- [Extension and Permission Architecture](./extension-permission-architecture.md)
- [External Project Integration Contract](./project-integration.md)
- [Paseo Runtime Adapter](./paseo-runtime-adapter.md)
- [M-040 Runtime / Project Integration Runbook](./m040-integration-runbook.md)
- [Branch Management Design](./branch-management-design.md)
- [Catalog Bridge](./catalog-bridge.md)
- [Context Optimization v2](./context-optimization-v2.md)
Expand Down
Loading
Loading