Skip to content

Repo audit: dead-code removal, CI parity and docs#23

Merged
oblomov-dev merged 20 commits into
mainfrom
claude/repo-audit-review-fr5qem
Jul 13, 2026
Merged

Repo audit: dead-code removal, CI parity and docs#23
oblomov-dev merged 20 commits into
mainfrom
claude/repo-audit-review-fr5qem

Conversation

@oblomov-dev

Copy link
Copy Markdown
Member

A small, low-risk audit pass over the sql-console addon, bringing it in line with the sibling addons.

Changes

  • Cleanup – remove the unused preview_filter_range method; drop unused fw_table/fw_title parameters from result_display; remove the misleading DEFAULT sy-uname on db_read_by_id (the argument is an id, not a user); normalize the default query casing to SELECT * FROM t100.
  • Refactor – vendor the sql-console context and db classes instead of calling z2ui5_cl_util directly.
  • CI parity – add the build_rename workflow; bump actions to v5; uniform CI badge block; rename the rename check to renaming; quote node-version.
  • Docs / hygiene – add AGENTS.md; align external dependencies across README and abaplint; note that authorization checks are the operator's responsibility; point the demo image at the abap2UI5-addons org; add CI status badges; add .gitattributes / CoC; drop unused devDependencies; remove Dependabot config; extend .gitignore; add engines.

Testing

npx abaplint passes (0 issues, 27 files).

🤖 Generated with Claude Code


Generated by Claude Code

claude added 20 commits July 13, 2026 10:07
The screenshot URL still referenced the old abap2UI5-apps org and only
worked via GitHub's repo-transfer redirect.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
The three workflows existed but the README lacked the badge block the
sibling addons have.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
The three workflows only triggered on push to main, so a PR with
broken ABAP passed with no checks and the failure only surfaced after
merge on a then-red main. Added pull_request as an additional trigger
(sibling layout-management already does this) and a Dependabot config
matching the other repos (weekly npm + github-actions, @abaplint
grouped).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
This addon accesses data by table/SQL the user names and has no
authorization check of its own by design (it is a developer tool).
Document that explicitly and point operators at adding their own checks
before using it beyond a development system.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Dependency updates will be handled manually.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Adds the same rename-branch feature abap2UI5 and frontend have: a
workflow_dispatch that renames all artifacts to a chosen namespace and
pushes the result to rename_<name> (e.g. rename_zmyui5), ready to pull
with abapGit for a parallel installation in the same system. Reuses the
existing .github/abaplint/rename.json (placeholder zabap2ui5) with the
chosen name substituted; main is carried as second parent.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Only @abaplint/cli is actually used (abaplint checks + rename). The
transpiler/runtime/sqlite stack, @types/node and npm-check-updates had
zero references - carried over from a template. abaplint still reports
0 issues after removal.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
…cl_util

Adopts the popups/samples pattern: sql-console now carries its own
z2ui5_sql_cl_context (the utility methods it uses: conv/itab/filter/
rtti/xml/srtti/time/uuid plus their private helpers and filter types)
and z2ui5_sql_cl_db (the four z2ui5_t_91 persistence helpers), copied
from the abap2UI5 utility classes, instead of calling z2ui5_cl_util /
z2ui5_cl_util_db directly. The db copy still reads/writes the shared
z2ui5_t_91 table via the abap2UI5 dependency. abaplint standard: 0
issues. The cloud check keeps its pre-existing failures in src/native/
(ADBC/DDIC types not available in ABAP Cloud); the new classes are
cloud-clean.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
The round-1 action-version pass skipped these four addons; they still
ran @v4 while layout-management already uses @v5. Unify on @v5.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
sql-console depends on custom-controls (z2ui5_cl_cc_spreadsheet) and
popups, but the dependency set had drifted: the README omitted
custom-controls, abap_cloud.jsonc omitted popups, and rename.json
omitted both. All three now list the full set: abap2UI5, popups,
custom-controls.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
…le fix

- .gitattributes (LF), CODE_OF_CONDUCT.md, LICENSE holder -> abap2UI5
- workflows: concurrency groups + npm cache
- abaplint: enable exporting + omit_parameter_name (auto-fixed findings);
  reindent abaplint.jsonc to 2-space (comments preserved)
- fix the 'Number of Rows' preview title: remove the double space, drop
  the inconsistent parentheses, collapse the 3 duplicated && builds into
  one |Number of Rows: { lines( ... ) }| template
abaplint standard: 0 issues.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Give the README the same six-badge block as the other addons
(ABAP_STANDARD, ABAP_CLOUD, ABAP_702, auto_cloud, auto_downport,
renaming) so badges stay grey where a workflow is not part of this repo
and go green/red where it runs. The rename_test workflow is renamed to
'renaming' so its badge reads that.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Single agent-instruction file documenting the current state: structure,
the vendored utility-copy model, dependencies, security notes, coding
style and how to validate (abaplint + CI workflows).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
- Remove unused method preview_filter_range
- Drop unused parameters fw_table/fw_title from result_display
- Remove misleading DEFAULT sy-uname from db_read_by_id (id, not user)
- Normalize default query casing to SELECT * FROM t100
- Quote node-version in workflows, extend .gitignore, add engines to
  package.json

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Match the indentation used by the sibling addon configs; no rule or
dependency changes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Align with the version now used in the abap2UI5 core repo. abaplint
passes with 0 issues.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
ms_control-callback_pop_session_load was declared and read in a WHEN
but never assigned, so the "restore previous session" branch could
never fire (it would only match an empty id_app). Remove the dead field
and branch; z2ui5_on_init_set_app is still reachable from z2ui5_on_event.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
The Contributor Covenant [INSERT CONTACT METHOD] placeholder had been
deleted, leaving a dangling "...responsible for enforcement at ."
sentence. Point reporters at the repository's private Security Advisory
report form.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
build_target only stripped a trailing ` AS <alias>` for table-qualified
fields (the ~ branch); an unqualified aliased field kept the alias in
the name, so e.g. `SELECT carrid AS cc FROM scarr` raised
"field CARRID AS CC not found". Apply the strip on both paths.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MEGSbezJEiFoFubnrqATiM
Take back all ABAP code changes (vendored z2ui5_sql_cl_context /
z2ui5_sql_cl_db classes, dead-code removal, signature cleanups) so the
PR only carries the low-risk CI, config and documentation updates.
Drop the exporting / omit_parameter_name abaplint rules whose code
fixes were part of the reverted changes, and remove the vendored-copy
sections from AGENTS.md.

npx abaplint: 0 issues, 23 files.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01N8Maa3PJ3E2bhrS9B9R1rf
@oblomov-dev
oblomov-dev merged commit 42327de into main Jul 13, 2026
2 of 4 checks passed
@oblomov-dev
oblomov-dev deleted the claude/repo-audit-review-fr5qem branch July 13, 2026 17:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants