@wenathlan/cobaia 2.0.158 → 2.0.160
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.dev.vars.example +3 -0
- package/.dockerignore +41 -0
- package/.env.example +9 -0
- package/.gitattributes +36 -0
- package/.nvmrc +1 -0
- package/CHANGELOG.md +10 -0
- package/README.md +5 -0
- package/SECURITY.md +27 -0
- package/acceptableusepolicy.md +9 -0
- package/authors.md +16 -0
- package/bugreport.md +16 -0
- package/bun.lock +16 -12
- package/cla.md +9 -0
- package/cobaia.csproj +1 -1
- package/cobaia.gemspec +1 -1
- package/cobaia.java +1 -1
- package/codeofconduct.md +9 -0
- package/contributing.md +9 -0
- package/copyright.md +7 -0
- package/disclaimer.md +7 -0
- package/eula.md +7 -0
- package/exportcontrol.md +17 -0
- package/governance.md +9 -0
- package/index.html +1 -1
- package/notice.md +7 -0
- package/package.json +1 -1
- package/pnpm-workspace.yaml +2 -0
- package/pom.xml +1 -1
- package/privacypolicy.md +9 -0
- package/pullrequesttemplate.md +13 -0
- package/support.md +7 -0
- package/termsandconditions.md +9 -0
- package/termsofuse.md +9 -0
- package/thirdpartynotices.md +7 -0
- package/trademarkpolicy.md +7 -0
- package/vite.config.ts +1 -1
package/.dockerignore
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# the cobaia docker build context.
|
|
2
|
+
# The docker build context carries the sources only: THE Dockerfile builds
|
|
3
|
+
# from a clean checkout — the deps stage installs the frozen bun.lock tree
|
|
4
|
+
# itself, the builder compiles every dist target and runs the deterministic
|
|
5
|
+
# checks, and the runtime copies only the lean output. The local
|
|
6
|
+
# node_modules trees, the built dist, the committed distpackage staging
|
|
7
|
+
# (the builder stages its own), the release scratch, the mobile capacitor
|
|
8
|
+
# shell (a native wrapper concern, never a container input), the packaged
|
|
9
|
+
# archives and the development state never enter the image.
|
|
10
|
+
.git
|
|
11
|
+
# the workflow corpus stays in the build context: the gate ladder the
|
|
12
|
+
# container image runs (npm test) reads .github/workflows through the
|
|
13
|
+
# workflowcheck, readiness and publishing-pipeline contracts, so the
|
|
14
|
+
# workflows travel with the sources into the builder stage only — the
|
|
15
|
+
# runtime stages copy their lean outputs and never ship the corpus.
|
|
16
|
+
.github/*
|
|
17
|
+
!.github/workflows
|
|
18
|
+
.manus-logs
|
|
19
|
+
node_modules
|
|
20
|
+
sol/node_modules
|
|
21
|
+
mobile
|
|
22
|
+
dist
|
|
23
|
+
distpackage
|
|
24
|
+
build
|
|
25
|
+
sol/dist
|
|
26
|
+
release
|
|
27
|
+
staging
|
|
28
|
+
*.tgz
|
|
29
|
+
*.zip
|
|
30
|
+
*.xpi
|
|
31
|
+
*.vsix
|
|
32
|
+
*.tar.gz
|
|
33
|
+
*.log
|
|
34
|
+
*.sqlite
|
|
35
|
+
*.db
|
|
36
|
+
.env
|
|
37
|
+
.env.*
|
|
38
|
+
__pycache__
|
|
39
|
+
*.pyc
|
|
40
|
+
*.pyo
|
|
41
|
+
tests/tmp
|
package/.env.example
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# cobaia monetization environment variables
|
|
2
|
+
# copy to .env and fill in your values
|
|
3
|
+
|
|
4
|
+
# database url — sqlite local file or libsql remote
|
|
5
|
+
# local sqlite (default for dev)
|
|
6
|
+
DATABASE_URL="file:./local.db"
|
|
7
|
+
# remote libsql (for vercel netlify production)
|
|
8
|
+
# DATABASE_URL="libsql:https://your-turso-db.turso.io"
|
|
9
|
+
# DATABASE_AUTH_TOKEN="your-turso-auth-token"
|
package/.gitattributes
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# the cobaia text attributes.
|
|
2
|
+
# Normalize line endings to LF
|
|
3
|
+
* text=auto eol=lf
|
|
4
|
+
|
|
5
|
+
# Explicit text types (the merged engine sources)
|
|
6
|
+
*.ts text eol=lf
|
|
7
|
+
*.tsx text eol=lf
|
|
8
|
+
*.js text eol=lf
|
|
9
|
+
*.mjs text eol=lf
|
|
10
|
+
*.cjs text eol=lf
|
|
11
|
+
*.json text eol=lf
|
|
12
|
+
*.css text eol=lf
|
|
13
|
+
*.md text eol=lf
|
|
14
|
+
*.prisma text eol=lf
|
|
15
|
+
|
|
16
|
+
# Explicit binary types (no EOL conversion)
|
|
17
|
+
*.png binary
|
|
18
|
+
*.jpg binary
|
|
19
|
+
*.jpeg binary
|
|
20
|
+
*.gif binary
|
|
21
|
+
*.webp binary
|
|
22
|
+
*.ico binary
|
|
23
|
+
*.icns binary
|
|
24
|
+
*.woff binary
|
|
25
|
+
*.woff2 binary
|
|
26
|
+
*.ttf binary
|
|
27
|
+
*.otf binary
|
|
28
|
+
*.eot binary
|
|
29
|
+
*.zip binary
|
|
30
|
+
*.tgz binary
|
|
31
|
+
*.tar.gz binary
|
|
32
|
+
*.lock binary
|
|
33
|
+
|
|
34
|
+
# Local database stores stay binary (the sqlite mirrors the workbench writes at runtime)
|
|
35
|
+
*.db binary
|
|
36
|
+
*.db-journal binary
|
package/.nvmrc
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
26.13.0
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# Cobaia release notes
|
|
2
|
+
|
|
3
|
+
## 2.0.158 — the docstd rung (the document family answers one template)
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
| Area | Change |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| The document suite | Cobaia joins the family document standard: the saddle-shape doc suite lands whole at the app root — the notice, the authors, the copyright, the disclaimer, the eula, the support, the governance, the cla, the acceptable use policy, the export control notice, the trademark policy, the terms of use, the terms and conditions, the privacy policy, the code of conduct, the bug report, the pull request template, the third-party notices, the readme, the security policy and this changelog — every seat of the family answering one template in its own voice. |
|
|
10
|
+
| The provenance | The suite adapts the saddle reference documents (the most complete seat of the family) to the cobaia seat — the public monetization surface: mrr plans, honest ad slots and the support links; GPL-3.0-only, the DevThink monorepo home (https://github.com/wenathlan/devthink/tree/main/cobaia) and the owner contact carry across every file. |
|
package/README.md
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# cobaia
|
|
2
|
+
|
|
3
|
+
Public monetization surface. MRR plans, honest ad slots and the support links (github sponsors, ko-fi); the os imports it for plans, quotas and billing surfaces while the family apps stay clean. This folder receives the cobaia application per the complete tree.
|
|
4
|
+
|
|
5
|
+
The document suite answers the family template: the legal and community set (notice, authors, copyright, disclaimer, eula, support, governance, cla, acceptable use policy, export control, trademark policy, terms of use, terms and conditions, privacy policy, code of conduct), the contribution set (contributing, bug report, pull request template, third-party notices) and the release face (this readme, SECURITY, CHANGELOG) — the saddle-shape suite every seat of the family carries, in the cobaia voice.
|
package/SECURITY.md
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Security Policy — Cobaia (the monetization surface)
|
|
2
|
+
|
|
3
|
+
## Supported release line
|
|
4
|
+
|
|
5
|
+
Security fixes target the maintained `2.x` family line and later maintained releases.
|
|
6
|
+
|
|
7
|
+
| Version | Supported |
|
|
8
|
+
| --- | --- |
|
|
9
|
+
| 2.0.x (the family ladder) | Yes |
|
|
10
|
+
|
|
11
|
+
## Scope
|
|
12
|
+
|
|
13
|
+
Cobaia is the public monetization surface of the DevThink family: the mrr plan catalog, the honest ad slots and the support links (github sponsors, ko-fi) — the os imports it for plans, quotas and billing surfaces. The Plan, ad slot and support surfaces read only the configuration and the data the operator supplies; nothing rides upstream without an operator-requested integration.
|
|
14
|
+
|
|
15
|
+
## Secrets and credentials
|
|
16
|
+
|
|
17
|
+
The public repository must not include provider keys, session cookies, database files, captured authorization headers or `.env` payloads. The plan catalog and the ad slots reference public support links; the repository carries no payment credential. The CI secret-scan gate (TruffleHog with `--results=verified` over the full git history) and the Trivy filesystem scan (vuln, secret, misconfig) run on every push and pull request.
|
|
18
|
+
|
|
19
|
+
Private disclosure: do not publish exploit details in a public issue before maintainers have had a reasonable opportunity to investigate and coordinate a fix. Remove sensitive data from logs and send a minimal report through the repository's private security reporting channel at https://github.com/wenathlan/devthink/security/advisories/new. Revoke any credential that may have appeared in a local file or public commit before reporting. Security advisories and published fixes are tracked at https://github.com/wenathlan/devthink/security/advisories.
|
|
20
|
+
|
|
21
|
+
Security testing must be authorized by the owner of the target system. Development and CI scanning of artifacts is allowed within the project's own build and test environments. Unauthorized penetration testing, fuzzing, active scanning or credential probing of third-party systems is not allowed.
|
|
22
|
+
|
|
23
|
+
## Supply chain
|
|
24
|
+
|
|
25
|
+
- Security advisories for the npm package line are published at https://github.com/wenathlan/devthink/security/advisories.
|
|
26
|
+
- The version tag is the supply-chain contract for every GitHub Actions reference (the family standard: digests and checksums are computed on the GitHub runners at run time — release `SHA256SUMS` assets, GitHub-computed release-asset digests consumed as build args — never written into workflow files or the Dockerfile).
|
|
27
|
+
- The project records accepted risks, dependency advisories and remediation status in the security documentation and workflow reports.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Cobaia acceptable use policy
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
The Cobaia source code is licensed under the GNU General Public License version 3.0 only. This policy governs hosted services, credentials, runners and integrations operated with Cobaia; it does not reduce rights granted by the GPL.
|
|
6
|
+
|
|
7
|
+
Operators must use Cobaia lawfully, respect the terms of each connected provider, protect credentials, and obtain authorization before accessing systems or data. Operators must not use Cobaia to distribute malware, evade access controls, attack third-party systems, violate privacy, infringe intellectual property, or exceed provider quotas.
|
|
8
|
+
|
|
9
|
+
The project may suspend a hosted integration or reject an unsafe request when necessary to protect users, providers or the public. These operational controls do not restrict lawful use, modification or redistribution of the GPL-licensed software itself.
|
package/authors.md
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Cobaia authors
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
The project authors and historical copyright holders are:
|
|
6
|
+
|
|
7
|
+
| Contributor | Role |
|
|
8
|
+
|---|---|
|
|
9
|
+
| devthink | Historical author and project contributor |
|
|
10
|
+
| nathlan | Project owner and maintainer |
|
|
11
|
+
| iakadion | Historical author and project contributor |
|
|
12
|
+
| nathu filho | Historical author and project contributor |
|
|
13
|
+
| allan neris | Historical author and project contributor |
|
|
14
|
+
| andraneris | Historical author and project contributor |
|
|
15
|
+
|
|
16
|
+
Cobaia is maintained at https://github.com/wenathlan/devthink/tree/main/cobaia (the DevThink monorepo) and distributed under GPL-3.0-only. Contributors retain copyright in their original contributions unless a separate written agreement states otherwise.
|
package/bugreport.md
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Bug Report
|
|
3
|
+
about: Report a reproducible issue in Cobaia
|
|
4
|
+
title: "[BUG]"
|
|
5
|
+
labels: bug
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Cobaia is licensed under GPL-3.0-only. Please do not include secrets or private data.
|
|
9
|
+
|
|
10
|
+
**Describe the issue:**
|
|
11
|
+
|
|
12
|
+
**File / Line:**
|
|
13
|
+
|
|
14
|
+
**Expected behavior:**
|
|
15
|
+
|
|
16
|
+
**Additional context:**
|
package/bun.lock
CHANGED
|
@@ -11,10 +11,11 @@
|
|
|
11
11
|
"@fontsource-variable/inter": "^5.3.0",
|
|
12
12
|
"@fontsource-variable/jetbrains-mono": "^5.3.0",
|
|
13
13
|
"@fontsource-variable/outfit": "^5.3.0",
|
|
14
|
-
"@hono/node-server": "^2.1.
|
|
14
|
+
"@hono/node-server": "^2.1.6",
|
|
15
15
|
"@libsql/client": "^0.18.0",
|
|
16
16
|
"@prisma/adapter-libsql": "^7.10.1",
|
|
17
17
|
"@prisma/client": "^7.10.1",
|
|
18
|
+
"@wenathlan/argan": "~2.0.155",
|
|
18
19
|
"@wenathlan/cadria": "~2.0.155",
|
|
19
20
|
"@wenathlan/debonair": "~2.0.155",
|
|
20
21
|
"@wenathlan/devthink": "~2.0.154",
|
|
@@ -23,7 +24,7 @@
|
|
|
23
24
|
"@wenathlan/vault": "~2.0.155",
|
|
24
25
|
"better-sqlite3": "^13.0.3",
|
|
25
26
|
"drizzle-orm": "^0.45.4",
|
|
26
|
-
"gsap": "^3.15.
|
|
27
|
+
"gsap": "^3.15.1",
|
|
27
28
|
"hono": "^4.13.16",
|
|
28
29
|
"ink": "^7.1.1",
|
|
29
30
|
"lucide-react": "^1.68.0",
|
|
@@ -141,6 +142,9 @@
|
|
|
141
142
|
"yaml": "^2.9.1",
|
|
142
143
|
"zod": "^4.6.7",
|
|
143
144
|
},
|
|
145
|
+
"peerDependencies": {
|
|
146
|
+
"playwright": "^1.63.0",
|
|
147
|
+
},
|
|
144
148
|
},
|
|
145
149
|
},
|
|
146
150
|
"overrides": {
|
|
@@ -314,7 +318,7 @@
|
|
|
314
318
|
|
|
315
319
|
"@grpc/proto-loader": ["@grpc/proto-loader@0.7.15", "", { "dependencies": { "lodash.camelcase": "^4.3.0", "long": "^5.0.0", "protobufjs": "^7.2.5", "yargs": "^17.7.2" }, "bin": { "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" } }, "sha512-tMXdRCfYVixjuFK+Hk0Q1s38gV9zDiDJfWL3h1rv4Qc39oILCu1TRTDt7+fGUI8K4G1Fj125Hx/ru3azECWTyQ=="],
|
|
316
320
|
|
|
317
|
-
"@hono/node-server": ["@hono/node-server@2.1.
|
|
321
|
+
"@hono/node-server": ["@hono/node-server@2.1.6", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ=="],
|
|
318
322
|
|
|
319
323
|
"@hookform/resolvers": ["@hookform/resolvers@5.9.2", "", { "dependencies": { "@standard-schema/utils": "^0.3.0" }, "peerDependencies": { "@sinclair/typebox": ">=0.25.24", "@standard-schema/spec": "^1.0.0", "@typeschema/main": ">=0.13.7", "@vinejs/vine": "^2.0.0 || ^3.0.0 || ^4.0.0", "ajv": "^8.12.0", "ajv-errors": "^3.0.0", "ajv-formats": "^2.1.1", "arktype": "^2.0.0", "ata-validator": "^1.23.0", "class-transformer": ">=0.4.0", "class-validator": ">=0.12.0", "computed-types": "^1.0.0", "effect": "^3.10.3", "fluentvalidation-ts": "^3.0.0", "fp-ts": "^2.7.0", "io-ts": "^2.0.0", "joi": "^17.0.0 || ^18.0.0", "nope-validator": ">=0.12.0", "react-hook-form": "^7.55.0", "superstruct": ">=0.12.0", "typanion": "^3.3.2", "valibot": ">=0.31.0 || ^1.0.0-beta.4 || ^1.0.0-rc", "vest": ">=6.0.0", "yup": "^1.0.0", "zod": "^3.25.0 || ^4.0.0" }, "optionalPeers": ["@sinclair/typebox", "@standard-schema/spec", "@typeschema/main", "@vinejs/vine", "ajv", "ajv-errors", "ajv-formats", "arktype", "ata-validator", "class-transformer", "class-validator", "computed-types", "effect", "fluentvalidation-ts", "fp-ts", "io-ts", "joi", "nope-validator", "superstruct", "typanion", "valibot", "vest", "yup", "zod"] }, "sha512-RtjTnZqsC38s4NKp2XO3fD8IA5uyN4tB7McQ5C6uiMPcV+WWO8F+wVa3e+BXUpH2ScgxghAlwFRMVqjT9WChAQ=="],
|
|
320
324
|
|
|
@@ -1328,7 +1332,7 @@
|
|
|
1328
1332
|
|
|
1329
1333
|
"graphmatch": ["graphmatch@1.1.1", "", {}, "sha512-5ykVn/EXM1hF0XCaWh05VbYvEiOL2lY1kBxZtaYsyvjp7cmWOU1XsAdfQBwClraEofXDT197lFbXOEVMHpvQOg=="],
|
|
1330
1334
|
|
|
1331
|
-
"gsap": ["gsap@3.15.
|
|
1335
|
+
"gsap": ["gsap@3.15.1", "", {}, "sha512-63yjWRFWj3QRP1UOuD8kcidCcy3nxb1mMRpwHr/xJRvPfm9GtWOXFAYUiL0ro1fgPq2nY53LR+98pAgy9BumBg=="],
|
|
1332
1336
|
|
|
1333
1337
|
"has-flag": ["has-flag@4.0.0", "", {}, "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ=="],
|
|
1334
1338
|
|
|
@@ -2188,8 +2192,6 @@
|
|
|
2188
2192
|
|
|
2189
2193
|
"@visx/vendor/d3-array": ["d3-array@3.2.1", "", { "dependencies": { "internmap": "2.0.3" } }, "sha512-gUY/qeHq/yNqqoCKNq4vtpFLdoCdvyNpWoC/KNjhGbhDuQpAM9sIQQKkXSNpXa9h5KySs/gzm7R88WkUutgwWQ=="],
|
|
2190
2194
|
|
|
2191
|
-
"@wenathlan/argan/@hono/node-server": ["@hono/node-server@2.1.6", "", { "peerDependencies": { "hono": "^4 || ^5.0.0-0" } }, "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ=="],
|
|
2192
|
-
|
|
2193
2195
|
"@wenathlan/argan/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2194
2196
|
|
|
2195
2197
|
"@wenathlan/argan/@wenathlan/debonair": ["@wenathlan/debonair@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-o35lj5DbxAwhwyuSqb1egCKbvZplDt6LTT6COtBmfdzxH7nO9R0pFGrkCtmK8twgAJ7FMzpEY5pycvigH82EEA=="],
|
|
@@ -2198,7 +2200,7 @@
|
|
|
2198
2200
|
|
|
2199
2201
|
"@wenathlan/argan/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2200
2202
|
|
|
2201
|
-
"@wenathlan/
|
|
2203
|
+
"@wenathlan/argan/gsap": ["gsap@3.15.0", "", {}, "sha512-dMW4CWBTUK1AEEDeZc1g4xpPGIrSf9fJF960qbTZmN/QwZIWY5wgliS6JWl9/25fpTGJrMRtSjGtOmPnfjZB+A=="],
|
|
2202
2204
|
|
|
2203
2205
|
"@wenathlan/cadria/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2204
2206
|
|
|
@@ -2208,7 +2210,7 @@
|
|
|
2208
2210
|
|
|
2209
2211
|
"@wenathlan/cadria/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2210
2212
|
|
|
2211
|
-
"@wenathlan/
|
|
2213
|
+
"@wenathlan/cadria/gsap": ["gsap@3.15.0", "", {}, "sha512-dMW4CWBTUK1AEEDeZc1g4xpPGIrSf9fJF960qbTZmN/QwZIWY5wgliS6JWl9/25fpTGJrMRtSjGtOmPnfjZB+A=="],
|
|
2212
2214
|
|
|
2213
2215
|
"@wenathlan/debonair/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2214
2216
|
|
|
@@ -2218,15 +2220,15 @@
|
|
|
2218
2220
|
|
|
2219
2221
|
"@wenathlan/debonair/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2220
2222
|
|
|
2221
|
-
"@wenathlan/
|
|
2223
|
+
"@wenathlan/debonair/gsap": ["gsap@3.15.0", "", {}, "sha512-dMW4CWBTUK1AEEDeZc1g4xpPGIrSf9fJF960qbTZmN/QwZIWY5wgliS6JWl9/25fpTGJrMRtSjGtOmPnfjZB+A=="],
|
|
2222
2224
|
|
|
2223
2225
|
"@wenathlan/devthink/@wenathlan/saddle": ["@wenathlan/saddle@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" }, "optionalDependencies": { "commander": "^15.0.0", "dockerode": "^5.0.1", "express": "^5.3.0" }, "peerDependencies": { "playwright": "^1.63.0" }, "optionalPeers": ["playwright"], "bin": { "saddle": "cli.ts" } }, "sha512-8E0eHNXgtjhxXbm5WO8iB/llufdZhitX44vUwjqgAbjU6MHjpMFB1uHa1Zpy1raSIK6t6ITsArY7V4/BuqaBBQ=="],
|
|
2224
2226
|
|
|
2225
2227
|
"@wenathlan/devthink/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2226
2228
|
|
|
2227
|
-
"@wenathlan/
|
|
2229
|
+
"@wenathlan/devthink/gsap": ["gsap@3.15.0", "", {}, "sha512-dMW4CWBTUK1AEEDeZc1g4xpPGIrSf9fJF960qbTZmN/QwZIWY5wgliS6JWl9/25fpTGJrMRtSjGtOmPnfjZB+A=="],
|
|
2228
2230
|
|
|
2229
|
-
"@wenathlan/
|
|
2231
|
+
"@wenathlan/getry/gsap": ["gsap@3.15.0", "", {}, "sha512-dMW4CWBTUK1AEEDeZc1g4xpPGIrSf9fJF960qbTZmN/QwZIWY5wgliS6JWl9/25fpTGJrMRtSjGtOmPnfjZB+A=="],
|
|
2230
2232
|
|
|
2231
2233
|
"@wenathlan/saddle/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2232
2234
|
|
|
@@ -2238,7 +2240,7 @@
|
|
|
2238
2240
|
|
|
2239
2241
|
"@wenathlan/saddle/commander": ["commander@15.0.0", "", {}, "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="],
|
|
2240
2242
|
|
|
2241
|
-
"@wenathlan/
|
|
2243
|
+
"@wenathlan/saddle/gsap": ["gsap@3.15.0", "", {}, "sha512-dMW4CWBTUK1AEEDeZc1g4xpPGIrSf9fJF960qbTZmN/QwZIWY5wgliS6JWl9/25fpTGJrMRtSjGtOmPnfjZB+A=="],
|
|
2242
2244
|
|
|
2243
2245
|
"@wenathlan/vault/@wenathlan/cadria": ["@wenathlan/cadria@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-Sq3bKTmnr1RA8xdWerKET5txfhTeG3V0ALqKskuDjgM+pKthkzNvmj4Ql0h30Vul4lGYu/q1NlCUZccjkbZnog=="],
|
|
2244
2246
|
|
|
@@ -2248,6 +2250,8 @@
|
|
|
2248
2250
|
|
|
2249
2251
|
"@wenathlan/vault/@wenathlan/vault": ["@wenathlan/vault@2.1.8", "", { "dependencies": { "@fluentui/react-icons": "^2.0.345", "@fontsource-variable/bricolage-grotesque": "^5.3.0", "@fontsource-variable/geist-mono": "^5.3.0", "@fontsource-variable/inter": "^5.3.0", "@fontsource-variable/jetbrains-mono": "^5.3.0", "@fontsource-variable/outfit": "^5.3.0", "@hono/node-server": "^2.1.5", "@libsql/client": "^0.18.0", "@prisma/adapter-libsql": "^7.10.1", "@prisma/client": "^7.10.1", "@wenathlan/cadria": "^2.1.7", "@wenathlan/debonair": "^2.1.7", "@wenathlan/getry": "^2.0.154", "@wenathlan/saddle": "^2.1.7", "@wenathlan/vault": "^2.1.7", "better-sqlite3": "^13.0.3", "drizzle-orm": "^0.45.4", "gsap": "^3.15.0", "hono": "^4.13.16", "ink": "^7.1.1", "lucide-react": "^1.67.0", "motion": "^12.43.0", "react": "^19.3.1", "react-devtools-core": "^8.0.0", "react-dom": "^19.3.1", "three": "^0.187.0", "wouter": "^3.13.0", "z-ai-web-dev-sdk": "^0.0.18" } }, "sha512-V1ueG/nhdRF5hDuqwZGkN4es9Qiz7na0ymfGQine/NEQBG4h3TZUYJrZ1oxAgCA2/A8XtUh3lPA8juNio5waOA=="],
|
|
2250
2252
|
|
|
2253
|
+
"@wenathlan/vault/gsap": ["gsap@3.15.0", "", {}, "sha512-dMW4CWBTUK1AEEDeZc1g4xpPGIrSf9fJF960qbTZmN/QwZIWY5wgliS6JWl9/25fpTGJrMRtSjGtOmPnfjZB+A=="],
|
|
2254
|
+
|
|
2251
2255
|
"c12/chokidar": ["chokidar@5.0.0", "", { "dependencies": { "readdirp": "5.1.1" } }, "sha512-TQMmc3w+5AxjpL8iIiwebF73dRDF4fBIieAqGn9RGCWaEVwQ6Fb2cGe31Yns0RRIzii5goJ1Y7xbMwo1TxMplw=="],
|
|
2252
2256
|
|
|
2253
2257
|
"cliui/string-width": ["string-width@4.2.3", "", { "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.1" } }, "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g=="],
|
package/cla.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Cobaia contributor terms
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
Cobaia does not require an exclusive proprietary assignment of contributions. A contributor submitting a change represents that the contributor has the right to submit it and grants the project the permissions necessary to review, merge, reproduce, distribute and maintain the contribution under GPL-3.0-only.
|
|
6
|
+
|
|
7
|
+
The contributor keeps copyright in the contribution. The project may include the contribution in source and binary releases under GPL-3.0-only and may preserve attribution and required notices.
|
|
8
|
+
|
|
9
|
+
If a separate contributor agreement is required for a particular institutional or commercial arrangement, it must be reviewed and accepted in writing before the contribution is merged. This file is not a replacement for legal advice or a bespoke agreement.
|
package/cobaia.csproj
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<AssemblyName>cobaia</AssemblyName>
|
|
5
5
|
<RootNamespace>cobaia</RootNamespace>
|
|
6
6
|
<PackageId>cobaia</PackageId>
|
|
7
|
-
<Version>2.0.
|
|
7
|
+
<Version>2.0.159</Version>
|
|
8
8
|
<Authors>wenathlan</Authors>
|
|
9
9
|
<Description>Distribution package containing the cobaia documentation set and the tests directory. cobaia is the monetization surface — the plans, the support rails and the honest advertisement slots.</Description>
|
|
10
10
|
<PackageLicenseExpression>GPL-3.0-only</PackageLicenseExpression>
|
package/cobaia.gemspec
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Gem::Specification.new do |spec|
|
|
2
2
|
spec.name = "cobaia"
|
|
3
|
-
spec.version = ENV.fetch("COBAIA_VERSION", "2.0.
|
|
3
|
+
spec.version = ENV.fetch("COBAIA_VERSION", "2.0.159")
|
|
4
4
|
spec.authors = ["wenathlan"]
|
|
5
5
|
spec.email = ["support@users.noreply.github.com"]
|
|
6
6
|
spec.summary = "The cobaia documentation and tests envelope (the monetization surface — the plans, the support rails and the honest advertisement slots)."
|
package/cobaia.java
CHANGED
|
@@ -10,7 +10,7 @@ package io.github.wenathlan.cobaia;
|
|
|
10
10
|
*/
|
|
11
11
|
final class Cobaia {
|
|
12
12
|
/** The version of the cobaia envelope (the six-distribution completeness wave). */
|
|
13
|
-
public static final String VERSION = "2.0.
|
|
13
|
+
public static final String VERSION = "2.0.159";
|
|
14
14
|
private Cobaia() {
|
|
15
15
|
}
|
|
16
16
|
}
|
package/codeofconduct.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Cobaia code of conduct
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
The Cobaia community follows a respectful, inclusive and technically constructive standard. Participants communicate in good faith, explain technical concerns with evidence, respect different backgrounds and experience levels, and protect private information.
|
|
6
|
+
|
|
7
|
+
Unacceptable conduct includes harassment, discrimination, threats, deliberate disclosure of private information, malicious interference, impersonation, spam, and behavior that violates applicable law or the project policies.
|
|
8
|
+
|
|
9
|
+
Project maintainers may moderate discussions, remove harmful content, or restrict participation when necessary. Reports should be sent through the repository security or support channels, with private disclosure used for security-sensitive matters.
|
package/contributing.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Contributing to Cobaia
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
Cobaia welcomes contributions that improve the monetization surface, its plan catalog and ad slots, the documentation, the tests and the security posture. Contributions are licensed under GPL-3.0-only unless a different compatible arrangement is agreed in writing before acceptance.
|
|
6
|
+
|
|
7
|
+
A pull request should explain the change, include focused verification, preserve the root-first architecture and avoid credentials, private data or generated artifacts. Security vulnerabilities must use the private process in `SECURITY.md` rather than a public issue.
|
|
8
|
+
|
|
9
|
+
Maintainers may review, request changes, decline or merge a contribution. No contributor is required to transfer exclusive ownership of their work merely to submit a pull request.
|
package/copyright.md
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Cobaia copyright notice
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
The Cobaia source code and original documentation are distributed under the GNU General Public License version 3.0 only. The complete license text is kept in the repository `LICENSE` file (the saddle seat carries the family copy) and must be distributed with covered copies.
|
|
6
|
+
|
|
7
|
+
Copyright ownership remains with the respective authors and contributors. Copyright ownership does not remove the rights granted by GPL-3.0-only. The Cobaia name, logos and other marks are covered separately by `trademarkpolicy.md`.
|
package/disclaimer.md
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Cobaia disclaimer
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
Cobaia is provided under GPL-3.0-only and without warranty to the maximum extent permitted by law. The project does not guarantee availability, correctness, security, compatibility, performance or fitness for a particular purpose.
|
|
6
|
+
|
|
7
|
+
Operators remain responsible for reviewing source code, configuring integrations, protecting credentials, validating outputs and complying with the terms of connected services. Nothing in this disclaimer removes rights or obligations established by GPL-3.0-only.
|
package/eula.md
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Cobaia end user license notice
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
Cobaia source code, scripts and covered binaries are licensed under the GNU General Public License version 3.0 only. The repository `LICENSE` file (the saddle seat carries the family copy) controls the copyright license and grants the permissions described there.
|
|
6
|
+
|
|
7
|
+
This notice does not add a proprietary restriction to GPL-licensed code. Separate terms may apply to a hosted service, a third-party provider, a trademark, or data supplied by an operator. Those terms cannot remove rights granted by the GPL for the covered source code.
|
package/exportcontrol.md
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
COBAIA - EXPORT CONTROL NOTICE
|
|
2
|
+
Version 1.0, August 2026
|
|
3
|
+
|
|
4
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors. Licensed under GPL-3.0-only.
|
|
5
|
+
Project: cobaia
|
|
6
|
+
|
|
7
|
+
Project Cobaia is open-source software under GPL-3.0-only. Export,
|
|
8
|
+
re-export and sanctions laws may still apply to a particular operator,
|
|
9
|
+
destination, service or use case.
|
|
10
|
+
|
|
11
|
+
You agree not to export, re-export, or transfer Project cobaia to any
|
|
12
|
+
prohibited destination, entity, or person, or for any prohibited end-use.
|
|
13
|
+
|
|
14
|
+
Operators are responsible for checking applicable rules before
|
|
15
|
+
transferring source, binaries, credentials or data across borders.
|
|
16
|
+
|
|
17
|
+
END OF EXPORT CONTROL NOTICE
|
package/governance.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Cobaia governance
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
Cobaia is maintained as the public monetization surface of the family, an open-source project under GPL-3.0-only. The repository owner coordinates releases, security response, release approvals and provider integrations. Contributors retain copyright in their contributions unless a separate written agreement states otherwise.
|
|
6
|
+
|
|
7
|
+
Changes should include focused reasoning, tests where practical, documentation for public behavior, and review of security-sensitive workflows. Release artifacts must be traceable to repository source and generated by the documented automation.
|
|
8
|
+
|
|
9
|
+
Technical governance is recorded in the repository plans and workflow files. This document describes project responsibility and does not override the GPL or a contributor's applicable rights.
|
package/index.html
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
<html lang="en">
|
|
4
4
|
<head>
|
|
5
5
|
<meta charset="utf-8" />
|
|
6
|
-
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no
|
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" />
|
|
7
7
|
<meta
|
|
8
8
|
name="description"
|
|
9
9
|
content="cobaia is the front door of the DevThink family: the pricing, the support page, the app directory and the update blog for ten deployable web applications."
|
package/notice.md
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Cobaia notice
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
Cobaia is open-source software licensed under the GNU General Public License version 3.0 only. The source code, generated artifacts and documentation may include work from third-party projects; each third-party component remains subject to its own license.
|
|
6
|
+
|
|
7
|
+
The project name and logos are trademarks of their respective owner. The trademark policy does not restrict rights granted by GPL-3.0-only to the source code.
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wenathlan/cobaia",
|
|
3
3
|
"packageManager": "pnpm@12.3.4",
|
|
4
|
-
"version": "2.0.
|
|
4
|
+
"version": "2.0.160",
|
|
5
5
|
"description": "cobaia is the monetization surface of the wenathlan family: the content site that carries the plans, the support rails and the honest advertisement slots while the family apps stay clean; the name is provisional until the owner picks the official one",
|
|
6
6
|
"bin": {
|
|
7
7
|
"cobaia": "./cli.ts"
|
package/pnpm-workspace.yaml
CHANGED
|
@@ -78,6 +78,8 @@ minimumReleaseAgeExclude:
|
|
|
78
78
|
- vitest@5.1.0
|
|
79
79
|
- '@wenathlan/saddle@2.0.154 || 2.0.155 || 2.0.156 || 2.1.8'
|
|
80
80
|
- '@wenathlan/devthink@2.0.154 || 2.0.155 || 2.0.156 || 2.1.7'
|
|
81
|
+
- '@wenathlan/argan@2.0.155'
|
|
82
|
+
- gsap@3.15.1
|
|
81
83
|
# the pnpm settings live here since pnpm 12 (the package.json pnpm field is
|
|
82
84
|
# no longer read, and onlyBuiltDependencies died in pnpm 11 — the map below
|
|
83
85
|
# is allowBuilds). THE 2.0.155 BUILDS GATE HEAL: the four-entry map froze
|
package/pom.xml
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
<scm><url>https://github.com/wenathlan/devthink</url><connection>scm:git:https://github.com/wenathlan/devthink.git</connection></scm>
|
|
13
13
|
<distributionManagement><repository><id>github</id><name>GitHub Packages</name><url>https://maven.pkg.github.com/wenathlan/devthink</url></repository></distributionManagement>
|
|
14
14
|
<properties>
|
|
15
|
-
<revision>2.0.
|
|
15
|
+
<revision>2.0.159</revision>
|
|
16
16
|
</properties>
|
|
17
17
|
<build>
|
|
18
18
|
<resources>
|
package/privacypolicy.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Cobaia privacy policy
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
The Cobaia monetization surface does not intentionally collect telemetry or transmit data without an operator-requested integration. Plan, ad slot and support features can access data only when the operator configures and invokes them. Operators must review the configuration and the privacy policy of every connected provider.
|
|
6
|
+
|
|
7
|
+
The repository itself is hosted by third-party services such as GitHub. Those services process requests, account data, logs and cookies under their own policies. A deployment that adds analytics, account data, logs or external storage must document that behavior and provide the controls required by applicable law.
|
|
8
|
+
|
|
9
|
+
Privacy questions and reports should use the repository support channel. Security-sensitive reports must follow `SECURITY.md`.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!-- Cobaia pull request template -->
|
|
2
|
+
|
|
3
|
+
# Description
|
|
4
|
+
|
|
5
|
+
## Type of change
|
|
6
|
+
|
|
7
|
+
## Verification
|
|
8
|
+
|
|
9
|
+
- [ ] The change preserves GPL-3.0-only metadata and required notices.
|
|
10
|
+
- [ ] Tests or a reason for not adding tests are included.
|
|
11
|
+
- [ ] Security-sensitive behavior and workflow changes were reviewed.
|
|
12
|
+
- [ ] No credentials, private data or generated build output was added.
|
|
13
|
+
- [ ] Public documentation was updated when behavior changed.
|
package/support.md
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Cobaia support
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
Cobaia is open-source software under GPL-3.0-only. Questions about installation, configuration, usage and reproducible failures should include the version, target, relevant logs and a minimal reproduction without credentials or private data.
|
|
6
|
+
|
|
7
|
+
Security reports must use the private process in `SECURITY.md`. Requests involving a third-party provider should also include the provider and the operator-controlled configuration. Community support is provided on a best-effort basis and does not create a warranty, service-level agreement or maintenance obligation.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Cobaia terms and conditions
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
These terms describe access to the Cobaia repository, documentation, releases and project services. The source code license is the GNU General Public License version 3.0 only; the repository `LICENSE` file (the saddle seat carries the family copy) controls permissions to copy, modify, run and redistribute covered works.
|
|
6
|
+
|
|
7
|
+
Users must comply with applicable law, third-party provider terms, the acceptable use policy, and the security policy. Users must not use a configured integration to access data or systems without authorization, expose credentials, distribute malware, or evade safety controls.
|
|
8
|
+
|
|
9
|
+
The repository and project services are provided without warranty to the maximum extent permitted by law. Separate provider terms apply to infrastructure, accounts, data and hosted services. These terms do not add restrictions to GPL-licensed source code.
|
package/termsofuse.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Cobaia terms of use
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
Cobaia may be used, modified and redistributed under GPL-3.0-only. Use of a connected payment or sponsorship provider remains subject to the operator's authorization and that provider's terms.
|
|
6
|
+
|
|
7
|
+
Users must protect secrets, respect privacy, avoid unauthorized access, and validate outputs before relying on them. Feedback may be used by the project under the applicable copyright permissions; submitting feedback does not transfer unrelated rights in the contributor's code.
|
|
8
|
+
|
|
9
|
+
The project is provided as-is without a warranty or service-level commitment. The GPL and applicable law control where this document conflicts with a covered source license.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Cobaia third-party notices
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
Cobaia includes or builds with third-party components. Their individual licenses remain in force and are not replaced by GPL-3.0-only. Package manifests, lockfiles and generated license inventories are the source of truth for the exact dependency set of each release.
|
|
6
|
+
|
|
7
|
+
When a component requires a notice, attribution or source offer, the release process must include it. A future dependency should be recorded with its name, version, license identifier, copyright notice and source URL.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# Cobaia trademark policy
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2026 devthink, nathlan, iakadion, nathu filho, allan neris, andraneris, and contributors.
|
|
4
|
+
|
|
5
|
+
The name “Cobaia”, together with associated logos and marks, identifies the project and its official releases. GPL-3.0-only grants rights to the source code; it does not grant permission to use project marks in a way that suggests endorsement, affiliation or official distribution.
|
|
6
|
+
|
|
7
|
+
Forks and modified distributions should use distinct names and branding where necessary to avoid confusion. Descriptive references to compatibility, origin or modification are permitted when they are accurate and do not imply sponsorship.
|
package/vite.config.ts
CHANGED
|
@@ -23,7 +23,7 @@ export default defineConfig({
|
|
|
23
23
|
* the mechanism is never duplicated inside cobaia. the entry retires
|
|
24
24
|
* when the published envelope carries the built label store. */
|
|
25
25
|
"@wenathlan/vault/labelstore": path.resolve(import.meta.dirname, "../vault/labelstore.ts"),
|
|
26
|
-
"@": path.resolve(import.meta.dirname, "
|
|
26
|
+
"@": path.resolve(import.meta.dirname, "sol"),
|
|
27
27
|
},
|
|
28
28
|
},
|
|
29
29
|
root: import.meta.dirname,
|