with one click
goga-cell-kotlin
Kotlin rules for implementing CODEMANIFEST contracts
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Kotlin rules for implementing CODEMANIFEST contracts
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Python rules for implementing CODEMANIFEST contracts
Verify each Cell's CODEMANIFEST against the implementation
Generate the final acceptance report with verdict
Defines the acceptance scope — the set of cells for a given functionality
Final acceptance orchestrator for contract-oriented workflows
Cell test coverage assessment for acceptance review
| name | goga-cell-kotlin |
| description | Kotlin rules for implementing CODEMANIFEST contracts |
Language skill for Kotlin.
Apply this specification within the context of the calling skill. Do not restate the content — use it for making decisions.
Invoked via the goga-lang-disp router.
Complete CODEMANIFEST example for Kotlin demonstrating all DSL constructs:
Imports:
- Types:
- UserModel
- CacheConfig AS Config
Usages:
- caching
From: path/to/cache_cell
Usages:
conventions: .goga/usages/kotlin_conventions.md
pattern: |
Use data classes for models. Prefer immutable collections (List, Map) over mutable ones.
testing: |
Use JUnit 5. Each public method must have at least one test case.
Annotations: |
Use `conventions` for code style.
Use `testing` for test requirements.
Use `caching` from Imports for cache invalidation patterns.
Use `val` for all properties. Avoid `var` unless mutation is required by contract.
---
"calculateTotal(a: Int, b: Int) -> total: Int":
location: calculator.kt
annotations: |
Calculate the sum of two integers.
`a`: first operand
`b`: second operand
Use `pattern` for implementation.
"UserRepository(config: Config)":
location: repository.kt
annotations: |
Repository for user data access with caching.
`config`: repository configuration from `Config` type.
Use `caching` from Imports for cache strategy.
Use `conventions` for code style.
properties:
"tableName -> String": |
Database table name for users.
"cacheSize -> Int": |
Maximum number of cached entries.
methods:
"findById(userId: String) -> user: UserModel?": |
Find a user by ID.
`userId`: unique user identifier
`user`: found user or null
Use `caching` from Imports for cache lookup.
"deleteById(userId: String)": |
Delete user by ID.
`userId`: unique user identifier
"UserModel::AdminUser(userId: String)":
location: admin.kt
annotations: |
Admin user extending UserModel with elevated permissions.
`userId`: unique user identifier
Use `caching` from Imports for permission cache.
->UserModel: {}
---
Author: Goga
CreatedAt: 22/05/26
Description: |
Example CODEMANIFEST demonstrating all DSL constructs for Kotlin.
A cell is a package/module:
cell/
├── CODEMANIFEST
├── *.kt
Facade: all public classes and top-level functions in the package define the facade.
Private and internal declarations are not part of the contract.
Naming: camelCase for functions and properties, PascalCase for classes.
Constructors: Entity signature describes the primary constructor. Constructor parameters are the input data for obtaining an instance.
Nullability: T? — nullable, T — non-null. CODEMANIFEST represents these directly via T? and T.
| Kotlin | CODEMANIFEST | Note |
|---|---|---|
class / data class (public) | Entity | Primary constructor → Entity signature |
Top-level fun | Routine | Public function at file level |
val / var class property | Property | Type from declaration |
Class method fun | Method |
Allowed:
String, Int, Double, Boolean
List<T>, Map<String, T>
T?
Forbidden:
Any
vararg
untyped collections