[LFX Term 2 2026] Proposal for Example Restoration and CI Example Validation Framework#541
[LFX Term 2 2026] Proposal for Example Restoration and CI Example Validation Framework#541ken6078 wants to merge 2 commits into
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces a comprehensive proposal for the KubeEdge Ianvs Example Classification CI Validation Framework, which aims to automate example classification, validation, and the restoration of the llm_simple_qa example. The review feedback correctly identifies minor path and spelling inconsistencies in the proposal metadata and documentation, specifically recommending the correction of examples/llm_qa_example/requestment.txt to examples/llm_simple_qa/requirements.txt.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
MooreZheng
left a comment
There was a problem hiding this comment.
Good to see the new proposal. As discussion,
- User flow can be added, e.g., the use of github action and robot
- Architecture design, e.g., modified and submitted modules
- Directory organization and design, e.g., proposals and CI
- Demo
There was a problem hiding this comment.
Good to see the updates, especally the demo, directories and user flow
- More thoughts on User flow
- Developer use local CI, Github CI -> robot/CI check PR -> CI for docs, CI for example, CI for core code, take a look at doc guidance to learn how to check results and modification. Need to check out whether all user cases are covered
- Maintainer use Github CI -> integration test. But how to triger CI and where to check the report?
- Priority: Global CI > local CI > Robot.
- Some Methods
- As for CI for docs, take a look at baoyue's work #105
- Add Document guidance. Might consider adding a statement in KubeEdge robot in the future
- For integration CI test, might use unit test for developer small scale dataset.
- Architecture design
- Show relationship between new modules and existing modules
- New module: CI in .github/workflow, take "workflow" as a module. might rename as ci-workflow
- Directory: ianvs/tool -> ianvs/resource/tool
Signed-off-by: Kai-Wei Chou <contact@kaiwei.dev>
bc29f7d to
d885f05
Compare
MooreZheng
left a comment
There was a problem hiding this comment.
- Put example status table in the example directory
- Add A-B-C example and justify the reason why we compare BC instead AB.
- Add definition for Tier 0, Tier 1... etc
- T2 and T3 output is not the same,and avoid link to the same "classiy failure"
- Merged pull request triggers T3, instead of CICD triggers T3. In this case, T2 failure report can also update T3 failure report
- UC numbering and naming update
- Update module name like Event Trigger
0446e17 to
4308044
Compare
MooreZheng
left a comment
There was a problem hiding this comment.
This version is very close to the final one
- add example status into examples/README.md
- event trigger and example validator under CICD instead of workflow
- put resources/tools into example validator
- add other functions in validator into validator/tools
- alpha-beta-gramma rename
fb30697 to
eab8403
Compare
|
Dear @MooreZheng, Thank you for your review. I have updated the proposal based on each of your comments, as summarized below:
In addition, I squashed the previous commits into two focused commits to make the revision history easier to review:
The detailed commit history and corresponding changes can be found here: https://github.com/ken6078/ianvs/commits/temp/week5-changes/ Thank you again for the detailed feedback. |
There was a problem hiding this comment.
Most of the changes look fine to me. Just a little bit weird to see the directory
└── .github/
├── tools/
│ └── example_validator/
│ ├── main.py
│ ├── static_validator.py
│ ├── dependency_validator.py
│ ├── smoke_test_validator.py
│ ├── core/
│ │ ├── validation_branch_wrapper.py
│ │ ├── inventory.py
│ │ ├── regression_detector.py
│ │ └── report_generator.py
│ └── data/
│ └── example_inventory.yaml
│
└── workflows/
└── example_validator.yml
- The directory needs to be consistent with the software architecture diagram
For example, the tools directory should be put into validators, and we would have a CICD directory on top of validators instead. We can also get rid of the workflow files now. Then it would be better if changed as
└── .github/
├── CICD/
│ └── event_trigger/
│ ├── example_validation_trigger.yml #need to check with the difference against example_validator.yml
│ ├── fossa and other trigger files need to be added?
│ └── general_validator/
│ ├── fossa and other validator files need to be added?
│ └── example_validator/
│ ├── main.py #what is it for?
│ ├── example_validator.yml #remove the workflow folder so that put it here. need to check whether proper
│ ├── static_validator.py
│ ├── dependency_validator.py
│ ├── smoke_test_validator.py
│ ├── tools/
│ │ ├── validation_branch_wrapper.py
│ │ ├── inventory.py
│ │ ├── regression_detector.py
│ │ └── report_generator.py
│ └── data/
│ └── example_inventory.yaml
- Check the new folder and files
For example, check the files in the new event_trigger folder and general_validator folder.
Besides, what is the main.py for? It does not look proper for a formal submission. Could we change it to another name, and maybe a readme is needed for the example_validator folder?
eab8403 to
f34deac
Compare
|
Dear @MooreZheng, The previous And, I have updated the directory structure and naming to align with the revised software architecture.
I have added the reason that explains why using
Other changes and rationale
The resulting directory structure is: The detailed commit history and corresponding changes can be found here: |
Signed-off-by: Kai-Wei Chou <contact@kaiwei.dev>
f34deac to
aaa9be8
Compare
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: hsj576, ken6078 The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |



What type of PR is this?
/kind bug
/kind documentation
/kind design
What this PR does / why we need it:
This PR adds an Example Restoration CI pipeline that automatically scans and validates all examples, classifies detected issues, and publishes health reports for maintainers. It also includes targeted restoration work for
examples/llm_simple_qa, including portable paths, documented dependencies, dataset/JSONL validation, model configuration, device fallback, and metric robustness.Many examples may become invalid over time due to code, dependency, or documentation changes. Without automated validation, these issues are difficult to track at scale. The proposed CI provides continuous visibility into example status, helps maintain a reliable example ecosystem, and uses
llm_simple_qaas the first restored reference example for validating future LLM-related examples.Which issue(s) this PR fixes:
Fixes #230