feat(project_level_issues): Summarise issues work and why it was discontinued
This commit is contained in:
parent
927fc778d5
commit
288eb7a91c
1 changed files with 51 additions and 101 deletions
|
|
@ -3,126 +3,76 @@ title: "Project Management"
|
|||
linkTitle: "Forgejo Project Mgmt"
|
||||
weight: 50
|
||||
description: >
|
||||
Project and issue management capabilities within Forgejo
|
||||
Organization-level project and issue management (discontinued feature)
|
||||
---
|
||||
|
||||
{{% alert title="Draft" color="warning" %}}
|
||||
**Editorial Status**: This page is currently being developed.
|
||||
|
||||
* **Jira Ticket**: [TICKET-XXX](https://your-jira/browse/TICKET-XXX)
|
||||
* **Assignee**: [Name or Team]
|
||||
* **Status**: Draft
|
||||
* **Last Updated**: YYYY-MM-DD
|
||||
* **TODO**:
|
||||
* [ ] Add detailed component description
|
||||
* [ ] Include usage examples and code samples
|
||||
* [ ] Add architecture diagrams
|
||||
* [ ] Review and finalize content
|
||||
{{% alert title="Discontinued Feature" color="warning" %}}
|
||||
This feature was implemented at a prototype level but never reached production readiness. Development was discontinued in favor of other platform priorities.
|
||||
{{% /alert %}}
|
||||
|
||||
## Overview
|
||||
|
||||
[Detailed description of the component - what it is, what it does, and why it exists]
|
||||
This was an attempt to extend Forgejo's project and issue management capabilities beyond the repository level. The goal was to enable organizations and users to create projects and issues that could span multiple repositories or exist independently of any repository.
|
||||
|
||||
## Key Features
|
||||
## Problem Statement
|
||||
|
||||
* [Feature 1]
|
||||
* [Feature 2]
|
||||
* [Feature 3]
|
||||
Forgejo's issue management is repository-centered. While this works well for code-specific issues, it creates challenges for broader project management:
|
||||
|
||||
## Purpose in EDP
|
||||
* **Cross-repository work**: Tasks often span multiple repositories but must be artificially tied to one
|
||||
* **Non-code projects**: Some projects don't map cleanly to a repository (e.g., planning, documentation initiatives)
|
||||
* **Related repositories**: Symbiotically related repos would benefit from shared issue tracking
|
||||
|
||||
[Explain the role this component plays in the Edge Developer Platform and how it contributes to the overall platform capabilities]
|
||||
Real-world examples:
|
||||
* Upstream: [forgejo-actions-feature-requests](https://code.forgejo.org/forgejo/forgejo-actions-feature-requests) - arguably doesn't need repository/code functionality
|
||||
* EDP: [infra-deploy](https://edp.buildth.ing/DevFW/infra-deploy) and [infra-catalogue](https://edp.buildth.ing/DevFW/infra-catalogue) - symbiotically related projects
|
||||
|
||||
## Implementation Status
|
||||
|
||||
**Status**: Prototype level - basic operations work but not production-ready
|
||||
|
||||
**What was built:**
|
||||
* Projects can be created at the organization/user level (not tied to repositories)
|
||||
* Issues can be created within these organization-level projects
|
||||
* Issues can be moved between columns within any projects
|
||||
* Basic Create and View Issue pages function without errors
|
||||
|
||||
**What was incomplete:**
|
||||
* Several features on Create/View pages disabled rather than adapted, e.g. due dates
|
||||
* Repository-specific features (tags, code reviews, etc.) not resolved for org-level context
|
||||
* Broader issue management features not yet functional
|
||||
|
||||
## Discontinuation
|
||||
|
||||
Development was discontinued due to:
|
||||
* Project priorities shifted to other platform features
|
||||
* Scope of remaining work deemed too large for the anticipated value
|
||||
* Concerns about maintaining a custom feature divergent from upstream Forgejo
|
||||
|
||||
## Repository
|
||||
|
||||
**Code**: [Link to source code repository]
|
||||
**Code**: [edp-forgejo](https://edp.buildth.ing/DevFW/edp-forgejo)
|
||||
|
||||
**Documentation**: [Link to component-specific documentation]
|
||||
This is a fork of upstream Forgejo with the organization-level project management changes. The fork is based on Forgejo v11.x (upstream has progressed to at least v13.x).
|
||||
|
||||
## Getting Started
|
||||
**Implementation**: Changes to both UI (in TypeScript) and server-side (Golang) functionality.
|
||||
|
||||
### Prerequisites
|
||||
## Technical Approach
|
||||
|
||||
* [Prerequisite 1]
|
||||
* [Prerequisite 2]
|
||||
|
||||
### Quick Start
|
||||
|
||||
[Step-by-step guide to get started with this component]
|
||||
|
||||
1. [Step 1]
|
||||
2. [Step 2]
|
||||
3. [Step 3]
|
||||
|
||||
### Verification
|
||||
|
||||
[How to verify the component is working correctly]
|
||||
|
||||
## Usage Examples
|
||||
|
||||
### [Use Case 1]
|
||||
|
||||
[Example with code/commands showing common use case]
|
||||
|
||||
```bash
|
||||
# Example commands
|
||||
```
|
||||
|
||||
### [Use Case 2]
|
||||
|
||||
[Another common scenario]
|
||||
The implementation involved:
|
||||
* Minimally modifying Forgejo's data model to associate projects with organizations/users instead of repositories
|
||||
* Adapting issue creation and display logic to work without repository context
|
||||
* Addressing repository-specific settings (labels, milestones, code review integration) for org-level issues
|
||||
* UI changes to support project creation and issue management at the organization level
|
||||
|
||||
## Integration Points
|
||||
|
||||
* **[Component A]**: [How it integrates]
|
||||
* **[Component B]**: [How it integrates]
|
||||
* **[Component C]**: [How it integrates]
|
||||
This feature was developed as an isolated extension to Forgejo. Its code is within the `edp-forgejo` repository alongside other EDP updates - such as magenta colour scheme - but in terms of functionality has minimal overlap/links with other EDP components.
|
||||
|
||||
## Architecture
|
||||
## Lessons Learned
|
||||
|
||||
[Optional: Add architectural diagrams and descriptions]
|
||||
|
||||
### Component Architecture (C4)
|
||||
|
||||
[Add C4 Container or Component diagrams showing the internal structure]
|
||||
|
||||
### Sequence Diagrams
|
||||
|
||||
[Add sequence diagrams showing key interaction flows with other components]
|
||||
|
||||
### Deployment Architecture
|
||||
|
||||
[Add infrastructure and deployment diagrams showing how the component is deployed]
|
||||
|
||||
## Configuration
|
||||
|
||||
[Key configuration options and how to set them]
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### [Common Issue 1]
|
||||
|
||||
**Problem**: [Description]
|
||||
|
||||
**Solution**: [How to fix]
|
||||
|
||||
### [Common Issue 2]
|
||||
|
||||
**Problem**: [Description]
|
||||
|
||||
**Solution**: [How to fix]
|
||||
|
||||
## Status
|
||||
|
||||
**Maturity**: [Production / Beta / Experimental]
|
||||
|
||||
## Additional Resources
|
||||
|
||||
* [Link to external documentation]
|
||||
* [Link to community resources]
|
||||
* [Link to related components]
|
||||
|
||||
## Documentation Notes
|
||||
|
||||
[Instructions for team members filling in this documentation - remove this section once complete]
|
||||
* Repository-centric design is deeply embedded in Forgejo's architecture
|
||||
* Maintaining custom features in a fork creates significant maintenance burden
|
||||
* The scope of fully-functional cross-repository project management is substantial
|
||||
* This is related to Issues and Repositories being two of the most extensive features in Forgejo
|
||||
* Alternative approaches (using dedicated project management tools, or simply 'shell' repositories) may be more sustainable
|
||||
* Clear buy-in is needed for the long term in order to make a change like this viable
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue