Skip to content

Commit 87ab02d

Browse files
committed
update architecture docs for refactor layout
1 parent 226ced5 commit 87ab02d

1 file changed

Lines changed: 29 additions & 2 deletions

File tree

docs/architecture.md

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,8 @@ Key files:
4141
- `vibes/execution_errors.go` (runtime error model, wrapping, and quota/signal sentinels)
4242
- `vibes/execution_state.go` (runtime call/env/module/receiver stack helpers)
4343
- `vibes/execution_members.go` (member dispatch for runtime values)
44+
- `vibes/execution_members_class_instance.go` (class/instance member access and callable wrapper binding)
45+
- `vibes/execution_members_numeric.go` (int/float/money member behavior)
4446
- `vibes/execution_members_hash.go` (hash/object member dispatch)
4547
- `vibes/execution_members_hash_query.go` (hash query and enumeration member methods)
4648
- `vibes/execution_members_hash_transforms.go` (hash filter/transform/member mutation methods)
@@ -92,7 +94,9 @@ Key files:
9294
- `vibes/parser_control.go` (if/loop/begin-rescue-ensure parsing)
9395
- `vibes/parser_precedence.go` (precedence table + assignable-expression helpers)
9496
- `vibes/parser_types.go` (type-expression parsing)
95-
- `vibes/ast.go`
97+
- `vibes/ast.go` (core AST interfaces and shared type nodes)
98+
- `vibes/ast_statements.go` (statement node definitions)
99+
- `vibes/ast_expressions.go` (expression node definitions)
96100
- `vibes/execution_compile.go` (AST lowering into compiled script functions/classes)
97101
- `vibes/execution_compile_functions.go` (function lowering helper for compile)
98102
- `vibes/execution_compile_classes.go` (class/property/method lowering helpers for compile)
@@ -130,11 +134,34 @@ Builtins are registered during engine initialization:
130134
- `vibes/builtins.go` (core/id helpers)
131135
- `vibes/builtins_numeric.go`
132136
- `vibes/builtins_json.go` (JSON parse/stringify builtins)
133-
- `vibes/builtins_json_regex.go` (Regex namespace builtins)
137+
- `vibes/builtins_json_convert.go` (JSON <-> runtime value conversion helpers)
138+
- `vibes/builtins_json_regex.go` (Regex match builtin)
139+
- `vibes/builtins_regex_replace.go` (Regex replace/replace_all builtins and replacement helpers)
134140
- class/object registration helpers in `vibes/interpreter_builtins_data.go` (`JSON`/`Regex` namespace objects)
135141
- duration class registration in `vibes/interpreter_builtins_duration.go`
136142
- time class registration in `vibes/interpreter_builtins_time.go`
137143

144+
## Capability Adapters
145+
146+
Capabilities expose host functionality to scripts through typed contracts and runtime adapters.
147+
148+
Key files:
149+
150+
- `vibes/capability_contracts.go` (capability contract declarations and call boundary enforcement)
151+
- `vibes/capability_contracts_cycles.go` (cycle detection scan for capability payloads)
152+
- `vibes/capability_contracts_scanner.go` (callable/builtin scanning and contract binding traversal)
153+
- `vibes/capability_common.go` (shared validation/name helpers and nil-implementation checks)
154+
- `vibes/capability_clone.go` (deep-clone/merge helpers for capability payload isolation)
155+
- `vibes/capability_context.go` (read-only context value capability)
156+
- `vibes/capability_events.go` (event bus capability)
157+
- `vibes/capability_db.go` (database interfaces, request types, and adapter construction)
158+
- `vibes/capability_db_calls.go` (database method binding and runtime call handlers)
159+
- `vibes/capability_db_contracts.go` (database method contracts and argument validation)
160+
- `vibes/capability_jobqueue.go` (job queue interfaces, request types, and adapter construction)
161+
- `vibes/capability_jobqueue_calls.go` (job queue method binding and runtime call handlers)
162+
- `vibes/capability_jobqueue_contracts.go` (job queue method contracts and return validators)
163+
- `vibes/capability_jobqueue_options.go` (job queue enqueue option parsing/coercion helpers)
164+
138165
## Refactor Constraints
139166

140167
When refactoring internals:

0 commit comments

Comments
 (0)