Skip to content

docs: make kaefa README product-first and license-aware - #81

Draft
seonghobae wants to merge 7 commits into
developfrom
cursor/docs-adr-mirt-fit-search-d7b0
Draft

docs: make kaefa README product-first and license-aware#81
seonghobae wants to merge 7 commits into
developfrom
cursor/docs-adr-mirt-fit-search-d7b0

Conversation

@seonghobae

@seonghobae seonghobae commented Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Outcome

Consolidate kaefa's current methodological ADR work with a product-first repository landing on the existing authoritative documentation branch, without changing R runtime behavior.

  • keep ADR 0001-0006 and the verified methodological source index;
  • replace the stale README opening with a concise AEFA/IRT product responsibility, supported workflow, architecture boundary, source-evaluation path, Shiny/remote boundaries, maturity, and documentation navigation;
  • update both README.Rmd and generated README.md together;
  • remove historical seonghobae/kaefa install/CI links, Travis/AppVeyor status surfaces, changelog-style “New Feature” copy, and unsourced runtime/sizing estimates from the customer-facing landing;
  • preserve the exact-cased DeepWiki entry;
  • surface the repository's actual GPL-family commercial-intake blocker instead of presenting the package as commercially cleared.

Product / scientific boundary

kaefa remains an R package for automated exploratory factor/IRT model search. aefa() coordinates candidate search and engineAEFA() performs lower-level estimation; the current numerical estimation boundary is mirt. The package also contains the optional Shiny surface launchAEFA() and remote-host initialization through aefaInit().

The README now preserves the explicit productization boundaries already documented in ARCHITECTURE.md: kaefa-core, kaefa-studio, and a future kaefa-runner deployment boundary. It does not promote the future runner into a separately released product or turn exploratory search into confirmatory/scientific-validity evidence.

Source metadata is 0.1.428; the GitHub release inventory is currently empty. The README therefore does not treat a source version, historical badge, or passing development check as immutable release/support evidence.

Commercial licensing due diligence

Fresh repository/package inspection found a material policy blocker:

  • DESCRIPTION declares kaefa itself as GPL-3;
  • there is no root Apache-2.0/MIT LICENSE file;
  • DESCRIPTION directly imports mirt (>= 1.27), a GPL-family numerical runtime used by the product's estimation/search paths;
  • package metadata also names Tae-Yong Yoo as a thesis contributor (ths, ctb), so repository ownership alone is not sufficient evidence for unilateral first-party relicensing without contribution/provenance review.

Issue #83 now owns the complete first-party provenance/relicensing and GPL-family runtime/build replacement problem. Closure requires preserving the intentionally supported scientific estimands/search/recovery behavior with exact regression/recovery evidence rather than merely changing DESCRIPTION, hiding dependency-license evidence, or moving the same GPL implementation behind another process boundary.

Until #83 is resolved, kaefa is not currently cleared for ContextualWisdomLab commercial intake/distribution, and this documentation PR must not be presented as commercial-readiness evidence.

README truth repairs

The previous landing contained several stale or weak public surfaces that are removed from this branch:

  • installation pointed to the historical personal repository seonghobae/kaefa;
  • R-CMD-check, Travis CI, and AppVeyor badges pointed to historical personal-repository infrastructure rather than current organization evidence;
  • a local-vs-remote sizing table asserted respondent/item/runtime/hardware thresholds without repository evidence;
  • feature-specific implementation copy dominated the landing instead of the product job, current responsibility, and scientific evidence boundary.

Source evaluation now points to ordinary package build/check commands and explicitly delegates exact environment/check authority to current package metadata and repository workflows.

Current exact authority — 2026-09-02

  • protected base recorded by GitHub: develop@5128d4867e24b5db73e6e3c8652a8dbeabd70aa0;
  • exact current head: a3f43ef4a61b96ba96271f3fbe81ebd5f79f51a3;
  • state: open / Draft / mechanically mergeable at the latest read;
  • REST review and inline-comment inventories are currently empty on this PR;
  • exact-head R-CMD-check 33582774270, test-fast 33582774299, test-suite 33582774286, SAST Semgrep 33582774284, and Security Scan 33582774258 are all queued and therefore non-passing;
  • every predecessor-head check/review is historical after the README source/generated-pair rewrite.

Scope / merge boundary

Documentation only: README source/generated output plus the existing ADR/research/architecture documentation. No R source, package manifest, NAMESPACE, Shiny implementation, dependency graph, workflow, release, or repository setting is changed by this branch.

Keep Draft. Do not merge, mark Ready, tag, release, or use administrator bypass while #83 remains unresolved or any exact-head required gate is non-passing. Integration requires an unchanged head with current terminal repository/central checks, zero valid unresolved review findings, current ancestry/mergeability, and then-live protected governance.

Add docs/adr/ for decisions already true on develop: mirt delegation,
Zh / S-X2 / Rasch infit gates, AICc and DIC boundaries, and local
default as an independent R package. Point ARCHITECTURE.md, README,
and docs/papers/README.md at the new index.

Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
@coderabbitai

coderabbitai Bot commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Satisfy markdownlint MD034 without dropping the required DOI URLs.

Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>

Copy link
Copy Markdown
Collaborator Author

Public-surface coordination: #82 now owns the existing gh-pages branch refresh and preserves the custom CNAME. This draft already owns both README.Rmd and generated README.md, so please keep root README public-surface cleanup in this writer rather than opening a duplicate README PR. Before this branch leaves Draft, add exactly one [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/ContextualWisdomLab/kaefa) badge to the appropriate badge area in both source/generated README, and normalize customer-facing GitHub install/CI links that still point at the pre-organization seonghobae/kaefa namespace. Preserve the RMarkdown source-of-truth rule and regenerate README.md coherently rather than editing only the generated file. #82 intentionally does not compete for those files.

Copy link
Copy Markdown
Collaborator Author

Public-surface coordination update: this existing README writer now also carries the exact Ask DeepWiki badge in both README.Rmd (source of truth) and generated README.md, linked to https://deepwiki.com/ContextualWisdomLab/kaefa. I kept the PR Draft and did not broaden it into Pages/settings work; gh-pages public-site refresh #82 was handled independently and is now merged. Preserve the generated README/source pairing when this branch is refreshed.

@seonghobae seonghobae changed the title docs(adr): accepted mirt fit-search decisions docs: make kaefa README product-first and license-aware Sep 2, 2026
@seonghobae seonghobae added the type: docs Documentation, ADR, PRD, or technical writing label Sep 2, 2026 — with ChatGPT Codex Connector

Copy link
Copy Markdown
Collaborator Author

Public-surface/security follow-up on exact head 402b9f4c7f00c297ed059e01dadc4e62a30660bb: SECURITY.md still pointed reporters to the historical seonghobae/kaefa private-advisory URL even though this documentation lane has already migrated the README to the ContextualWisdomLab repository. The branch now uses the exact organization repository advisory path, removes public issue/PR/discussion disclosure as a fallback, and gives a private-maintainer fallback only when the repository feature is unavailable. No R runtime, dependency, package license, or scientific claim changed. All predecessor-head hosted evidence is historical after this documentation commit; #83 remains the commercial-license/provenance blocker.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation priority: medium Normal-priority or P2 work status: draft type: docs Documentation, ADR, PRD, or technical writing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants