ekwo-os 0.22.0 → 0.23.0

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/README.md CHANGED
@@ -390,8 +390,8 @@ extra tables are reported as information. It also checks row level security on
390
390
  every table, pending migrations, memberships of deleted users, companies
391
391
  without a bank account, and posted entries that do not balance.
392
392
 
393
- Two checks say where the socle lives, ahead of its move to the schema `ekwo`
394
- in 0.22.0 ([decision 0090](../../docs/decisions/0090-the-socle-has-its-own-schema.md)):
393
+ Two checks say where the socle lives — its own schema `ekwo` since 0.23.0, `public`
394
+ on a database that has not migrated yet ([decision 0090](../../docs/decisions/0090-the-socle-has-its-own-schema.md)):
395
395
  `socle_schema` (`ekwo` or `public`, found by the marker `ekwo_schema_version()`)
396
396
  and `ekwo_exposed` (whether the Data API serves `ekwo`, read from
397
397
  `pgrst.db_schemas` where the database carries it; otherwise the line to set).
@@ -541,7 +541,7 @@ exactly six fields:
541
541
  "organization": "My Organisation",
542
542
  "country": "<cc>",
543
543
  "edition": "community",
544
- "schema_version": "0.22.0",
544
+ "schema_version": "0.23.0",
545
545
  "contact_email": "you@example.com"
546
546
  }
547
547
  ```
@@ -1,8 +1,8 @@
1
1
  {
2
- "schemaVersion": "0.22.0",
3
- "migration": "20261027200000",
2
+ "schemaVersion": "0.23.0",
3
+ "migration": "20261028070000",
4
4
  "socle": {
5
- "schema": "public",
5
+ "schema": "ekwo",
6
6
  "tables": [
7
7
  {
8
8
  "name": "account_templates",
@@ -5659,6 +5659,10 @@
5659
5659
  "name": "module_entry_id",
5660
5660
  "arguments": "p_company_id uuid, p_module_code text, p_ref text"
5661
5661
  },
5662
+ {
5663
+ "name": "module_functions_follow_the_socle",
5664
+ "arguments": "p_schema text"
5665
+ },
5662
5666
  {
5663
5667
  "name": "module_is_enabled",
5664
5668
  "arguments": "p_company_id uuid, p_code text"
@@ -7891,7 +7895,7 @@
7891
7895
  }
7892
7896
  ],
7893
7897
  "grants": {
7894
- "schema": "public",
7898
+ "schema": "ekwo",
7895
7899
  "usage": {
7896
7900
  "anon": [
7897
7901
  "usage"
@@ -11367,6 +11371,13 @@
11367
11371
  "execute"
11368
11372
  ]
11369
11373
  },
11374
+ {
11375
+ "name": "module_functions_follow_the_socle",
11376
+ "arguments": "p_schema text",
11377
+ "anon": [],
11378
+ "authenticated": [],
11379
+ "service_role": []
11380
+ },
11370
11381
  {
11371
11382
  "name": "module_is_enabled",
11372
11383
  "arguments": "p_company_id uuid, p_code text",
@@ -0,0 +1,564 @@
1
+ -- Ekwo OS — the socle moves out of `public` into its own schema, `ekwo`.
2
+ --
3
+ -- The second half of decision 0090. `20261025072151` created the schema,
4
+ -- empty, with the rights `public` carries; this file fills it. Every object
5
+ -- of the socle — its tables, its views, its types, its functions, and the one
6
+ -- sequence no table owns — leaves `public` for `ekwo` with `alter … set
7
+ -- schema`, which keeps the identity of each: foreign keys, indexes, policies,
8
+ -- triggers, privileges, defaults, comments and the views over a table stay as
9
+ -- they were. `public` is left to whoever else shares the database.
10
+ --
11
+ -- **By the exact list, never "everything in `public`."** The names below are
12
+ -- the inventory of the release that wrote this file (`npm run inventory`,
13
+ -- decision 0058). A database that carries another application beside Ekwo OS
14
+ -- keeps that application's tables where they are. A name of the list that is
15
+ -- not in `public` is skipped: an installation that moved the socle by hand
16
+ -- ends in the same state.
17
+ --
18
+ -- **What `alter … set schema` does not rewrite is text.** A function names
19
+ -- the socle in its own `search_path` (`set search_path = public, pg_temp`,
20
+ -- the shape of this directory) and, here and there, in its body
21
+ -- (`public.companies`, `'public'::name`). So after the move every function
22
+ -- of the socle and of the installed modules whose settings or body name
23
+ -- `public` is read back from the catalogue and written again with `ekwo` in
24
+ -- its place: `public.<name>` becomes `ekwo.<name>`, and the string `'public'`
25
+ -- becomes `'ekwo'` — in a `search_path` setting and in the four functions of
26
+ -- the archive that compare a schema by name. A module's function stays in the
27
+ -- module's schema; only the socle it names moves. This is the recreation the
28
+ -- decision announces, and it changes no signature, no owner, no grant.
29
+ --
30
+ -- **An archive keeps its former names readable.** An archive written before
31
+ -- this file files its rows under `public.<table>`; the registry an export
32
+ -- reads said `public` too. The registry is moved, and
33
+ -- `archive_under_current_names()` learns the socle's former schema beside the
34
+ -- former names of the modules: a `public.<table>` of the socle is read as
35
+ -- `ekwo.<table>`, so the archives already kept import as before.
36
+ --
37
+ -- **PostgREST.** The request hook moves with its function:
38
+ -- `pgrst.db_pre_request` on the `authenticator` role names
39
+ -- `ekwo.ekwo_pre_request` from here on, the same way `20260922160000` set it,
40
+ -- with the same notice where the role cannot be altered. The schemas the Data
41
+ -- API serves are a setting of the project and not of the database: `ekwo`
42
+ -- was to be exposed before this file ran (`ekwo migrate` and `ekwo doctor`
43
+ -- have said so since 0.21.0), and a call that reaches the API names the
44
+ -- schema by its profile (decision 0090).
45
+ --
46
+ -- **The path.** The connection that runs this file continues with `ekwo`
47
+ -- first on its `search_path`, so the files that follow it in the same run and
48
+ -- the seeds land in the socle wherever they are written unqualified. The
49
+ -- owner's role gets the same default for the SQL written by hand, where the
50
+ -- role can be altered. Nothing of the kind is needed by the packages: they
51
+ -- find the socle by its marker, `ekwo_schema_version()`, and name the schema
52
+ -- on every call.
53
+ --
54
+ -- The floor of the packages does not move: a database before this file is
55
+ -- read exactly as before. A client older than this release reads `public`
56
+ -- and finds nothing there: `@latest` is the rule for the command line and the
57
+ -- MCP server.
58
+
59
+ -- ---------------------------------------------------------------------------
60
+ -- 0. Both schemas on the path while the objects move
61
+ --
62
+ -- A function's signature names its argument types, and those types move in
63
+ -- this file too: with both schemas on the path every name resolves whichever
64
+ -- side of the move it is on. The path of this connection is set again at the
65
+ -- end.
66
+ -- ---------------------------------------------------------------------------
67
+
68
+ select set_config('search_path', 'public, ekwo, ' || current_setting('search_path'), false);
69
+
70
+ -- ---------------------------------------------------------------------------
71
+ -- 1. The tables, with their indexes, policies, triggers and owned sequences
72
+ -- ---------------------------------------------------------------------------
73
+
74
+ do $$
75
+ declare
76
+ v_name text;
77
+ begin
78
+ foreach v_name in array array[
79
+ 'account_templates', 'accounts', 'analysis_aggregates', 'analysis_rules', 'analysis_templates', 'analytic_axes',
80
+ 'analytic_values', 'api_keys', 'attachments', 'audit_log', 'bank_accounts', 'bank_statement_lines',
81
+ 'bank_statements', 'bank_transactions', 'book_imports', 'capabilities', 'chart_templates', 'classification_schemes',
82
+ 'companies', 'company_archive_registry', 'company_filing_periods', 'company_invitations', 'company_members', 'company_modules',
83
+ 'company_packs', 'company_tax_regimes', 'company_vat_schemes', 'contact_merges', 'contact_patterns', 'contacts',
84
+ 'country_defaults', 'country_packs', 'currencies', 'currency_rates', 'declaration_instalments', 'document_line_analytics',
85
+ 'document_lines', 'document_shares', 'document_unpostings', 'documents', 'entries', 'entry_line_analytics',
86
+ 'entry_lines', 'filing_proofs', 'fiscal_years', 'instance', 'instance_admins', 'journal_sequences',
87
+ 'journal_templates', 'journals', 'legal_mention_templates', 'lines_left_unnamed', 'matching_sequences', 'matching_settings',
88
+ 'modules', 'payments', 'products', 'reconciliation_batches', 'reconciliations', 'role_capabilities',
89
+ 'statement_line_rules', 'statement_line_templates', 'statement_templates', 'tax_filing_boxes', 'tax_filing_deposits', 'tax_filings',
90
+ 'tax_posting_templates', 'tax_postings', 'tax_report_box_templates', 'tax_report_templates', 'tax_templates', 'taxes',
91
+ 'territories', 'turnover_tax_assessments', 'turnover_tax_brackets', 'turnover_tax_regimes', 'user_preferences', 'vat_scheme_ceilings',
92
+ 'vat_scheme_forms', 'vat_scheme_instalments', 'vat_schemes'
93
+ ]
94
+ loop
95
+ if to_regclass(format('public.%I', v_name)) is not null then
96
+ execute format('alter table public.%I set schema ekwo', v_name);
97
+ end if;
98
+ end loop;
99
+ end $$;
100
+
101
+ -- The audit log numbers its rows from a sequence of its own, owned by no
102
+ -- column (`20260911210131`): the one sequence that does not move with a table.
103
+ do $$
104
+ begin
105
+ if to_regclass('public.audit_log_id_seq') is not null then
106
+ alter sequence public.audit_log_id_seq set schema ekwo;
107
+ end if;
108
+ end $$;
109
+
110
+ -- ---------------------------------------------------------------------------
111
+ -- 2. The views
112
+ -- ---------------------------------------------------------------------------
113
+
114
+ do $$
115
+ declare
116
+ v_name text;
117
+ begin
118
+ foreach v_name in array array[
119
+ 'api_key_reach', 'bank_statement_continuity', 'document_header', 'document_legal_mentions', 'document_line_items', 'document_tax_summary'
120
+ ]
121
+ loop
122
+ if to_regclass(format('public.%I', v_name)) is not null then
123
+ execute format('alter view public.%I set schema ekwo', v_name);
124
+ end if;
125
+ end loop;
126
+ end $$;
127
+
128
+ -- ---------------------------------------------------------------------------
129
+ -- 3. The types: the enums, and the two composite types the policies read
130
+ -- ---------------------------------------------------------------------------
131
+
132
+ do $$
133
+ declare
134
+ v_name text;
135
+ begin
136
+ foreach v_name in array array[
137
+ 'account_type', 'audit_operation', 'bank_statement_state', 'bank_transaction_state', 'closing_style', 'contact_pattern_kind',
138
+ 'contact_pattern_source', 'contact_type', 'declaration_period', 'doc_state', 'doc_type', 'document_line_type',
139
+ 'entry_kind', 'entry_state', 'eu_vat_scope', 'filing_channel', 'filing_deadline_rule', 'filing_proof_method',
140
+ 'filing_proof_status', 'filing_proof_subject', 'instance_edition', 'journal_type', 'matching_policy', 'member_role',
141
+ 'module_status', 'money_rounding', 'pack_certification', 'pack_change_rule', 'payment_direction', 'payment_state',
142
+ 'payment_state_t', 'product_kind', 'rounding_method', 'share_subject_kind', 'tax_amount_type', 'tax_condition',
143
+ 'tax_credit_treatment', 'tax_document_kind', 'tax_filing_state', 'tax_kind', 'tax_posting_type', 'tax_scope',
144
+ 'tax_treatment', 'territory_code_source', 'territory_relation'
145
+ ]
146
+ loop
147
+ if to_regtype(format('public.%I', v_name)) is not null then
148
+ execute format('alter type public.%I set schema ekwo', v_name);
149
+ end if;
150
+ end loop;
151
+ end $$;
152
+
153
+ -- ---------------------------------------------------------------------------
154
+ -- 4. The functions, every overload of each name
155
+ -- ---------------------------------------------------------------------------
156
+
157
+ do $$
158
+ declare
159
+ v_routine record;
160
+ begin
161
+ for v_routine in
162
+ select p.oid::regprocedure as signature
163
+ from pg_proc p
164
+ where p.pronamespace = 'public'::regnamespace
165
+ and p.proname = any(array[
166
+ 'accept_invitation', 'account_carries_analytics', 'account_id_by_code', 'account_key',
167
+ 'account_rule_catches', 'accounts_guard_frozen', 'accounts_in_use', 'acting_user',
168
+ 'aged_balance', 'agent_call', 'agent_mark', 'agent_posting_mode',
169
+ 'amount_text_format', 'analytic_axis_required_for', 'analytic_refresh_document_line', 'analytic_refresh_entry_line',
170
+ 'analytic_report', 'api_key_on_company', 'approve_document', 'archive_company',
171
+ 'archive_statement_timeout', 'archive_under_current_names', 'assert_analytic_account', 'assert_analytic_value_in_use',
172
+ 'assert_classifications', 'assert_company_live', 'assert_document_analytic_axes', 'assert_may_close_year',
173
+ 'assert_may_export_company', 'assert_may_post_document', 'assert_may_post_entry', 'assert_period_open',
174
+ 'assert_references_within_company', 'assert_writes_into_known_company', 'attachment_is_filing_deposit_file', 'attachments_guard_document',
175
+ 'audit_changes', 'audit_entry_posting', 'audit_log_is_append_only', 'audit_log_purge_is_recorded',
176
+ 'audit_log_refuses_truncate', 'audit_record', 'audit_state_change', 'authenticated_statement_timeout',
177
+ 'auto_settle', 'available_statements', 'bank_accounts_read_identifier', 'bank_statement_lines_refresh_balance',
178
+ 'bank_statement_movement', 'bank_statements_recompute', 'bank_statements_refresh_balance', 'bank_transactions_guard',
179
+ 'caller_companies', 'can_write_company', 'cancel_document', 'canonical_json',
180
+ 'catch_up_journal_sequence', 'claim_instance_admin', 'close_fiscal_year', 'close_fiscal_year_finally',
181
+ 'combination_subsets', 'commercial_entity', 'companies_agent_posting_by_a_person', 'companies_creator_is_fixed',
182
+ 'companies_default_bank_account_is_ours', 'companies_default_capital_currency', 'companies_guard_archived', 'companies_number_format_carries',
183
+ 'companies_number_format_is_valid', 'companies_vat_period_is_a_filing_period', 'companies_with_capability', 'company_archive_predicate',
184
+ 'company_archive_predicate_via', 'company_archive_row_count', 'company_archive_row_counts', 'company_archive_rows_query',
185
+ 'company_archive_tables', 'company_archive_unclassified', 'company_column', 'company_filing_periods_mirror',
186
+ 'company_filing_periods_names_a_form', 'company_filing_periods_within_scheme', 'company_has_no_member', 'company_members_capabilities_known',
187
+ 'company_members_join_of_their_own_accord', 'company_members_list', 'company_references_by_id', 'company_role',
188
+ 'company_scoped_tables', 'company_tax_regimes_check', 'company_vat_schemes_check', 'company_vat_schemes_follow',
189
+ 'confirm_contact', 'contact_candidates', 'contacts_guard_merged', 'contacts_language_reaches_drafts',
190
+ 'create_api_key', 'create_company', 'create_document', 'currency_of_bank_account',
191
+ 'currency_of_company', 'currency_unit', 'current_api_key', 'declaration_boxes_of',
192
+ 'declaration_period_months', 'declaration_period_of', 'declaration_period_start', 'declared_lines',
193
+ 'declared_on_of', 'default_statement_code', 'delete_company', 'disable_module',
194
+ 'document_amount_paid', 'document_line_analytics_guard', 'document_line_analytics_refresh', 'document_line_split_key',
195
+ 'document_lines_amount_untaxed', 'document_lines_analytic_defaults', 'document_lines_analytics_follow', 'document_lines_attributes_from_product',
196
+ 'document_lines_check_classifications', 'document_lines_guard_posted', 'document_lines_guard_tax_account', 'document_lines_refresh_totals',
197
+ 'document_lines_resolve_account', 'document_lines_snapshot_tax', 'document_share_refusal', 'document_territory',
198
+ 'document_version', 'documents_allocate_included_tax', 'documents_default_payee_iban', 'documents_guard_language',
199
+ 'documents_guard_posted', 'documents_match_credit_note_on_posting', 'documents_posting_mode', 'documents_refresh_amount_paid',
200
+ 'documents_refresh_payment_state', 'documents_refresh_totals', 'documents_refuse_replaced_tax', 'documents_refuse_vat_under_exemption',
201
+ 'ec_sales_list', 'ekwo_pre_request', 'ekwo_schema_version', 'enable_module',
202
+ 'entries_declared_on_follows', 'entries_guard_kind', 'entries_guard_module', 'entries_guard_period',
203
+ 'entries_guard_posted', 'entries_match_reversal_on_posting', 'entries_refresh_totals', 'entries_require_analytic_axes',
204
+ 'entry_line_analytics_guard', 'entry_line_analytics_refresh', 'entry_lines_analytics_follow', 'entry_lines_box_from_posting',
205
+ 'entry_lines_guard_period', 'entry_lines_guard_posted', 'entry_lines_set_declared_on', 'eu_vat_scope_of',
206
+ 'evaluate_totals', 'export_company', 'export_company_archive', 'export_company_manifest',
207
+ 'export_company_table', 'export_company_tables', 'fec_lines', 'file_filing',
208
+ 'filing_deadline', 'filing_drift', 'filing_period', 'filing_proof',
209
+ 'filing_rounding', 'filing_tax_movements', 'filings_touched_since', 'financial_analysis',
210
+ 'financial_statement', 'financial_statement_of_kind', 'fiscal_year_at', 'fiscal_year_bounds',
211
+ 'fiscal_year_final_close', 'fiscal_years_guard_closed', 'fiscal_years_guard_final', 'fiscal_years_no_overlap',
212
+ 'format_number', 'general_ledger', 'has_capability', 'has_opening_entry',
213
+ 'import_bank_statement', 'import_books', 'import_company', 'import_fiscal_year_for',
214
+ 'init_instance', 'install_country_template', 'installed_schema_version', 'instalment_plan',
215
+ 'instance_admins_keep_one', 'instance_has_no_admin', 'instance_is_shared', 'instance_sharing',
216
+ 'invite_member', 'is_any_company_member', 'is_archive_request', 'is_company_member',
217
+ 'is_company_owner', 'is_eu_member', 'is_installer', 'is_instance_admin',
218
+ 'is_known_caller', 'journal_book', 'journal_totals', 'journals_number_prefix_is_its_own',
219
+ 'key_holds', 'label_for', 'learn_contact_patterns', 'leave_line_unnamed',
220
+ 'legal_mention_treatments', 'line_contact_facts', 'locale_of_country_pack', 'lock_filed_period',
221
+ 'match_lines', 'match_reversal', 'matchable_lines', 'matching_difference_reasons',
222
+ 'matching_difference_tolerance', 'matching_policy_of', 'matching_search_bounds', 'may_know_of_company',
223
+ 'may_match_on_posting', 'member_capabilities', 'member_holds', 'merge_contacts',
224
+ 'module_enabled', 'module_entry_id', 'module_is_enabled', 'module_settings',
225
+ 'name_agreement', 'name_among_several', 'next_entry_number', 'next_matching_number',
226
+ 'note_company_export', 'number_counter', 'numbering_rules', 'open_items',
227
+ 'opening_balance', 'opening_journal_id', 'pack_upgrade', 'pack_upgrade_diff',
228
+ 'party_identifier', 'periodic_return_code', 'pin_referenced_accounts', 'portfolio_filings_touched_since',
229
+ 'portfolio_upcoming_filings', 'post_document', 'post_entry', 'post_module_entry',
230
+ 'post_payment', 'post_turnover_tax', 'posted_edit_policy', 'preferred_languages',
231
+ 'prepare_filing', 'present_api_key', 'product_report', 'products_check_classifications',
232
+ 'purge_audit_log', 'reconcile', 'reconcile_batch', 'reconcile_many',
233
+ 'reconcile_with_difference', 'reconciliation_batches_guard', 'reconciliations_guard_cancelled', 'reconciliations_guard_reconcile',
234
+ 'reconciliations_refresh_lines', 'record_filing_files', 'record_filing_outcome', 'record_filing_proof',
235
+ 'refuse_merged_contact', 'refuse_merged_contacts_in', 'register_instance', 'rehearse_post_document',
236
+ 'remove_member', 'reopen_filing', 'reopen_fiscal_year', 'replace_document_lines',
237
+ 'resolve_counterpart_account', 'resolve_line_account', 'reverse_entry', 'revoke_api_key',
238
+ 'revoke_invitation', 'revoke_share', 'round_amount', 'rounding_of',
239
+ 'scope_references_to_company', 'set_line_contact', 'set_member_role', 'set_preferences',
240
+ 'set_updated_at', 'settle_cash_basis_tax', 'settle_filing', 'settle_from_statement',
241
+ 'share_document', 'share_instance', 'shared_document', 'significant_words',
242
+ 'statement_account_matches', 'statement_figures', 'statement_rule_catches', 'suggest_combination',
243
+ 'suggest_contacts', 'suggest_duplicate_contacts', 'suggest_item_combinations', 'suggest_line_contacts',
244
+ 'suggest_matches', 'suggest_sure_pairs', 'supersede_filing', 'tax_amount_of',
245
+ 'tax_filing_boxes_are_frozen', 'tax_filing_deposits_files_are_its_own', 'tax_filing_values_sha256', 'tax_filings_paid_by_matching',
246
+ 'tax_filings_report_exists', 'tax_payee', 'tax_point_of', 'tax_posting_boxes_agree',
247
+ 'tax_rate_at', 'taxes_reach_draft_lines', 'territory_of', 'territory_within',
248
+ 'territory_within_for_tax', 'touch_api_key', 'trial_balance', 'turnover_of',
249
+ 'turnover_tax_regime_at', 'turnover_tax_return', 'unarchive_company', 'undo_leave_line_unnamed',
250
+ 'unmapped_accounts', 'unpost_document', 'unpost_refusal', 'unreconcile',
251
+ 'unreconcile_batch', 'unregister_instance', 'unshare_instance', 'upcoming_filings',
252
+ 'upgrade_filing_proof', 'use_api_key', 'user_preferences_company_is_known', 'vat_prefix_of',
253
+ 'vat_return', 'vat_scheme_at', 'vat_scheme_ceilings_crossed', 'vat_scheme_files',
254
+ 'version_at_least', 'write_filing_outcome', 'year_result_account'
255
+ ])
256
+ order by p.proname, p.oid
257
+ loop
258
+ execute format('alter function %s set schema ekwo', v_routine.signature);
259
+ end loop;
260
+ end $$;
261
+
262
+ -- ---------------------------------------------------------------------------
263
+ -- 5. The functions that name `public` are written again with `ekwo`
264
+ --
265
+ -- Read back from the catalogue as `create or replace function`, which keeps
266
+ -- the identity, the owner, the privileges and the comment of each. Two
267
+ -- rewrites, both on the text Postgres prints: `public.<name>` — a table, a
268
+ -- type or a function the body qualifies, a `'public.x'::regclass` — becomes
269
+ -- `ekwo.<name>`, and the string `'public'` — the `search_path` setting of the
270
+ -- function, the schema the archive functions compare — becomes `'ekwo'`. A
271
+ -- sentence that ends with the word "public." is left alone: only a name
272
+ -- follows the dot that is rewritten.
273
+ --
274
+ -- The functions of the installed modules go through the same reading: a
275
+ -- module names the socle by `public.companies` and carries
276
+ -- `search_path = public, pg_temp` (decision 0051), and its schema is read from
277
+ -- the registry rather than assumed.
278
+ -- ---------------------------------------------------------------------------
279
+
280
+ do $$
281
+ declare
282
+ v_schema text;
283
+ v_routine record;
284
+ v_source text;
285
+ v_written text;
286
+ v_count integer := 0;
287
+ begin
288
+ for v_schema in
289
+ select 'ekwo' union all select m.schema_name from ekwo.modules m order by 1
290
+ loop
291
+ continue when to_regnamespace(v_schema) is null;
292
+ for v_routine in
293
+ select p.oid, p.oid::regprocedure as signature
294
+ from pg_proc p
295
+ where p.pronamespace = to_regnamespace(v_schema)
296
+ and p.prokind = 'f'
297
+ and (p.prosrc ~ 'public\.[a-z_]' or p.prosrc ~ '''public'''
298
+ or exists (select 1 from unnest(p.proconfig) c where c ~ 'public'))
299
+ order by p.proname, p.oid
300
+ loop
301
+ v_source := pg_get_functiondef(v_routine.oid);
302
+ v_written := regexp_replace(v_source, 'public\.([a-z_])', 'ekwo.\1', 'g');
303
+ v_written := regexp_replace(v_written, '''public''', '''ekwo''', 'g');
304
+ if v_written <> v_source then
305
+ execute v_written;
306
+ v_count := v_count + 1;
307
+ end if;
308
+ end loop;
309
+ end loop;
310
+ raise notice 'ekwo: % function(s) written again with the socle in ekwo', v_count;
311
+ end $$;
312
+
313
+ -- A function of the socle that carried no path of its own resolved its names
314
+ -- by the path of the session, which was `public` on every connection and
315
+ -- every request. A request served under a module's profile has the module on
316
+ -- its path and the socle no longer, and a policy of the module that folds
317
+ -- `module_enabled()` into its query then fails to find `is_company_member()`.
318
+ -- So a function of the socle carries its path from here on, `ekwo` first —
319
+ -- every one written in plpgsql, and the SQL helpers a policy folds in, which
320
+ -- the planner then calls per row instead of inlining. The other SQL functions,
321
+ -- the readers a report folds into one plan — `declared_lines()`,
322
+ -- `filing_tax_movements()` — keep no path and stay inlined: they run under
323
+ -- the profile `ekwo` or inside a function that carries the path, and
324
+ -- `tests/load` holds the planner to its indexes. A function that had a path
325
+ -- keeps it, rewritten above.
326
+ do $$
327
+ declare
328
+ v_routine record;
329
+ v_count integer := 0;
330
+ begin
331
+ for v_routine in
332
+ select p.oid::regprocedure as signature
333
+ from pg_proc p
334
+ join pg_language l on l.oid = p.prolang
335
+ where p.pronamespace = 'ekwo'::regnamespace
336
+ and p.prokind = 'f'
337
+ and not exists (select 1 from unnest(p.proconfig) c where c like 'search_path=%')
338
+ and (l.lanname <> 'sql'
339
+ or exists (select 1 from pg_policy q
340
+ where pg_get_expr(q.polqual, q.polrelid) ~ ('\m' || p.proname || '\(')
341
+ or pg_get_expr(q.polwithcheck, q.polrelid) ~ ('\m' || p.proname || '\(')))
342
+ order by p.proname, p.oid
343
+ loop
344
+ execute format('alter function %s set search_path = ekwo, pg_temp', v_routine.signature);
345
+ v_count := v_count + 1;
346
+ end loop;
347
+ raise notice 'ekwo: % function(s) of the socle given a search_path', v_count;
348
+ end $$;
349
+
350
+ -- A function of a module that carried no path of its own read the socle
351
+ -- through the path of the request — `public`, which every request had — and
352
+ -- so did what it called: the socle's functions without a path of their own,
353
+ -- and the triggers of the socle's tables. It carries its path from here on:
354
+ -- its own schema first, then the socle's, for as long as it runs, nested
355
+ -- calls and triggers included. A function that had a path keeps it, rewritten
356
+ -- above. The modules installed after this file get the same from the
357
+ -- installer, which calls this function once a module's migrations have run;
358
+ -- a module function written today says it in its own file. The function
359
+ -- also gives the path to the SQL helpers of the socle the module's policies
360
+ -- fold into their queries — `module_enabled()` on a fresh installation, where
361
+ -- the modules arrive after this file and no policy named it yet.
362
+ create or replace function ekwo.module_functions_follow_the_socle(p_schema text)
363
+ returns integer
364
+ language plpgsql
365
+ set search_path = ekwo, pg_temp
366
+ as $$
367
+ declare
368
+ v_routine record;
369
+ v_count integer := 0;
370
+ begin
371
+ if to_regnamespace(p_schema) is null then
372
+ return 0;
373
+ end if;
374
+ for v_routine in
375
+ select p.oid::regprocedure as signature
376
+ from pg_proc p
377
+ where p.pronamespace = to_regnamespace(p_schema)
378
+ and p.prokind = 'f'
379
+ and not exists (select 1 from unnest(p.proconfig) c where c like 'search_path=%')
380
+ order by p.proname, p.oid
381
+ loop
382
+ execute format('alter function %s set search_path = %I, ekwo, pg_temp', v_routine.signature, p_schema);
383
+ v_count := v_count + 1;
384
+ end loop;
385
+ for v_routine in
386
+ select p.oid::regprocedure as signature
387
+ from pg_proc p
388
+ join pg_language l on l.oid = p.prolang
389
+ where p.pronamespace = 'ekwo'::regnamespace
390
+ and p.prokind = 'f'
391
+ and l.lanname = 'sql'
392
+ and not exists (select 1 from unnest(p.proconfig) c where c like 'search_path=%')
393
+ and exists (select 1 from pg_policy q join pg_class c on c.oid = q.polrelid
394
+ where c.relnamespace = to_regnamespace(p_schema)
395
+ and (pg_get_expr(q.polqual, q.polrelid) ~ ('\m' || p.proname || '\(')
396
+ or pg_get_expr(q.polwithcheck, q.polrelid) ~ ('\m' || p.proname || '\(')))
397
+ order by p.proname, p.oid
398
+ loop
399
+ execute format('alter function %s set search_path = ekwo, pg_temp', v_routine.signature);
400
+ v_count := v_count + 1;
401
+ end loop;
402
+ return v_count;
403
+ end;
404
+ $$;
405
+
406
+ comment on function ekwo.module_functions_follow_the_socle(text) is
407
+ 'Gives every function of a module''s schema that carries no search_path one of its own — the module''s schema, then ekwo — and the same to the SQL helpers of the socle the module''s policies fold in, so that what runs under a request served with the module''s profile finds the socle. Called by the installer after a module''s migrations; answers how many were set. Owner only.';
408
+
409
+ do $$
410
+ declare
411
+ v_schema text;
412
+ begin
413
+ for v_schema in select m.schema_name from ekwo.modules m order by 1 loop
414
+ perform ekwo.module_functions_follow_the_socle(v_schema);
415
+ end loop;
416
+ end $$;
417
+
418
+ -- ---------------------------------------------------------------------------
419
+ -- 6. The archives written before the move keep their names readable
420
+ --
421
+ -- The registry an export reads named the socle's tables under `public`; it
422
+ -- names them under `ekwo` from here on, so a new archive is filed under the
423
+ -- names of today. `archive_under_current_names()` — written again as
424
+ -- `20260929151700` left it, the rewrite of step 5 included — learns the
425
+ -- socle's former schema first: a table of an archive filed as
426
+ -- `public.<table>` where `ekwo.<table>` is a table of the socle is read as
427
+ -- the latter, rows and manifest alike. The modules' former names follow, as
428
+ -- before.
429
+ -- ---------------------------------------------------------------------------
430
+
431
+ update ekwo.company_archive_registry
432
+ set table_schema = 'ekwo'
433
+ where table_schema = 'public'
434
+ and to_regclass(format('ekwo.%I', table_name)) is not null;
435
+
436
+ -- A row written from here on names the socle's schema by default, as the
437
+ -- rows the socle wrote did; a row that reaches its company through another
438
+ -- table names that table (`via_table`), and named it `public.journals`.
439
+ alter table ekwo.company_archive_registry alter column table_schema set default 'ekwo';
440
+
441
+ update ekwo.company_archive_registry
442
+ set via_table = 'ekwo.' || substr(via_table, length('public.') + 1)
443
+ where via_table like 'public.%'
444
+ and to_regclass('ekwo.' || substr(via_table, length('public.') + 1)) is not null;
445
+
446
+ create or replace function ekwo.archive_under_current_names(p_archive jsonb)
447
+ returns jsonb
448
+ language plpgsql
449
+ stable
450
+ set search_path = ekwo, pg_temp
451
+ as $$
452
+ declare
453
+ v_out jsonb := p_archive;
454
+ v_module record;
455
+ v_rename record;
456
+ v_key text;
457
+ v_table text;
458
+ v_now text;
459
+ begin
460
+ -- The socle's former schema. A key `public.<table>` of a table the socle
461
+ -- holds in `ekwo` is read under the latter; a table of the archive that is
462
+ -- not of the socle keeps its name, and import_company() says what it does
463
+ -- not know.
464
+ for v_key in select k from jsonb_object_keys(coalesce(v_out -> 'tables', '{}'::jsonb)) as k order by k loop
465
+ continue when v_key !~ '^public\.';
466
+ v_table := substr(v_key, 8);
467
+ continue when to_regclass(format('ekwo.%I', v_table)) is null;
468
+ v_now := 'ekwo.' || v_table;
469
+ if v_out -> 'tables' ? v_now then
470
+ raise exception 'archive_corrupt: the archive carries both % and %, which are one table under two names',
471
+ v_key, v_now;
472
+ end if;
473
+ v_out := jsonb_set(v_out, '{tables}',
474
+ ((v_out -> 'tables') - v_key) || jsonb_build_object(v_now, v_out -> 'tables' -> v_key));
475
+ if jsonb_typeof(v_out #> '{manifest,tables}') = 'array'
476
+ and exists (select 1 from jsonb_array_elements(v_out #> '{manifest,tables}') m where m ->> 'name' = v_key) then
477
+ v_out := jsonb_set(v_out, '{manifest,tables}', (
478
+ select jsonb_agg(case when m ->> 'name' = v_key then jsonb_set(m, '{name}', to_jsonb(v_now)) else m end order by n)
479
+ from jsonb_array_elements(v_out #> '{manifest,tables}') with ordinality as x(m, n)));
480
+ end if;
481
+ end loop;
482
+
483
+ for v_module in select m.code, m.schema_name from modules m order by m.code loop
484
+ continue when to_regprocedure(format('%I.archive_former_names()', v_module.schema_name)) is null;
485
+ for v_rename in
486
+ execute format('select former_name, current_name from %I.archive_former_names()', v_module.schema_name)
487
+ loop
488
+ if coalesce(v_out -> 'tables' ? v_rename.former_name, false) then
489
+ if v_out -> 'tables' ? v_rename.current_name then
490
+ raise exception 'archive_corrupt: the archive carries both % and %, which are one table under two names',
491
+ v_rename.former_name, v_rename.current_name;
492
+ end if;
493
+ v_out := jsonb_set(v_out, '{tables}',
494
+ ((v_out -> 'tables') - v_rename.former_name)
495
+ || jsonb_build_object(v_rename.current_name, v_out -> 'tables' -> v_rename.former_name));
496
+ end if;
497
+
498
+ if jsonb_typeof(v_out #> '{manifest,tables}') = 'array'
499
+ and exists (select 1 from jsonb_array_elements(v_out #> '{manifest,tables}') m
500
+ where m ->> 'name' = v_rename.former_name) then
501
+ v_out := jsonb_set(v_out, '{manifest,tables}', (
502
+ select jsonb_agg(case when m ->> 'name' = v_rename.former_name
503
+ then jsonb_set(m, '{name}', to_jsonb(v_rename.current_name))
504
+ else m end
505
+ order by n)
506
+ from jsonb_array_elements(v_out #> '{manifest,tables}') with ordinality as x(m, n)));
507
+ end if;
508
+ end loop;
509
+ end loop;
510
+ return v_out;
511
+ end;
512
+ $$;
513
+
514
+ comment on function ekwo.archive_under_current_names(jsonb) is
515
+ 'The archive with its tables and its manifest filed under the names of today: a `public.<table>` of the socle read as `ekwo.<table>`, then a former name of a module (`<schema>.archive_former_names()`) read as its current one. An archive carrying one table under two names is refused.';
516
+
517
+ -- ---------------------------------------------------------------------------
518
+ -- 7. PostgREST calls the request hook where it now lives
519
+ --
520
+ -- The same setting `20260922160000` made, on the same role, with the same
521
+ -- way out where the role cannot be altered from here.
522
+ -- ---------------------------------------------------------------------------
523
+
524
+ do $$
525
+ begin
526
+ if exists (select 1 from pg_roles where rolname = 'authenticator') then
527
+ begin
528
+ execute 'alter role authenticator set pgrst.db_pre_request = ''ekwo.ekwo_pre_request''';
529
+ exception when insufficient_privilege or object_not_in_prerequisite_state then
530
+ raise notice 'ekwo: could not set pgrst.db_pre_request on the authenticator role. Machine keys will not be read from X-Ekwo-Api-Key until somebody with the privilege runs: alter role authenticator set pgrst.db_pre_request = ''ekwo.ekwo_pre_request''; notify pgrst, ''reload config''; — `ekwo doctor` reports this.';
531
+ end;
532
+ end if;
533
+ end $$;
534
+
535
+ -- ---------------------------------------------------------------------------
536
+ -- 8. The path: this connection, and the owner's role for SQL written by hand
537
+ --
538
+ -- The connection that runs this file goes on with the socle first on its
539
+ -- path: the migrations that follow in the same run and the seeds, written
540
+ -- unqualified, land in `ekwo`. The owner's role gets the same default, so a
541
+ -- `select … from companies` typed against the database keeps answering for
542
+ -- one release at least (decision 0090); where the role cannot be altered,
543
+ -- the SQL names `ekwo.<table>`.
544
+ -- ---------------------------------------------------------------------------
545
+
546
+ do $$
547
+ begin
548
+ begin
549
+ execute format('alter role %I set search_path = ekwo, "$user", public, extensions', current_user);
550
+ exception when others then
551
+ raise notice 'ekwo: the search_path of the role % was left as it is; SQL written by hand names ekwo.<table>', current_user;
552
+ end;
553
+ end $$;
554
+
555
+ select set_config('search_path', 'ekwo, ' || current_setting('search_path'), false);
556
+
557
+ -- ---------------------------------------------------------------------------
558
+ -- 9. The schema says what it holds, and keeps the rule every file ends with
559
+ -- ---------------------------------------------------------------------------
560
+
561
+ comment on schema ekwo is
562
+ 'The socle of Ekwo OS: the companies, the ledger, the documents, the taxes, the reports and every function that guards them (decision 0090).';
563
+
564
+ revoke execute on all functions in schema ekwo from public;
@@ -0,0 +1,35 @@
1
+ -- Ekwo OS — the schema this release defines is 0.23.0.
2
+ --
3
+ -- `ekwo_schema_version()` is the one place the number lives, and a migration
4
+ -- is the only thing that moves it. A database then answers for the files it
5
+ -- has actually run rather than for what somebody believed it had run: the
6
+ -- column default and `init_instance()` both call this function, so a fresh
7
+ -- install records the new number without a second edit, and `ekwo migrate`
8
+ -- reads it back onto `instance.schema_version` for a database that was
9
+ -- installed at an older one.
10
+ --
11
+ -- Between 0.22.0 and here the socle moved out of `public` into its own
12
+ -- schema, `ekwo` (`20261028040000_the_socle_moves_to_its_schema`, decision
13
+ -- 0090): the function below is written unqualified on purpose, and lands in
14
+ -- the socle's schema through the path of the connection that runs the file —
15
+ -- `ekwo` once the move has run, as every file after it.
16
+ --
17
+ -- The floor of `ekwo-os`, `@ekwo-ai/core` and `@ekwo-ai/mcp` stays at 0.19.0:
18
+ -- a client finds the socle by its marker in either layout, and a database
19
+ -- before the move is read exactly as before.
20
+
21
+ create or replace function ekwo_schema_version()
22
+ returns text
23
+ language sql
24
+ immutable
25
+ as $$
26
+ select '0.23.0'::text;
27
+ $$;
28
+
29
+ comment on function ekwo_schema_version() is
30
+ 'Schema version of the installed release. Bumped by a migration, never by hand.';
31
+
32
+ -- `create or replace` keeps the privileges the function already had, and the
33
+ -- revoke is what every file of this directory ends with.
34
+ revoke execute on all functions in schema ekwo from public;
35
+ grant execute on function ekwo_schema_version() to authenticated, service_role;
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAgC,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAE3E,OAAO,EAAkC,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAYjF,eAAO,MAAM,aAAa,uIAAoE,CAAC;AAE/F;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAS7C;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAuF9F"}
1
+ {"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAgC,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAE3E,OAAO,EAAkC,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAYjF,eAAO,MAAM,aAAa,uIAAoE,CAAC;AAE/F;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAS7C;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAwF9F"}
@@ -103,7 +103,8 @@ export async function migrateCommand(args, deps = {}) {
103
103
  }
104
104
  }
105
105
  // No migration can expose a schema to the Data API, so the line is
106
- // printed on every run until the release that fills `ekwo`.
106
+ // printed on every run: the socle lives in `ekwo`, and a project that
107
+ // does not serve it answers nothing to any client.
107
108
  heading('Data API');
108
109
  note(dim(`The socle lives in ${socle}.`));
109
110
  note(EXPOSE_SOCLE_LINE);
@@ -1 +1 @@
1
- {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrate.js","sourceRoot":"","sources":["../../src/commands/migrate.ts"],"names":[],"mappings":"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"}
@@ -29,4 +29,12 @@ export declare function moduleCommand(args: ParsedArgs, deps?: CommandDeps): Pro
29
29
  export declare function applyModuleMigrations(db: SqlClient, modules: readonly EkwoModule[], options?: {
30
30
  heading?: boolean;
31
31
  }): Promise<number>;
32
+ /**
33
+ * Every module function that carries no `search_path` gets one — its schema,
34
+ * then the socle's — once the socle is in `ekwo` (decision 0090). A module's
35
+ * published files were written for a socle on every default path; the
36
+ * function the move created does the same for the modules installed after
37
+ * it, and nothing on a database before the move.
38
+ */
39
+ export declare function moduleFunctionsFollowTheSocle(db: SqlClient): Promise<void>;
32
40
  //# sourceMappingURL=module.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/commands/module.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAA8C,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAEzF,OAAO,EAAkC,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjF,OAAO,EAML,KAAK,UAAU,EAChB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAI1D,eAAO,MAAM,YAAY,6IAA0E,CAAC;AAEpG,wBAAsB,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CA6B7F;AAmID;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,MAAM,CAAC,CAuCjB"}
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/commands/module.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAA8C,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAEzF,OAAO,EAAkC,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAEjF,OAAO,EAML,KAAK,UAAU,EAChB,MAAM,mBAAmB,CAAC;AAI3B,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,WAAW,CAAC;AAI1D,eAAO,MAAM,YAAY,6IAA0E,CAAC;AAEpG,wBAAsB,aAAa,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,GAAE,WAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CA6B7F;AAmID;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,SAAS,EACb,OAAO,EAAE,SAAS,UAAU,EAAE,EAC9B,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAClC,OAAO,CAAC,MAAM,CAAC,CAwCjB;AAED;;;;;;GAMG;AACH,wBAAsB,6BAA6B,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAMhF"}
@@ -176,6 +176,7 @@ export async function applyModuleMigrations(db, modules, options = {}) {
176
176
  const result = await applyMigrations(db, migrations, (migration) => {
177
177
  step(`${migration.name} (${migration.file})`);
178
178
  });
179
+ await moduleFunctionsFollowTheSocle(db);
179
180
  // A migration may rename a module's schema — `assets` became `fixed_assets`
180
181
  // — and the API still serves the old name until somebody changes a setting
181
182
  // no migration can reach. Said here, the moment it happens.
@@ -199,6 +200,19 @@ export async function applyModuleMigrations(db, modules, options = {}) {
199
200
  }
200
201
  return result.applied.length;
201
202
  }
203
+ /**
204
+ * Every module function that carries no `search_path` gets one — its schema,
205
+ * then the socle's — once the socle is in `ekwo` (decision 0090). A module's
206
+ * published files were written for a socle on every default path; the
207
+ * function the move created does the same for the modules installed after
208
+ * it, and nothing on a database before the move.
209
+ */
210
+ export async function moduleFunctionsFollowTheSocle(db) {
211
+ const present = await db.query(`select to_regprocedure('ekwo.module_functions_follow_the_socle(text)') is not null as there`);
212
+ if (present[0]?.there !== true)
213
+ return;
214
+ await db.query(`select ekwo.module_functions_follow_the_socle(m.schema_name) from ekwo.modules m`);
215
+ }
202
216
  // ------------------------------------------------------------ enable/disable
203
217
  async function toggleCommand(db, modules, args, on) {
204
218
  const code = args.positional[1];
@@ -1 +1 @@
1
- {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/commands/module.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../src/commands/module.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,UAAU,EAAmB,MAAM,YAAY,CAAC;AACzF,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAoB,MAAM,eAAe,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACnF,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,WAAW,EACX,WAAW,EACX,UAAU,GAEX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,KAAK,EAAkB,MAAM,WAAW,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAE5F,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAG,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,CAAU,CAAC;AAEpG,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAgB,EAAE,OAAoB,EAAE;IAC1E,kBAAkB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAElC,IAAI,MAAM,KAAK,SAAS;QAAE,MAAM,IAAI,UAAU,CAAC,sBAAsB,KAAK,EAAE,EAAE,CAAC,CAAC;IAChF,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACd,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/D,MAAM,IAAI,UAAU,CAAC,8BAA8B,MAAM,KAAK,KAAK,EAAE,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,WAAW,EAAE,CAAC;IACpC,MAAM,WAAW,GAAG,aAAa,EAAE,CAAC;IACpC,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IAEhF,IAAI,CAAC;QACH,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,MAAM;gBACT,OAAO,MAAM,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACxC,KAAK,SAAS;gBACZ,OAAO,MAAM,cAAc,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/D;gBACE,OAAO,MAAM,aAAa,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,QAAQ,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAaD,KAAK,UAAU,WAAW,CAAC,EAAa,EAAE,OAAqB;IAC7D,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAEhE,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAChG,SAAS,CAAC;QACR,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;YAChD,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACtC,OAAO;gBACL,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,IAAI;gBACzC,UAAU,EAAE,UAAU,CAAC,MAAM;gBAC7B,SAAS,EAAE,GAAG,KAAK,SAAS;gBAC5B,gBAAgB,EAAE,GAAG,EAAE,OAAO,IAAI,IAAI;gBACtC,MAAM,EAAE,GAAG,EAAE,MAAM,IAAI,IAAI;gBAC3B,SAAS,EAAE,GAAG,EAAE,SAAS,IAAI,CAAC;aAC/B,CAAC;QACJ,CAAC,CAAC;QACF,gBAAgB,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACxC,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,MAAM,EAAE,GAAG,CAAC,WAAW;SACxB,CAAC,CAAC;KACJ,CAAC,CAAC;IAEH,OAAO,CAAC,YAAY,OAAO,CAAC,MAAM,mBAAmB,CAAC,CAAC;IACvD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,CAAC;IACX,CAAC;IAED,KAAK,CACH;QACE,EAAE,KAAK,EAAE,MAAM,EAAE;QACjB,EAAE,KAAK,EAAE,MAAM,EAAE;QACjB,EAAE,KAAK,EAAE,SAAS,EAAE;QACpB,EAAE,KAAK,EAAE,QAAQ,EAAE;QACnB,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE;QACvC,EAAE,KAAK,EAAE,OAAO,EAAE;KACnB,EACD,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;QACvC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtC,OAAO;YACL,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;YACnB,QAAQ,CAAC,IAAI;YACb,QAAQ,CAAC,OAAO;YAChB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC;YACzB,GAAG,KAAK,SAAS;gBACf,CAAC,CAAC,GAAG,CAAC,2CAA2C,CAAC;gBAClD,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,KAAK,GAAG,CAAC,SAAS,UAAU,GAAG,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE;SACjF,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IACF,IAAI,EAAE,CAAC;IACP,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,OAAO,EAAE,CAAC;QACnC,IAAI,QAAQ,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAClG,CAAC;IACD,KAAK,MAAM,EAAE,QAAQ,EAAE,IAAI,OAAO,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC1D,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,wBAAwB,GAAG,CAAC,OAAO,0BAA0B,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACxG,CAAC;IACH,CAAC;IAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,OAAO,CAAC,qCAAqC,CAAC,CAAC;QAC/C,KAAK,MAAM,GAAG,IAAI,SAAS;YAAE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,OAAO,aAAa,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;IACjH,CAAC;IACD,IAAI,EAAE,CAAC;IACP,OAAO,CAAC,CAAC;AACX,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,EAAa;IACnC,MAAM,MAAM,GAAG,MAAM,KAAK,CACxB,EAAE,EACF,+CAA+C,EAC/C,CAAC,GAAG,MAAM,aAAa,CAAC,EAAE,CAAC,UAAU,CAAC,CACvC,CAAC;IACF,IAAI,MAAM,EAAE,OAAO,KAAK,IAAI;QAAE,OAAO,EAAE,CAAC;IACxC,OAAO,EAAE,CAAC,KAAK,CACb;;sCAEkC,CACnC,CAAC;AACJ,CAAC;AAED,2EAA2E;AAE3E,KAAK,UAAU,cAAc,CAC3B,EAAa,EACb,OAAqB,EACrB,IAAwB;IAExB,MAAM,MAAM,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,SAAS,CAAC,CAAC;QACnB,OAAO,CAAC,2BAA2B,CAAC,CAAC;QACrC,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3E,IAAI,OAAO,KAAK,CAAC;QAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC/C,SAAS,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IAEpE,KAAK,MAAM,MAAM,IAAI,MAAM,EAAE,CAAC;QAC5B,OAAO,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QACnC,KAAK,MAAM,QAAQ,IAAI,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvF,CAAC;IACD,IAAI,EAAE,CAAC;IACP,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,EAAa,EACb,OAA8B,EAC9B,UAAiC,EAAE;IAEnC,MAAM,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAEtC,MAAM,aAAa,CAAC,EAAE,CAAC,CAAC;IACxB,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAC9F,MAAM,OAAO,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAEhE,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC7B,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAC7B,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,aAAa,OAAO,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC;IACxF,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC,SAAS,EAAE,EAAE;QACjE,IAAI,CAAC,GAAG,SAAS,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,GAAG,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IACH,MAAM,6BAA6B,CAAC,EAAE,CAAC,CAAC;IAExC,4EAA4E;IAC5E,2EAA2E;IAC3E,4DAA4D;IAC5D,KAAK,MAAM,GAAG,IAAI,MAAM,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,GAAG,CAAC,WAAW;YAAE,SAAS;QACjE,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,qCAAqC,GAAG,CAAC,WAAW,mBAAmB,MAAM,KAAK,CAAC,CAAC;QACxG,IAAI,CAAC,GAAG,CAAC,eAAe,MAAM,aAAa,GAAG,CAAC,WAAW,2CAA2C,CAAC,CAAC,CAAC;QACxG,KAAK,MAAM,QAAQ,IAAI,gBAAgB,CAAC,GAAG,CAAC,WAAW,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC,CAAC;IACvF,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;QAC9C,IAAI,OAAO,KAAK,SAAS;YAAE,SAAS;QACpC,KAAK,MAAM,IAAI,IAAI,MAAM,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;YACzD,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAW,EAAE,IAAI,EAAE,CAAC,CAAC;YACtE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;AAC/B,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,EAAa;IAC/D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,KAAK,CAC5B,6FAA6F,CAC9F,CAAC;IACF,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI;QAAE,OAAO;IACvC,MAAM,EAAE,CAAC,KAAK,CAAC,kFAAkF,CAAC,CAAC;AACrG,CAAC;AAED,8EAA8E;AAE9E,KAAK,UAAU,aAAa,CAC1B,EAAa,EACb,OAAqB,EACrB,IAAgB,EAChB,EAAW;IAEX,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,IAAI,KAAK,SAAS;QAAE,MAAM,IAAI,UAAU,CAAC,8BAA8B,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC;IAE/G,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC7D,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,UAAU,CAClB,mBAAmB,IAAI,2BAA2B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAC7G,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;IAC7E,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE9C,IAAI,EAAE,EAAE,CAAC;QACP,MAAM,YAAY,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAC/B,MAAM,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YACjC,MAAM,EAAE,CAAC,KAAK,CAAC,yCAAyC,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC;QACjG,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC,CAAC;QAC3C,IAAI,CAAC,GAAG,IAAI,sBAAsB,SAAS,EAAE,CAAC,CAAC;QAC/C,IAAI,EAAE,CAAC;QACP,KAAK,MAAM,QAAQ,IAAI,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvF,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,IAAI,EAAE;YACjC,MAAM,EAAE,CAAC,KAAK,CAAC,+BAA+B,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG,IAAI,uBAAuB,SAAS,iCAAiC,CAAC,CAAC;IACjF,CAAC;IACD,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IACrG,IAAI,EAAE,CAAC;IACP,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,YAAY,CAAC,EAAa,EAAE,MAAkB;IAC3D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IAC/C,IAAI,GAAG,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,KAAK,CACb,kBAAkB,MAAM,CAAC,QAAQ,CAAC,IAAI,0BAA0B,GAAG,qCAAqC;YACtG,2BAA2B,CAC9B,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IACvE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CACb,wBAAwB,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,OAAO,CAAC,MAAM,gCAAgC;YAChG,kCAAkC,CACrC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,EAAa,EAAE,KAAyB;IACpE,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,KAAK,CAC9B,8CAA8C,CAC/C,CAAC;IACF,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;QACxE,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,UAAU,CAClB,oBAAoB,KAAK,8BAA8B,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAC3G,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC,EAAE,CAAC;IAClB,CAAC;IACD,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAC1B,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACjD,MAAM,IAAI,UAAU,CAClB,kDAAkD,SAAS,CAAC,MAAM,eAAe;YAC/E,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACzD,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC,EAAE,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,YAAY,CACzB,EAAa,EACb,KAAyB,EACzB,SAAiB;IAEjB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,MAAM,KAAK,GAAG,MAAM,KAAK,CACvB,EAAE,EACF,0GAA0G,EAC1G,CAAC,SAAS,CAAC,CACZ,CAAC;IACF,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,6BAA6B,SAAS,kDAAkD,CACzF,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,CAAC;AACvB,CAAC;AAED,SAAS,KAAK;IACZ,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC;;;;;;;;;;CAU9B,CAAC;AACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAOL,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAIjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAG1C,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,CAAC;AAEpD,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED,wBAAsB,MAAM,CAC1B,EAAE,EAAE,SAAS,EACb,UAAU,EAAE,SAAS,EAAE,EACvB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CAkCvB;AA2BD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAUrD;AAudD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,MAAM,EAAE,OAAO,CAAC;IAChB,sEAAsE;IACtE,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,uDAAuD;AACvD,eAAO,MAAM,kBAAkB,ypBAaE,CAAC;AAElC;;;;;;;GAOG;AACH,eAAO,MAAM,mCAAmC,ghCAsBf,CAAC"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAGH,OAAO,EAOL,KAAK,eAAe,EACrB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAIjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAG1C,MAAM,MAAM,QAAQ,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,CAAC;AAEpD,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED,wBAAsB,MAAM,CAC1B,EAAE,EAAE,SAAS,EACb,UAAU,EAAE,SAAS,EAAE,EACvB,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CAkCvB;AA2BD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAUrD;AA2dD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,MAAM,EAAE,OAAO,CAAC;IAChB,sEAAsE;IACtE,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,uDAAuD;AACvD,eAAO,MAAM,kBAAkB,ypBAaE,CAAC;AAElC;;;;;;;GAOG;AACH,eAAO,MAAM,mCAAmC,ghCAsBf,CAAC"}
package/dist/doctor.js CHANGED
@@ -85,7 +85,7 @@ export function checkSocleSchema(socle) {
85
85
  severity: 'ok',
86
86
  summary: socle === SOCLE_SCHEMA
87
87
  ? `the socle lives in its own schema, ${SOCLE_SCHEMA}`
88
- : `the socle lives in ${FORMER_SOCLE_SCHEMA}, and moves to ${SOCLE_SCHEMA} with the next release`,
88
+ : `the socle lives in ${FORMER_SOCLE_SCHEMA}: this database has not run the migration that moves it to ${SOCLE_SCHEMA} (ekwo migrate does)`,
89
89
  data: { schema: socle },
90
90
  };
91
91
  }
@@ -99,10 +99,12 @@ export function checkSocleSchema(socle) {
99
99
  * nothing can be known from a database connection, and the check says so and
100
100
  * prints the one line to set rather than guessing.
101
101
  *
102
- * A warning while the socle is still in `public`: nothing fails yet, and the
103
- * schema has to be exposed before the release that fills it. A problem once
104
- * the socle is in `ekwo` and the setting says it is not served: every request
105
- * of every client then answers that the schema is not exposed.
102
+ * Where the setting is not visible, the line to check is said and nothing is
103
+ * judged. Where it is: a warning while the socle is still in `public` —
104
+ * nothing fails yet, and the schema has to be exposed before `ekwo migrate`
105
+ * moves the socle there — and a problem once the socle is in `ekwo` and the
106
+ * setting says it is not served, because every request of every client then
107
+ * answers that the schema is not exposed.
106
108
  */
107
109
  async function checkSocleExposed(db, socle) {
108
110
  const name = 'ekwo_exposed';
@@ -114,9 +116,11 @@ async function checkSocleExposed(db, socle) {
114
116
  }
115
117
  const setting = found[0]?.setting ?? null;
116
118
  if (setting === null) {
119
+ // Nothing can be known from here: the line to check, said, not a warning
120
+ // about something that may well be right.
117
121
  return {
118
122
  name,
119
- severity: socle === SOCLE_SCHEMA ? 'warning' : 'ok',
123
+ severity: 'ok',
120
124
  summary: `the exposed schemas are a setting of the project, not visible from this connection — make sure ${SOCLE_SCHEMA} is among them`,
121
125
  details: [EXPOSE_SOCLE_LINE],
122
126
  data: { exposed: null },
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,MAAM,WAAW,SAAS;IACxB,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAC;IAChB,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;CACd;AAID,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,SAAS,CAMpF;AAED,mEAAmE;AACnE,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAWtE;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAWhE;AAED,+CAA+C;AAC/C,wBAAsB,eAAe,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAKtE;AAED,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,uFAAuF;IACvF,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wEAAwE;AACxE,wBAAsB,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAUhF;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAavF;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,iFAAiF;AACjF,wBAAsB,eAAe,CACnC,EAAE,EAAE,SAAS,EACb,GAAG,EAAE,SAAS,EAAE,EAChB,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,GACzC,OAAO,CAAC,WAAW,CAAC,CAOtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAiHrD"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAMH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,MAAM,WAAW,SAAS;IACxB,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAC;IAChB,iEAAiE;IACjE,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;CACd;AAKD,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,SAAS,CAMpF;AAED,mEAAmE;AACnE,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC,CAWtE;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAWhE;AAED,+CAA+C;AAC/C,wBAAsB,eAAe,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAKtE;AAED,MAAM,WAAW,GAAG;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,uFAAuF;IACvF,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,wEAAwE;AACxE,wBAAsB,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAUhF;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBvF;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,iFAAiF;AACjF,wBAAsB,eAAe,CACnC,EAAE,EAAE,SAAS,EACb,GAAG,EAAE,SAAS,EAAE,EAChB,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,GACzC,OAAO,CAAC,WAAW,CAAC,CAOtB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAiHrD"}
@@ -16,6 +16,8 @@
16
16
  */
17
17
  import { readFile, readdir } from 'node:fs/promises';
18
18
  import { join } from 'node:path';
19
+ import { socleNamed } from '@ekwo-ai/core';
20
+ import { socleSchemaOf } from './socle.js';
19
21
  const FILE_PATTERN = /^(\d{14})_(.+)\.sql$/;
20
22
  /** Parses a migration filename, or returns `undefined` if it is not one. */
21
23
  export function parseMigrationFile(file) {
@@ -83,7 +85,11 @@ export async function migrationGap(db, all) {
83
85
  * transaction of its own, and none may: the runner owns that.
84
86
  */
85
87
  export async function applyMigration(db, migration) {
86
- const sql = await readFile(migration.path, 'utf8');
88
+ // A published file names the socle `public.` as it was when written — a
89
+ // module's file above all; it is read for the socle's schema of the day
90
+ // (`socleNamed`), asked here because the socle's own files, applied in the
91
+ // same run, may just have moved it.
92
+ const sql = socleNamed(await readFile(migration.path, 'utf8'), await socleSchemaOf(db));
87
93
  const statements = splitStatements(sql);
88
94
  await db.transaction(async (tx) => {
89
95
  await tx.exec(sql);
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"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"}
package/dist/socle.d.ts CHANGED
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * Where the socle lives, for the connection that installs and operates it.
3
3
  *
4
- * The socle was created in `public` and moves to its own schema, `ekwo`
5
- * (decision 0090). The bookkeeping routes resolve it once per connection in
4
+ * The socle was created in `public` and lives in its own schema, `ekwo`,
5
+ * since `20261028040000` (decision 0090); a database that has not run that
6
+ * file yet still holds it in `public`. The bookkeeping routes resolve it once per connection in
6
7
  * `@ekwo-ai/core`; this file is the same question asked on the owner's
7
8
  * connection, by the same marker and the same catalogue query.
8
9
  *
@@ -31,5 +32,5 @@ export declare function useSocleSchema(db: SqlClient): Promise<string>;
31
32
  * project, not of the database. Printed by `ekwo migrate` and by the doctor
32
33
  * until the schema is exposed.
33
34
  */
34
- export declare const EXPOSE_SOCLE_LINE = "Add \"ekwo\" to Project Settings \u2192 Data API \u2192 Exposed schemas (on a local stack, `schemas` under [api] in supabase/config.toml) \u2014 before the release that moves the socle there.";
35
+ export declare const EXPOSE_SOCLE_LINE = "Add \"ekwo\" to Project Settings \u2192 Data API \u2192 Exposed schemas (on a local stack, `schemas` under [api] in supabase/config.toml) \u2014 the socle lives there, and every call of every client names it.";
35
36
  //# sourceMappingURL=socle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"socle.d.ts","sourceRoot":"","sources":["../src/socle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,OAAO,EAAU,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AAElD,2DAA2D;AAC3D,wBAAsB,aAAa,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAGlE;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CASnE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,oMACiK,CAAC"}
1
+ {"version":3,"file":"socle.d.ts","sourceRoot":"","sources":["../src/socle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAQH,OAAO,EAAU,KAAK,SAAS,EAAE,MAAM,UAAU,CAAC;AAElD,2DAA2D;AAC3D,wBAAsB,aAAa,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAGlE;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,EAAE,EAAE,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CASnE;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,qNACkL,CAAC"}
package/dist/socle.js CHANGED
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * Where the socle lives, for the connection that installs and operates it.
3
3
  *
4
- * The socle was created in `public` and moves to its own schema, `ekwo`
5
- * (decision 0090). The bookkeeping routes resolve it once per connection in
4
+ * The socle was created in `public` and lives in its own schema, `ekwo`,
5
+ * since `20261028040000` (decision 0090); a database that has not run that
6
+ * file yet still holds it in `public`. The bookkeeping routes resolve it once per connection in
6
7
  * `@ekwo-ai/core`; this file is the same question asked on the owner's
7
8
  * connection, by the same marker and the same catalogue query.
8
9
  *
@@ -44,5 +45,5 @@ export async function useSocleSchema(db) {
44
45
  * project, not of the database. Printed by `ekwo migrate` and by the doctor
45
46
  * until the schema is exposed.
46
47
  */
47
- export const EXPOSE_SOCLE_LINE = `Add "${SOCLE_SCHEMA}" to Project Settings → Data API → Exposed schemas (on a local stack, \`schemas\` under [api] in supabase/config.toml) — before the release that moves the socle there.`;
48
+ export const EXPOSE_SOCLE_LINE = `Add "${SOCLE_SCHEMA}" to Project Settings → Data API → Exposed schemas (on a local stack, \`schemas\` under [api] in supabase/config.toml) — the socle lives there, and every call of every client names it.`;
48
49
  //# sourceMappingURL=socle.js.map
package/dist/socle.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"socle.js","sourceRoot":"","sources":["../src/socle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,sBAAsB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAkB,MAAM,UAAU,CAAC;AAElD,2DAA2D;AAC3D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAAa;IAC/C,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC;IACjG,OAAO,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAC;AACpD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EAAa;IAChD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAS,EAAE,EAAE,uCAAuC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1F,MAAM,IAAI,GAAG,OAAO;SACjB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,MAAM,GAAG,CAAC,CAAC;IAClF,MAAM,EAAE,CAAC,KAAK,CAAC,6CAA6C,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1G,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAC5B,QAAQ,YAAY,yKAAyK,CAAC"}
1
+ {"version":3,"file":"socle.js","sourceRoot":"","sources":["../src/socle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,UAAU,EACV,sBAAsB,GACvB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAkB,MAAM,UAAU,CAAC;AAElD,2DAA2D;AAC3D,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAAa;IAC/C,MAAM,KAAK,GAAG,MAAM,sBAAsB,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,YAAY,CAAC,CAAC;IACjG,OAAO,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,mBAAmB,CAAC;AACpD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,EAAa;IAChD,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG,CAAC,MAAM,MAAM,CAAS,EAAE,EAAE,uCAAuC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1F,MAAM,IAAI,GAAG,OAAO;SACjB,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,MAAM,GAAG,CAAC,CAAC;IAClF,MAAM,EAAE,CAAC,KAAK,CAAC,6CAA6C,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1G,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAC5B,QAAQ,YAAY,0LAA0L,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ekwo-os",
3
- "version": "0.22.0",
3
+ "version": "0.23.0",
4
4
  "description": "Install and operate Ekwo OS on your own Supabase project: npx ekwo-os init.",
5
5
  "keywords": [
6
6
  "accounting",
@@ -50,7 +50,7 @@
50
50
  "typecheck": "tsc -p tsconfig.json --noEmit"
51
51
  },
52
52
  "dependencies": {
53
- "@ekwo-ai/core": "^0.22.0",
53
+ "@ekwo-ai/core": "^0.23.0",
54
54
  "postgres": "^3.4.5"
55
55
  }
56
56
  }