Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion Directory.Packages.props
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
</PropertyGroup>
<ItemGroup>
<PackageVersion Include="ArcForges.Build.Policy" Version="1.0.0-ci.21.1" />
<PackageVersion Include="ArcForges.Contracts.PublicApi" Version="1.0.0-ci.36.1" />
<PackageVersion Include="ArcForges.Contracts.PublicApi" Version="1.0.0-ci.74.1" />
<PackageVersion Include="Grpc.AspNetCore" Version="2.84.0" />
<PackageVersion Include="Grpc.AspNetCore.Web" Version="2.84.0" />
<PackageVersion Include="Grpc.Net.Client" Version="2.84.0" />
Expand Down
6 changes: 4 additions & 2 deletions NOTICE
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,10 @@ Copyright ArcForges contributors

Original Cloud application and tooling: AGPL-3.0-only; see LICENSE.
Contracts APIs are consumed as published Apache-2.0 packages from
https://github.com/ArcForges/Contracts (C#/TypeScript version 1.0.0-ci.36.1;
Kotlin verification client version 1.0.0-ci.42.1).
https://github.com/ArcForges/Contracts (C#/TypeScript version 1.0.0-ci.74.1;
Kotlin verification client version 1.0.0-ci.42.1). The complete published
NuGet NOTICE, including generator attributions and protobuf BSD terms, is
retained in third-party/Contracts.NOTICE.txt and the Native AOT image notices.

The standard generated Gradle wrapper scripts and JAR are distributed under
Apache-2.0 by the Gradle contributors; their original notices are retained.
Expand Down
2 changes: 1 addition & 1 deletion docs/development.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ npm run check:kotlin
npm run candidate
```

Install JDK 17 and set `JAVA_HOME` before `check:kotlin`. The verification project uses Kotlin 2.4.20, JVM 17 bytecode and the checksum-pinned Gradle 9.7.1 wrapper. This does not change Mobile's toolchain. Maven Central is the only dependency repository for the application; strict locks and verification metadata are committed. C# and TypeScript consume Contracts `1.0.0-ci.36.1`; the Kotlin verification client independently pins `1.0.0-ci.42.1`. Package build numbers may differ while the declared Hello v1 schema and descriptor remain compatible.
Install JDK 17 and set `JAVA_HOME` before `check:kotlin`. The verification project uses Kotlin 2.4.20, JVM 17 bytecode and the checksum-pinned Gradle 9.7.1 wrapper. This does not change Mobile's toolchain. Maven Central is the only dependency repository for the application; strict locks and verification metadata are committed. C# and TypeScript consume Contracts `1.0.0-ci.74.1`; the Kotlin verification client independently pins `1.0.0-ci.42.1`. Package build numbers may differ while the declared Hello v1 schema and descriptor remain compatible.

`check:kotlin` compiles the consumer and prepares its distribution without executing it. The loopback deadline fixture is available only as an explicit local `deadlineTest` Gradle task and rejects CI. `candidate` builds the Linux Native AOT image, inspects its declared user/entry point/source label and extracts licence/provenance files from a stopped container. It never launches the application, restarts a service or runs RPC consumers. The build identity companion comes from the same independently resolved inputs supplied to compilation; it is not claimed as a runtime observation.

Expand Down
15 changes: 10 additions & 5 deletions eng/provenance/NOTICE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ https://github.com/github/choosealicense.com @ 58267f8f2c5c0099810849cfd7677f52a
AGPL-3.0-only
GNU Affero General Public License version 3; Copyright Free Software Foundation, Inc. Complete original licence and its verbatim-copying permission are retained.

cloud-runtime-notices-r11
https://github.com/ArcForges/Cloud @ 3b51ed444b6ebbe7fa7797363b01b4c38d87f627
cloud-runtime-notices-r13
https://github.com/ArcForges/Cloud @ 944f54c52953952c434585c6d7cae9772f1d3010
AGPL-3.0-only
ArcForges application: AGPL-3.0-only. Published Contracts: Apache-2.0; copyright ArcForges contributors. .NET/ASP.NET Core, gRPC and Protocol Buffers retain their full recorded notices and separate licences. The unchanged official Ubuntu base retains its six original copyright files.
ArcForges application: AGPL-3.0-only. Published Contracts: Apache-2.0; copyright ArcForges contributors. .NET/ASP.NET Core, gRPC and Protocol Buffers retain their full recorded notices and separate licences. The unchanged official Ubuntu base retains its six original copyright files. The complete published Contracts NOTICE is retained under third-party/Contracts.NOTICE.txt, including all generator attributions and the protobuf-generator BSD terms; generator implementations are not shipped.

cloud-worker-bundle-r10
https://github.com/ArcForges/Cloud @ 3b51ed444b6ebbe7fa7797363b01b4c38d87f627
cloud-worker-bundle-r12
https://github.com/ArcForges/Cloud @ 944f54c52953952c434585c6d7cae9772f1d3010
AGPL-3.0-only
Cloud routing: Copyright ArcForges contributors, AGPL-3.0-only. Containers: Copyright Cloudflare, Inc., selected MIT. esbuild helper: Copyright Evan Wallace, MIT. Complete respective terms accompany the actual Worker bundle.

Expand All @@ -27,6 +27,11 @@ https://github.com/cloudflare/containers @ 298169f4aaba82e7b712458b7c6b14fc3e40a
MIT
Copyright 2020 Cloudflare, Inc. Complete selected MIT notice for Containers 0.3.7 Worker code.

contracts-notice-legal-r1
https://github.com/ArcForges/Contracts @ 9f0e90f65d57f405fcee311d467a57a255dfd644
Apache-2.0
The complete published ArcForges.Contracts.PublicApi 1.0.0-ci.74.1 NOTICE is retained verbatim, including ArcForges, Google, gRPC, Buf and Connect attributions and the full protobuf-generator BSD-3-Clause text. Apache-2.0 describes the Contracts notice compilation/source grant; every named component retains its original terms. This admits only the package legal document, not generator implementations or additional runtime dependencies.

dotnet-aspnetcore-legal-r1
https://github.com/dotnet/dotnet @ 95017c711e6afc1085133d440e42b4bd78155701
MIT
Expand Down
90 changes: 90 additions & 0 deletions eng/provenance/artifact-profiles/cloud-release-r11.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{
"schemaVersion": 1,
"id": "cloud-release-r11",
"ownerCommit": "38c7be9090af5322937ed287f259de4725b7d549",
"worker": {
"sha256": "a386a9f90d50f2b297f22e78c460f47e29f4005ec4313980348e4c53b82764e4",
"inputs": {
"node_modules/@cloudflare/containers/dist/lib/helpers.js": "320eae245a1d05a64c8348652f6808fa54c776340bd7c24391c19fe3b9e0f05f",
"node_modules/@cloudflare/containers/dist/lib/container.js": "9dfc5feaa43b2bdec08863c85eb94731237aeb9f19c7b7e58ff426776ec8863c",
"node_modules/@cloudflare/containers/dist/lib/utils.js": "22f96e63b873b10081fc15216bffc8d23a4614516efcb64be99db87372d4011c",
"node_modules/@cloudflare/containers/dist/index.js": "4788f78cbab43389d23feb71c8ef4e6657c01f9eeffe962650310784390bd486",
"worker/router.ts": "8e6fbb57855f0987cdf95dea492ce66184825cc2f5ae127865ff7988f8b57af3",
"worker/index.ts": "5317c8257a4ffcd4e023b08981cf8861d10092984a2664852b0eb55d2f34e50d"
},
"outputInputs": [
"node_modules/@cloudflare/containers/dist/index.js",
"node_modules/@cloudflare/containers/dist/lib/container.js",
"node_modules/@cloudflare/containers/dist/lib/helpers.js",
"worker/index.ts",
"worker/router.ts"
],
"externalImports": [
"cloudflare:workers"
],
"exports": [
"CloudContainer",
"default"
],
"packages": {
"@cloudflare/containers": {
"version": "0.3.7",
"integrity": "sha512-DM9dm3FnIBSyiSJ1FLavKwl/lk3oAmTaynCzZQ9pZR0ncRPquSxkxd8Nu2MFILxmDDsPkxKsSNEh9mHHMty4Fw=="
},
"wrangler": {
"version": "4.135.0",
"integrity": "sha512-WrNBQSfIG6YcILJcodYr5ty8vgkzGsV8YX+kfd+uZ5/Bd8cUW0GnUIRKAVfn5kYKqh1m/BPcji9h1d7mE8euFw=="
},
"esbuild": {
"version": "0.28.1",
"integrity": "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="
}
},
"legalFiles": [
"LICENSE",
"NOTICE",
"eng/provenance/NOTICE.txt",
"third-party/Containers.LICENSE.txt",
"third-party/Esbuild.LICENSE.txt"
]
},
"image": {
"baseImage": "mcr.microsoft.com/dotnet/runtime-deps:10.0.12-noble-chiseled@sha256:18d4848091a40d13dbfdd6a8340c1657dc3e2f2d7fa2f042e9d162e68669dbc9",
"baseLegal": {
"/usr/share/doc/base-files/copyright": "fd7e4aae7e7b05f217bcf2d02322825c360e66c52c4c2f1b28d784d6297a1c23",
"/usr/share/doc/ca-certificates/copyright": "e85e1bcad3a915dc7e6f41412bc5bdeba275cadd817896ea0451f2140a93967c",
"/usr/share/doc/gcc-14-base/copyright": "20390f8a6f3b1e4d7cb45dd8652dabb259bbef688cbad839bcdb0b9ba7252f79",
"/usr/share/doc/libc6/copyright": "d3c95b56fa33e28b57860580f0baf4e4f4de2a268a2b80f1d031a5191bade265",
"/usr/share/doc/libssl3t64/copyright": "6a7da622fe0637a334d2a8fc470852d2ffb77d9a2b2f930f854e32a41ad6ef35",
"/usr/share/doc/openssl/copyright": "6a7da622fe0637a334d2a8fc470852d2ffb77d9a2b2f930f854e32a41ad6ef35"
},
"legalFiles": [
"LICENSE",
"NOTICE",
"eng/provenance/NOTICE.txt",
"third-party/DotNet.AspNetCore.NOTICES.txt",
"third-party/DotNet.LICENSE.txt",
"third-party/DotNet.Runtime.NOTICES.txt",
"third-party/Grpc.LICENSE.txt",
"third-party/Protobuf.LICENSE.txt"
],
"inputs": {
"Directory.Build.props": "594fe799ea787c02d4406e14360c4b1902a5aee8679b76c8ac797ae34a9e792c",
"Directory.Build.targets": "fa4bf35487140fecd21b71a2fb524792631a292df2313f9440f8c6e7e90a82d2",
"Directory.Packages.props": "b842214f27a1b95af27bfba82a786df28ed41f0443b545976c4fffc195df4c55",
"NuGet.Config": "cb93c65e28718aa9075fce221e9f9cea9e72d3fe1b30462383448a591f5b3aa1",
"global.json": "67381be18aa807c04218165844967cf58235875477f30495ba98c3648248a9d4",
"src/ArcForges.Cloud/ArcForges.Cloud.csproj": "d2b84581970f81643c43207cb1e24557cd44abb7867e2ddfca6c18b6ed5c7851",
"src/ArcForges.Cloud/HealthStatus.cs": "984e22e7e2473e186e39e9db156b3c1b1275dd32af5d64e5591438785438739b",
"src/ArcForges.Cloud/HelloEndpoint.cs": "15ed003e7867e8131a8fa32ae74ffe2b6347f970d8ca679e0e538409aeb76598",
"src/ArcForges.Cloud/Program.cs": "5591a3562e67d399234b4ccd74e2f72e46dcff141e08f43c26dc87448ace534c",
"src/ArcForges.Cloud/packages.lock.json": "cbd7175143f33615d861ed2dc65e7b8cb30671a0e0ce62b81781943df6b2520c",
"Dockerfile": "cbe3e60d8b49be36901370e80b5171832642dd30680af83356431910edb07537",
".dockerignore": "1bbebcf664aad8b96ed8e57799f555ea44ff8a99e526bf8eee0111a8ec1444ae",
"eng/version-sources.json": "9a848f211b5b64ce5b75ff398e991e16adc5f20fa716c5b46ccc71ddab210766",
"package-lock.json": "ffc439bd73191160b61b7f660690291799bad6f7d247d51593114707a25adbbe",
"src/ArcForges.Cloud/BuildIdentity.cs": "203f8d8fd30df0cfd1bf9ea68fb38ffa48403aa5c653bb09db29e5d752976e85"
},
"buildImage": "mcr.microsoft.com/dotnet/sdk:10.0.401-noble-aot@sha256:96f3b7d45f53eb05990f05b89ce61c4e23d07a5098521c2f20b018630e34f298"
}
}
91 changes: 91 additions & 0 deletions eng/provenance/artifact-profiles/cloud-release-r12.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
{
"schemaVersion": 1,
"id": "cloud-release-r12",
"ownerCommit": "944f54c52953952c434585c6d7cae9772f1d3010",
"worker": {
"sha256": "a386a9f90d50f2b297f22e78c460f47e29f4005ec4313980348e4c53b82764e4",
"inputs": {
"node_modules/@cloudflare/containers/dist/lib/helpers.js": "320eae245a1d05a64c8348652f6808fa54c776340bd7c24391c19fe3b9e0f05f",
"node_modules/@cloudflare/containers/dist/lib/container.js": "9dfc5feaa43b2bdec08863c85eb94731237aeb9f19c7b7e58ff426776ec8863c",
"node_modules/@cloudflare/containers/dist/lib/utils.js": "22f96e63b873b10081fc15216bffc8d23a4614516efcb64be99db87372d4011c",
"node_modules/@cloudflare/containers/dist/index.js": "4788f78cbab43389d23feb71c8ef4e6657c01f9eeffe962650310784390bd486",
"worker/router.ts": "8e6fbb57855f0987cdf95dea492ce66184825cc2f5ae127865ff7988f8b57af3",
"worker/index.ts": "5317c8257a4ffcd4e023b08981cf8861d10092984a2664852b0eb55d2f34e50d"
},
"outputInputs": [
"node_modules/@cloudflare/containers/dist/index.js",
"node_modules/@cloudflare/containers/dist/lib/container.js",
"node_modules/@cloudflare/containers/dist/lib/helpers.js",
"worker/index.ts",
"worker/router.ts"
],
"externalImports": [
"cloudflare:workers"
],
"exports": [
"CloudContainer",
"default"
],
"packages": {
"@cloudflare/containers": {
"version": "0.3.7",
"integrity": "sha512-DM9dm3FnIBSyiSJ1FLavKwl/lk3oAmTaynCzZQ9pZR0ncRPquSxkxd8Nu2MFILxmDDsPkxKsSNEh9mHHMty4Fw=="
},
"wrangler": {
"version": "4.135.0",
"integrity": "sha512-WrNBQSfIG6YcILJcodYr5ty8vgkzGsV8YX+kfd+uZ5/Bd8cUW0GnUIRKAVfn5kYKqh1m/BPcji9h1d7mE8euFw=="
},
"esbuild": {
"version": "0.28.1",
"integrity": "sha512-HrJrvZv5ayxBzPfwphOoNzkzOIIlifzk0KJrGK2c8R4+LKpMtpYLQeUdjnwjWv/LZlkH2laZk+4w78pi99D4Vw=="
}
},
"legalFiles": [
"LICENSE",
"NOTICE",
"eng/provenance/NOTICE.txt",
"third-party/Containers.LICENSE.txt",
"third-party/Esbuild.LICENSE.txt"
]
},
"image": {
"baseImage": "mcr.microsoft.com/dotnet/runtime-deps:10.0.12-noble-chiseled@sha256:18d4848091a40d13dbfdd6a8340c1657dc3e2f2d7fa2f042e9d162e68669dbc9",
"baseLegal": {
"/usr/share/doc/base-files/copyright": "fd7e4aae7e7b05f217bcf2d02322825c360e66c52c4c2f1b28d784d6297a1c23",
"/usr/share/doc/ca-certificates/copyright": "e85e1bcad3a915dc7e6f41412bc5bdeba275cadd817896ea0451f2140a93967c",
"/usr/share/doc/gcc-14-base/copyright": "20390f8a6f3b1e4d7cb45dd8652dabb259bbef688cbad839bcdb0b9ba7252f79",
"/usr/share/doc/libc6/copyright": "d3c95b56fa33e28b57860580f0baf4e4f4de2a268a2b80f1d031a5191bade265",
"/usr/share/doc/libssl3t64/copyright": "6a7da622fe0637a334d2a8fc470852d2ffb77d9a2b2f930f854e32a41ad6ef35",
"/usr/share/doc/openssl/copyright": "6a7da622fe0637a334d2a8fc470852d2ffb77d9a2b2f930f854e32a41ad6ef35"
},
"legalFiles": [
"LICENSE",
"NOTICE",
"eng/provenance/NOTICE.txt",
"third-party/Contracts.NOTICE.txt",
"third-party/DotNet.AspNetCore.NOTICES.txt",
"third-party/DotNet.LICENSE.txt",
"third-party/DotNet.Runtime.NOTICES.txt",
"third-party/Grpc.LICENSE.txt",
"third-party/Protobuf.LICENSE.txt"
],
"inputs": {
"Directory.Build.props": "594fe799ea787c02d4406e14360c4b1902a5aee8679b76c8ac797ae34a9e792c",
"Directory.Build.targets": "fa4bf35487140fecd21b71a2fb524792631a292df2313f9440f8c6e7e90a82d2",
"Directory.Packages.props": "b842214f27a1b95af27bfba82a786df28ed41f0443b545976c4fffc195df4c55",
"NuGet.Config": "cb93c65e28718aa9075fce221e9f9cea9e72d3fe1b30462383448a591f5b3aa1",
"global.json": "67381be18aa807c04218165844967cf58235875477f30495ba98c3648248a9d4",
"src/ArcForges.Cloud/ArcForges.Cloud.csproj": "d2b84581970f81643c43207cb1e24557cd44abb7867e2ddfca6c18b6ed5c7851",
"src/ArcForges.Cloud/HealthStatus.cs": "984e22e7e2473e186e39e9db156b3c1b1275dd32af5d64e5591438785438739b",
"src/ArcForges.Cloud/HelloEndpoint.cs": "15ed003e7867e8131a8fa32ae74ffe2b6347f970d8ca679e0e538409aeb76598",
"src/ArcForges.Cloud/Program.cs": "5591a3562e67d399234b4ccd74e2f72e46dcff141e08f43c26dc87448ace534c",
"src/ArcForges.Cloud/packages.lock.json": "cbd7175143f33615d861ed2dc65e7b8cb30671a0e0ce62b81781943df6b2520c",
"Dockerfile": "cbe3e60d8b49be36901370e80b5171832642dd30680af83356431910edb07537",
".dockerignore": "1bbebcf664aad8b96ed8e57799f555ea44ff8a99e526bf8eee0111a8ec1444ae",
"eng/version-sources.json": "9a848f211b5b64ce5b75ff398e991e16adc5f20fa716c5b46ccc71ddab210766",
"package-lock.json": "ffc439bd73191160b61b7f660690291799bad6f7d247d51593114707a25adbbe",
"src/ArcForges.Cloud/BuildIdentity.cs": "203f8d8fd30df0cfd1bf9ea68fb38ffa48403aa5c653bb09db29e5d752976e85"
},
"buildImage": "mcr.microsoft.com/dotnet/sdk:10.0.401-noble-aot@sha256:96f3b7d45f53eb05990f05b89ce61c4e23d07a5098521c2f20b018630e34f298"
}
}
12 changes: 10 additions & 2 deletions eng/provenance/files.json
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,8 @@
"eng/provenance/NOTICE.txt",
"eng/provenance/artifact-profiles/cloud-release-r1.json",
"eng/provenance/artifact-profiles/cloud-release-r10.json",
"eng/provenance/artifact-profiles/cloud-release-r11.json",
"eng/provenance/artifact-profiles/cloud-release-r12.json",
"eng/provenance/artifact-profiles/cloud-release-r2.json",
"eng/provenance/artifact-profiles/cloud-release-r3.json",
"eng/provenance/artifact-profiles/cloud-release-r4.json",
Expand All @@ -59,6 +61,8 @@
"eng/provenance/records/cloud-runtime-notices-r1.json",
"eng/provenance/records/cloud-runtime-notices-r10.json",
"eng/provenance/records/cloud-runtime-notices-r11.json",
"eng/provenance/records/cloud-runtime-notices-r12.json",
"eng/provenance/records/cloud-runtime-notices-r13.json",
"eng/provenance/records/cloud-runtime-notices-r2.json",
"eng/provenance/records/cloud-runtime-notices-r3.json",
"eng/provenance/records/cloud-runtime-notices-r4.json",
Expand All @@ -69,6 +73,8 @@
"eng/provenance/records/cloud-runtime-notices-r9.json",
"eng/provenance/records/cloud-worker-bundle-r1.json",
"eng/provenance/records/cloud-worker-bundle-r10.json",
"eng/provenance/records/cloud-worker-bundle-r11.json",
"eng/provenance/records/cloud-worker-bundle-r12.json",
"eng/provenance/records/cloud-worker-bundle-r2.json",
"eng/provenance/records/cloud-worker-bundle-r3.json",
"eng/provenance/records/cloud-worker-bundle-r4.json",
Expand All @@ -78,6 +84,7 @@
"eng/provenance/records/cloud-worker-bundle-r8.json",
"eng/provenance/records/cloud-worker-bundle-r9.json",
"eng/provenance/records/containers-mit-legal-r1.json",
"eng/provenance/records/contracts-notice-legal-r1.json",
"eng/provenance/records/dotnet-aspnetcore-legal-r1.json",
"eng/provenance/records/dotnet-license-legal-r1.json",
"eng/provenance/records/dotnet-runtime-legal-r1.json",
Expand Down Expand Up @@ -147,7 +154,8 @@
"src/ArcForges.Cloud/BuildIdentity.cs": "arcnotes-build-identity-r1",
"tests/ArcForges.Cloud.Tests/BuildIdentityTests.cs": "arcnotes-build-identity-r1",
"eng/version-sources.json": "arcnotes-build-identity-r1",
"tests/ArcForges.Cloud.Tests/BuildMetadataTests.cs": "arcnotes-build-identity-r1"
"tests/ArcForges.Cloud.Tests/BuildMetadataTests.cs": "arcnotes-build-identity-r1",
"third-party/Contracts.NOTICE.txt": "contracts-notice-legal-r1"
},
"artifacts": ["cloud-runtime-notices-r11", "cloud-worker-bundle-r10"]
"artifacts": ["cloud-runtime-notices-r13", "cloud-worker-bundle-r12"]
}
Loading
Loading