QQQ 4.1 QBit (com.kingsrook.qbits:sql-workbench) for a super-user SQL notebook over any RDBMS backend of the instance: - Dialect-aware scanner, statement splitter/classifier (READ, EXPLAIN_ANALYZE, WRITE, DDL, FORBIDDEN) and :named parameter binding. - Execution engine: read-only sessions in a database READ ONLY transaction (Postgres, MySQL, SQLite query_only; classifier on H2), gated write mode (rolled-back dry run, single-use confirm token, row guard, hard cap, drift check), statement timeouts, row/byte caps, cancellation, per-user concurrency, clean connection return, and a fail-closed execution audit (audit updates deferred until the session connection is released). - Dedicated read-only/write credentials per backend; backend read-only replica support. - EXPLAIN / EXPLAIN ANALYZE (always rolled back) normalized to a plan tree; schema introspection with QQQ table/field -> SQL name mapping. - Notebooks (personal/shared), cells, versions with retention, result snapshots. - REST routes under /qqq/v1/sql-workbench (Javalin 7, JSON-only bodies), CSV/XLSX/JSON export. - Tables, notebook PVS, SQL_WORKBENCH widget and sqlWorkbench app; no processes. PostgreSQL DDL in docs/ddl/postgres.sql. - Tests: 83 unit (H2, SQLite, HTTP) + 6 Testcontainers Postgres integration tests; JaCoCo 94% instructions. - CircleCI qqq-orb 0.6.8 config, Maven wrapper, CLAUDE.md/AGENTS.md, CHANGELOG. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
20 lines
794 B
Plaintext
20 lines
794 B
Plaintext
/*
|
|
* QQQ - Low-code Application Framework for Engineers.
|
|
* Copyright (C) 2021-2025. Kingsrook, LLC
|
|
* 651 N Broad St Ste 205 # 6917 | Middletown DE 19709 | United States
|
|
* contact@kingsrook.com
|
|
* https://github.com/Kingsrook/
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* https://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|