Fixes the four documentation gaps qqq-all found adopting 1.0.0-RC.2 (QRun-IO/qqq-all#30).
docs/MIGRATION-1.0.md gains a Permissions section naming quickSearchAdmin.hasAccess and .read/.write on quickSearchIndex, quickSearchIndexRun and quickSearchFailedEvent, what each covers, the READ_INSERT_EDIT_DELETE_PERMISSIONS alternative, the tableNamePrefix effect, and that search users need only the searched tables' read permission.
It gains a Schema changes section: the five new quickSearchIndex columns, the searchableFieldsJson and quickSearchIndexRun.errorMessage changes from STRING to TEXT, the tableName unique key, the new quickSearchFailedEvent table, status values and minimum lengths (quickSearchIndex.status 13, quickSearchFailedEvent.status 16), and portable type guidance. The repo has no DDL, so the guide says so and does not give vendor DDL.
README badge, dependency snippet and "current release candidate" line move to 1.0.0-RC.2; the README upgrade summary mentions permissions and schema; the PRD status records RC.2 and drops #13 to #17 from the open list.
CHANGELOG, TODO and SESSION-STATE are unchanged.
How each fact was verified
Permission names: QuickSearchQBitConfig defaults (adminPermissionRules = HAS_ACCESS_PERMISSION with base name quickSearchAdmin; tablePermissionRules = READ_WRITE_PERMISSIONS, no base name), applied by QuickSearchAdminAppMetaDataProducer, QuickSearchProcessMetaDataHelper and QuickSearchTableMetaDataHelper. Name format and the insert/edit/delete to write mapping from PermissionsHelper, PrivatePermissionSubType and TablePermissionSubType in the qqq-backend-core 4.1.0-RC.1 jar. Cross-checked against infra/postgres/06-quick-search-permissions.sql in qqq-all#30. Core QueryAction, InsertAction and UpdateAction in 4.1.0-RC.1 contain no permission checks; InsertAction checks unique keys through UniqueKeyHelper.
Schema: 1.0 fields from QuickSearchTableMetaDataHelper (used by the three table producers), compared with the table definitions in QuickSearchQBitProducer at tags v0.1.0 and v0.2.0 (identical to each other). Status values from AbstractIndexingStep, QuickSearchFailedEvent and IndexEventAction; NEEDS_REINDEX is absent from v0.2.0. lastRunStatus format from AbstractIndexingStep.completeRunRecord; the 4,000 character error truncation from it, QuickSearchRecordChangeListener, BasepullIndexStep and FullReindexStep. Row recreation defaults from AbstractIndexingStep.ensureIndexRowExists. No .sql or DDL file is tracked in the repo.
Setter: QuickSearchQBitConfig.withAllowPlaintextCredentials(Boolean); no allowPlaintextCredentials(...) method exists.
## Summary
Fixes the four documentation gaps qqq-all found adopting `1.0.0-RC.2` (QRun-IO/qqq-all#30).
1. `docs/MIGRATION-1.0.md` gains a Permissions section naming `quickSearchAdmin.hasAccess` and `.read`/`.write` on `quickSearchIndex`, `quickSearchIndexRun` and `quickSearchFailedEvent`, what each covers, the `READ_INSERT_EDIT_DELETE_PERMISSIONS` alternative, the `tableNamePrefix` effect, and that search users need only the searched tables' read permission.
2. It gains a Schema changes section: the five new `quickSearchIndex` columns, the `searchableFieldsJson` and `quickSearchIndexRun.errorMessage` changes from `STRING` to `TEXT`, the `tableName` unique key, the new `quickSearchFailedEvent` table, status values and minimum lengths (`quickSearchIndex.status` 13, `quickSearchFailedEvent.status` 16), and portable type guidance. The repo has no DDL, so the guide says so and does not give vendor DDL.
3. `allowPlaintextCredentials(true)` becomes `withAllowPlaintextCredentials(true)`.
4. README badge, dependency snippet and "current release candidate" line move to `1.0.0-RC.2`; the README upgrade summary mentions permissions and schema; the PRD status records RC.2 and drops #13 to #17 from the open list.
CHANGELOG, TODO and SESSION-STATE are unchanged.
## How each fact was verified
- Permission names: `QuickSearchQBitConfig` defaults (`adminPermissionRules` = `HAS_ACCESS_PERMISSION` with base name `quickSearchAdmin`; `tablePermissionRules` = `READ_WRITE_PERMISSIONS`, no base name), applied by `QuickSearchAdminAppMetaDataProducer`, `QuickSearchProcessMetaDataHelper` and `QuickSearchTableMetaDataHelper`. Name format and the insert/edit/delete to `write` mapping from `PermissionsHelper`, `PrivatePermissionSubType` and `TablePermissionSubType` in the qqq-backend-core 4.1.0-RC.1 jar. Cross-checked against `infra/postgres/06-quick-search-permissions.sql` in qqq-all#30. Core `QueryAction`, `InsertAction` and `UpdateAction` in 4.1.0-RC.1 contain no permission checks; `InsertAction` checks unique keys through `UniqueKeyHelper`.
- Schema: 1.0 fields from `QuickSearchTableMetaDataHelper` (used by the three table producers), compared with the table definitions in `QuickSearchQBitProducer` at tags `v0.1.0` and `v0.2.0` (identical to each other). Status values from `AbstractIndexingStep`, `QuickSearchFailedEvent` and `IndexEventAction`; `NEEDS_REINDEX` is absent from `v0.2.0`. `lastRunStatus` format from `AbstractIndexingStep.completeRunRecord`; the 4,000 character error truncation from it, `QuickSearchRecordChangeListener`, `BasepullIndexStep` and `FullReindexStep`. Row recreation defaults from `AbstractIndexingStep.ensureIndexRowExists`. No `.sql` or DDL file is tracked in the repo.
- Setter: `QuickSearchQBitConfig.withAllowPlaintextCredentials(Boolean)`; no `allowPlaintextCredentials(...)` method exists.
- `./mvnw -q compile` passes.
Closes #26
Audit note (2026-10-12, AI-assisted): this PR moves the README badge and Getting started version to 1.0.0-RC.2, but Maven Central's newest is 1.1.0-RC.1 (develop is the 1.1 line). Consider naming both lines or the 1.1 RC. Adoption-section follow-up tracked in the new issue.
Audit note (2026-10-12, AI-assisted): this PR moves the README badge and Getting started version to `1.0.0-RC.2`, but Maven Central's newest is `1.1.0-RC.1` (develop is the 1.1 line). Consider naming both lines or the 1.1 RC. Adoption-section follow-up tracked in the new issue.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary
Fixes the four documentation gaps qqq-all found adopting
1.0.0-RC.2(QRun-IO/qqq-all#30).docs/MIGRATION-1.0.mdgains a Permissions section namingquickSearchAdmin.hasAccessand.read/.writeonquickSearchIndex,quickSearchIndexRunandquickSearchFailedEvent, what each covers, theREAD_INSERT_EDIT_DELETE_PERMISSIONSalternative, thetableNamePrefixeffect, and that search users need only the searched tables' read permission.quickSearchIndexcolumns, thesearchableFieldsJsonandquickSearchIndexRun.errorMessagechanges fromSTRINGtoTEXT, thetableNameunique key, the newquickSearchFailedEventtable, status values and minimum lengths (quickSearchIndex.status13,quickSearchFailedEvent.status16), and portable type guidance. The repo has no DDL, so the guide says so and does not give vendor DDL.allowPlaintextCredentials(true)becomeswithAllowPlaintextCredentials(true).1.0.0-RC.2; the README upgrade summary mentions permissions and schema; the PRD status records RC.2 and drops #13 to #17 from the open list.CHANGELOG, TODO and SESSION-STATE are unchanged.
How each fact was verified
QuickSearchQBitConfigdefaults (adminPermissionRules=HAS_ACCESS_PERMISSIONwith base namequickSearchAdmin;tablePermissionRules=READ_WRITE_PERMISSIONS, no base name), applied byQuickSearchAdminAppMetaDataProducer,QuickSearchProcessMetaDataHelperandQuickSearchTableMetaDataHelper. Name format and the insert/edit/delete towritemapping fromPermissionsHelper,PrivatePermissionSubTypeandTablePermissionSubTypein the qqq-backend-core 4.1.0-RC.1 jar. Cross-checked againstinfra/postgres/06-quick-search-permissions.sqlin qqq-all#30. CoreQueryAction,InsertActionandUpdateActionin 4.1.0-RC.1 contain no permission checks;InsertActionchecks unique keys throughUniqueKeyHelper.QuickSearchTableMetaDataHelper(used by the three table producers), compared with the table definitions inQuickSearchQBitProducerat tagsv0.1.0andv0.2.0(identical to each other). Status values fromAbstractIndexingStep,QuickSearchFailedEventandIndexEventAction;NEEDS_REINDEXis absent fromv0.2.0.lastRunStatusformat fromAbstractIndexingStep.completeRunRecord; the 4,000 character error truncation from it,QuickSearchRecordChangeListener,BasepullIndexStepandFullReindexStep. Row recreation defaults fromAbstractIndexingStep.ensureIndexRowExists. No.sqlor DDL file is tracked in the repo.QuickSearchQBitConfig.withAllowPlaintextCredentials(Boolean); noallowPlaintextCredentials(...)method exists../mvnw -q compilepasses.Closes #26
Audit note (2026-10-12, AI-assisted): this PR moves the README badge and Getting started version to
1.0.0-RC.2, but Maven Central's newest is1.1.0-RC.1(develop is the 1.1 line). Consider naming both lines or the 1.1 RC. Adoption-section follow-up tracked in the new issue.